Создать простейший калькулятор - C (СИ)
Формулировка задачи:
Нужен простой калькулятор. чтобы складывал, вычитал, делил и умножал 2 числа.
Пожалуйста, кому не лень. Помогите
Решение задачи: «Создать простейший калькулятор»
textual
Листинг программы
#include <stdio.h> int main(void) { char act[2]; double op1, op2; while ( printf("> ") && scanf("%lf %1s %lf", &op1, act, &op2) == 3 ) { switch ( *act ) { case '+' : printf("= %f\n", op1 + op2); break; case '-' : printf("= %f\n", op1 - op2); break; case '*' : printf("= %f\n", op1 * op2); break; case '/' : if ( op2 == 0.0 ) fprintf(stderr, "Error! Dividion by zero.\n"); else printf("= %f\n", op1 / op2); break; default : fprintf(stderr, "Unknown operator: %c\n", *act); break; } } return 0; }
Объяснение кода листинга программы
- В начале программы подключается стандартная библиотека ввода-вывода (stdio.h).
- Затем определена точка входа в программу (main).
- Создаются три переменные:
- op1 типа double для хранения первого операнда;
- op2 типа double для хранения второго операнда;
- act типа char[2] для хранения символа операции.
- Далее следует цикл while, который выполняется до тех пор, пока пользователь не введет символ 'q' или не возникнет ошибка при вводе.
- Внутри цикла while происходит считывание трех значений с помощью функции scanf:
- первое значение считывается в переменную op1;
- второе значение считывается в переменную act;
- третье значение считывается в переменную op2.
- Затем происходит проверка на количество считанных значений: если было считано три значения, то выполняется операция по переменной act с помощью оператора switch.
- При выборе определенного оператора происходит выполнение соответствующей операции и выводится результат.
- Если второе значение было некорректным (не являлось оператором), то выводится сообщение об ошибке.
- Если введенный операнд был делением на ноль, то выводится сообщение об ошибке.
- По завершении цикла while программа возвращает 0, что означает успешное завершение работы.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д