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 0000000..5e315a9 Binary files /dev/null and b/test/ver1.6/out/func_zero_calc differ