Мой колькулятор Вводить надо строки с знаком равенства в конце| Код | #include <stdio.h> #include <stdlib.h> #include <locale.h>
float fun( char op, float num1, float num2 );
//////////////////// MAIN ///////////////////////////// int main() { setlocale(LC_CTYPE, "Russian"); // для русских букв puts("Введите строку:"); float res=0, num=0; char op; scanf("%f", &res); while( scanf("%c", &op) >0 ){ if( op == '=' ) break; scanf("%f", &num); res = fun( op, res, num ); } printf(" = %f", res ); puts("\n\n\nPause ..."); fflush(stdin); getchar(); // пауза return 0; } /////////// END MAIN //////////////////////////
float fun( char op, float num1, float num2 ){ switch (op){ case '+': return num1 +num2; case '-': return num1 - num2; case '*': return num1 * num2; case '/': if( num2 == 0 ){ puts("Ошибка, деление на ноль !"); fflush(stdin); getchar(); exit(1); } return num1 / num2; default: printf("Ошибка, неизвестный оператор: \'%c\'", op ); fflush(stdin); getchar(); exit(1); } }
|
|