diff --git a/cv3/program.c b/cv3/program.c index 93c9493..b87f7ec 100644 --- a/cv3/program.c +++ b/cv3/program.c @@ -33,7 +33,7 @@ float calculator(float n1, float n2, char operation) { return n1 / n2; } else { printf("division by zero\n"); - return n1; // Возвращаем n1, чтобы не изменять стек при ошибке + return n1; } } return 0; @@ -63,7 +63,7 @@ void print_stack() { printf(" "); } } - printf("\n"); // Убираем лишний пробел перед новой строкой + printf("\n"); } int main() { @@ -86,7 +86,6 @@ int main() { printf("no input\n"); return 0; } - float n2 = pop(); float n1 = pop(); char operation = arr[0]; @@ -94,16 +93,14 @@ int main() { if (!(operation == '/' && n2 == 0)) { push(result); } - if (n2 != 0 || operation != '/') { // Печатаем стек только если не было деления на ноль - print_stack(); - } + print_stack(); } } if (stack_top == 0) { - pop(); - printf("no input\n"); - } else { + return 0; + } + else if (stack_top == -1) { printf("no input\n"); }