Přidat du3/program.c

This commit is contained in:
Mykola Syniavskyi 2025-03-14 00:57:52 +00:00
parent 186c0f6e8a
commit 7870d6c4ef

59
du3/program.c Normal file
View File

@ -0,0 +1,59 @@
#include <stdio.h>
#include <string.h>
#define MAX_LENGTH 100
int check(char* input);
int main() {
char input[MAX_LENGTH];
while (fgets(input,MAX_LENGTH, stdin)) {
if (input[0] == '\n') {
break;
}
input[strcspn(input, "\n")] = '\0';
int resultat =check(input);
if (resultat ==1) {
printf("OK\n");
} else {
if (resultat == -1) {
printf("ZLE\n");
} else {
printf("CHYBA\n");
}
}
}
return 0;
}
int check(char* input) {
double number1, number2, resultat, givenResult;
char znak;
int a=0;
a=sscanf(input, " %lf %c %lf = %lf ", &number1, &znak, &number2, &givenResult);
if (a != 4) {
return 0;
}else {
switch (znak) {
case '+':
resultat=number1+number2;
break;
case '-':
resultat=number1-number2;
break;
case '*':
resultat=number1*number2;
break;
case '/':
if (number2 == 0) {
return 0;
}else{resultat=number1/number2;}
break;
default:
}
}
if (resultat-givenResult ==0 ) {
return 1;
} else { return -1;
}
}