From a123789022d8bf67f9b3cb9be1177a87ded662a5 Mon Sep 17 00:00:00 2001 From: ada-dmitry Date: Sun, 31 Dec 2023 19:52:01 +0300 Subject: [PATCH] restore and done prod 1.6 --- test/ver1.6/Makefile | 17 ++++++++--------- test/ver1.6/README.md | 7 +++++-- test/ver1.6/declare.h | 1 - test/ver1.6/functions.c | 12 +++++++----- test/ver1.6/main.c | 2 -- test/ver1.6/out/func_zero_calc | Bin 0 -> 26048 bytes 6 files changed, 20 insertions(+), 19 deletions(-) create mode 100755 test/ver1.6/out/func_zero_calc diff --git a/test/ver1.6/Makefile b/test/ver1.6/Makefile index a6184e2..69c7793 100644 --- a/test/ver1.6/Makefile +++ b/test/ver1.6/Makefile @@ -1,19 +1,18 @@ # Это комментарий, который говорит, что переменная CC указывает компилятор, используемый для сборки -CC= gcc +CC=gcc #Это еще один комментарий. Он поясняет, что в переменной CFLAGS лежат флаги, которые передаются компилятору -CFLAGS= -Wall -pedantic +CFLAGS=-Wall -pedantic default: build - - -clean: - rm ./out/function_zeros_calculator +clean: + rm ./out/func_zero_calc -build: - $(CC) ./main.c ./functions.c $(CFLAGS) -o ./out/function_zeros_calculator -lm +build: + $(CC) ./main.c ./functions.c $(CFLAGS) -o ./out/func_zero_calc -lm run: - ./out/function_zeros_calculator + ./out/func_zero_calc + \ No newline at end of file diff --git a/test/ver1.6/README.md b/test/ver1.6/README.md index 1ef78af..7d70136 100644 --- a/test/ver1.6/README.md +++ b/test/ver1.6/README.md @@ -1,4 +1,4 @@ -# Function Zeros Calculator +# func_zero_calc ## Описание @@ -27,6 +27,9 @@ ## Замечания +0. В поля ввода границ и точности необходимо соблюдать несколько ограничений: + а. Вводить числа(без использования иных символов, помимо знака отрицания в начале "-" или дробной точки ".") + б. Не выходить за пределы типа double(1,7E–308 до 1,7E+308) 1. Для корректной работы программы, необходимо вводить отрезок, на котором есть лишь один корень (это можно проверить благодаря графику). 2. После вызова меню выбора действий (Ctrl+C) можно использовать как верхний регистр, так и нижний. @@ -41,7 +44,7 @@ ## Обработка сигнала SIGTSTP - Программа обрабатывает сигнал SIGTSTP, переводящий программу в фоновый режим, + Программа обрабатывает сигнал SIGTSTP, переводящий программу в фоновый режим, вновь предоставляя пользователю управлять терминалом, но возвращающий настройки терминала к исходным. diff --git a/test/ver1.6/declare.h b/test/ver1.6/declare.h index 0a7d609..3d7cd2b 100644 --- a/test/ver1.6/declare.h +++ b/test/ver1.6/declare.h @@ -3,7 +3,6 @@ extern double a, b, eps, x, *pa, *pb, *px; extern short method, *mth, sig_flag; extern struct termios default_term, modif_term; - // Декларирование глобальных переменных, // как внешних для последующего использования их во всей программе. #define H 0.000001 diff --git a/test/ver1.6/functions.c b/test/ver1.6/functions.c index bd35f99..65d501d 100644 --- a/test/ver1.6/functions.c +++ b/test/ver1.6/functions.c @@ -6,17 +6,18 @@ #include #include #include +#include #include "declare.h" double f(double x) // Функция, заданная пользователем, для которой происходит поиск корней. { - return x + 20; + return x - 20; } void show_grapgh() { - char func[100] = "x+20"; + char func[100] = "x-20"; // Подключение GNU Plot FILE *gp = popen("gnuplot -persist", "w"); @@ -163,14 +164,15 @@ void ctrlc_handler(int signum) // Функция, заменяющая стан void ctrlz_handler(int signum) { - printf("Аварийное завершение программы, возврат к настройкам по умолчанию..."); - __exit(); + kill(getpid(), SIGTSTP); // Отправляем сигнал SIGTSTP процессу + tcsetattr(STDIN_FILENO, TCSANOW, &default_term); + return; } void __exit() { tcsetattr(0, TCSANOW, &default_term); // Применение новых настроек терминала - exit(1); + exit(EXIT_SUCCESS); } void input_diap() diff --git a/test/ver1.6/main.c b/test/ver1.6/main.c index 6031a38..5baf7f3 100644 --- a/test/ver1.6/main.c +++ b/test/ver1.6/main.c @@ -77,5 +77,3 @@ int main() return 0; } - -// MEEEEEEEOW \ No newline at end of file diff --git a/test/ver1.6/out/func_zero_calc b/test/ver1.6/out/func_zero_calc new file mode 100755 index 0000000000000000000000000000000000000000..5e315a995024a2fa38fc90d1f78aefe455ee7443 GIT binary patch literal 26048 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 literal 0 HcmV?d00001