daco dzive
This commit is contained in:
parent
2b721e65f5
commit
a6fe3efa58
67
du3/program.c
Normal file
67
du3/program.c
Normal file
@ -0,0 +1,67 @@
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <ctype.h>
|
||||
#include <math.h>
|
||||
|
||||
|
||||
int main(){
|
||||
char riadok[100];
|
||||
while(fgets(riadok, sizeof(riadok), stdin)){
|
||||
if(riadok[0] == '\n'){
|
||||
printf("KONIEC\n");
|
||||
break;
|
||||
}
|
||||
|
||||
char *ptr = riadok;
|
||||
while(*ptr == ' ')ptr++;
|
||||
float cislo1 = strtof(ptr, &ptr);
|
||||
|
||||
while(*ptr == ' ')ptr++;
|
||||
char operacia = *ptr;
|
||||
ptr++;
|
||||
|
||||
while(*ptr == ' ')ptr++;
|
||||
float cislo2 = strtof(ptr, &ptr);
|
||||
|
||||
while(*ptr == ' ')ptr++;
|
||||
if (*ptr != '='){
|
||||
printf("CHYBA\n");
|
||||
continue;
|
||||
}
|
||||
ptr++;
|
||||
|
||||
while(*ptr == ' ')ptr++;
|
||||
float zadany_vysledok = strtof(ptr, &ptr);
|
||||
|
||||
float skutocny_vysledok = 0;
|
||||
int chyba = 0;
|
||||
|
||||
switch(operacia){
|
||||
case '+': skutocny_vysledok = cislo1 + cislo2; break;
|
||||
case '-': skutocny_vysledok = cislo1 - cislo2; break;
|
||||
case '*': skutocny_vysledok = cislo1 * cislo2; break;
|
||||
case '/':
|
||||
if (cislo2 == 0){
|
||||
chyba = 1;
|
||||
} else {
|
||||
skutocny_vysledok = cislo1 / cislo2;
|
||||
}
|
||||
break;
|
||||
default: chyba = 1;
|
||||
}
|
||||
|
||||
if (chyba){
|
||||
printf("CHYBA\n");
|
||||
continue;
|
||||
}
|
||||
|
||||
if (zaokruhli(skutocny_vysledok) == zaokruhli(zadany_vysledok)) {
|
||||
printf("OK\n");
|
||||
} else {
|
||||
printf("ZLE\n");
|
||||
}
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user