diff --git a/du3/program.c b/du3/program.c index f4994b2..e0006b3 100644 --- a/du3/program.c +++ b/du3/program.c @@ -2,6 +2,7 @@ #include #include #include +#include #define SIZE 128 @@ -10,21 +11,21 @@ int IsArithCorrect(float num1, float num2, char* op, float result) { - switch (op) + switch (*op) { - case '-' + case '-': if ((num1-num2) == result) { return 1;} break; - case '+' + case '+': if ((num1-num2) == result) { return 1;} break; - case '*' + case '*': if ((num1*num2) == result) { return 1;} break; - case '/' + case '/': if (num2 == 0) { return -1;} if ((num1-num2) == result) { return 1;} break; @@ -60,11 +61,11 @@ int main() for (int i = 0; i != '\0'; i++) { - if (isdigit(i) != 0) + if (isdigit(strBuffer[i]) != 0) { //skontroluj, ze ci char po nom je tiez cislo, AK NIE, povazuj buduce cisla v riadku ako ine cislo // a inkrementuj kontrolnu citaciu premenu - if (isdigit(i+1) == 0) + if (isdigit(strBuffer[i+1]) == 0) { writeIntoArrayNum += 1; } @@ -86,7 +87,7 @@ int main() continue; } - if (ispunct() != 0) + if (ispunct(strBuffer[i]) != 0) { //ak je to nejaky printable symbol ('*/-,:./), skontroluj ci to nie je artimeticke znamienko alebo desatinna bodka, //AK NIE, povazuj za riadok neplatny... @@ -121,7 +122,7 @@ int main() continue; } - if (isalpha(i) != 0) + if (isalpha(strBuffer[i]) != 0) { isLineInvalid = true; break;