#include #include #include #define LINESIZE 100 struct kalkulacka{ float cislo; }; int main() { struct kalkulacka number[LINESIZE]; memset(number, 0, sizeof(struct kalkulacka) * LINESIZE); char line[LINESIZE]; size_t velkost; memset(line, 0, LINESIZE); int a = 0; int i; int input = 0; float p; //float prvy, druhy, vys; while (fgets(line, LINESIZE, stdin)) { velkost = strlen(line); if (velkost == 1 && line[velkost - 1] == '\n') { printf("no input\n"); break; } if (input >= 10){ printf("no input\n"); break; } if (line[0] == '+' || line[0] == '-' || line[0] == '*' || line[0] == '/') { input =+ 2; if (line[0] == '+') { number[a - 2].cislo = number[a - 2].cislo + number[a - 1].cislo; a--; } if (line[0] == '-') { number[a - 2].cislo = number[a - 2].cislo - number[a - 1].cislo; a--; } if (line[0] == '*') { number[a - 2].cislo = number[a - 2].cislo * number[a - 1].cislo; a--; } if (line[0] == '/') { number[a - 2].cislo = number[a - 2].cislo / number[a - 1].cislo; a--; } } else { p = atof(line); number[a].cislo = p; a++; input++; } for (i = 0; i < a; i++){ printf("%.2f ", number[i].cislo); } printf("\n"); } printf("no input\n"); return 0; }