From 22e9692d3ac1c4c8d168d996c82c6b82b8ad3bfe Mon Sep 17 00:00:00 2001 From: Weber Date: Mon, 14 Oct 2024 12:58:04 +0000 Subject: [PATCH] test --- cv3/program.c | 22 ++++++++++++---------- 1 file changed, 12 insertions(+), 10 deletions(-) diff --git a/cv3/program.c b/cv3/program.c index 7892781..3429dce 100644 --- a/cv3/program.c +++ b/cv3/program.c @@ -1,7 +1,6 @@ #include #include #include -#include #define MAX_VELKOST 10 @@ -73,12 +72,6 @@ void zobraz_zasobnik(KalkulackaZasobnik *kalkulacka) { printf("\n"); } -bool je_platny_vstup(const char *vstup) { - char *endptr; - strtof(vstup, &endptr); - return endptr != vstup && *endptr == '\n'; -} - int main() { KalkulackaZasobnik kalkulacka; inicializuj(&kalkulacka); @@ -94,8 +87,7 @@ int main() { float hodnota; char operacia; - if (je_platny_vstup(vstup)) { - sscanf(vstup, "%f", &hodnota); + if (sscanf(vstup, "%f", &hodnota) == 1) { if (vloz(&kalkulacka, hodnota)) { zobraz_zasobnik(&kalkulacka); } @@ -106,6 +98,7 @@ int main() { zobraz_zasobnik(&kalkulacka); } else { printf("no input\n"); + return 0; } break; case '-': @@ -113,6 +106,7 @@ int main() { zobraz_zasobnik(&kalkulacka); } else { printf("no input\n"); + return 0; } break; case '*': @@ -120,6 +114,7 @@ int main() { zobraz_zasobnik(&kalkulacka); } else { printf("no input\n"); + return 0; } break; case '/': { @@ -127,21 +122,28 @@ int main() { if (vyber(&kalkulacka, &a, &b)) { if (a == 0) { printf("division by zero\n"); + return 0; } else { vloz(&kalkulacka, b / a); zobraz_zasobnik(&kalkulacka); + printf("no input\n"); + return 0; } } else { printf("no input\n"); + return 0; } break; } default: + zobraz_zasobnik(&kalkulacka); printf("bad input\n"); - break; + return 0; } } else { + zobraz_zasobnik(&kalkulacka); printf("bad input\n"); + return 0; } }