#include #include #include #include #include #define MAX 100 int je_cislo(const char *u) { char *koniec; strtod(u, &koniec); return *koniec == '\0'; } int main() { char riadok[MAX]; double cislo1, cislo2, vysledok, skutocny_vysledok; char operacia; while (fgets(riadok, MAX, stdin) != NULL) { if (strlen(riadok) <= 1){ break; } if (sscanf(riadok, " %f %c %f = %lf", &cislo1, &operacia, &cislo2, &vysledok) != 4) { printf("CHYBA\n"); continue; } switch (operacia) { case '+': skutocny_vysledok = cislo1 + cislo2; break; case '-': skutocny_vysledok = cislo1 - cislo2; break; case '*': skutocny_vysledok = cislo1 * cislo2; skutocny_vysledok = round(skutocny_vysledok * 100) / 100; break; case '/': skutocny_vysledok = cislo1 / cislo2; skutocny_vysledok = round(skutocny_vysledok * 100) / 100; break; default: printf("CHYBA\n"); continue; } if (skutocny_vysledok == vysledok) { printf("OK\n"); } else { printf("ZLE\n"); } } return 0; }