Описание задачи Создай консольное приложение «Калькулятор». Приложение должно читать из консоли введенные пользователем строки, числа, арифметические операции, проводимые между ними, и выводить в консоль результат их выполнения. Калькулятор можно реализовать обычными функциями либо использовать структуру с методами, здесь это не принципиально.
python
class Calculator:
def __init__(self):
self.result = None
def calculate(self, expression):
operands = expression.split()
operator = None
for operand in operands:
if operand in ['+', '-', '*', '/']:
operator = operand
else:
if self.result is None:
self.result = float(operand)
else:
if operator == '+':
self.result += float(operand)
elif operator == '-':
self.result -= float(operand)
elif operator == '*':
self.result *= float(operand)
elif operator == '/':
self.result /= float(operand)
return self.result
Класс Calculator имеет конструктор `__init__`, который инициализирует атрибут `result` значением None.
Метод `calculate` принимает входное выражение в виде строки и разделяет его на операнды и операторы. Затем происходит итерация по операндам, и если текущий операнд является оператором, то он сохраняется в переменную `operator`. Если текущий операнд не является оператором, то он преобразуется в float и выполняется соответствующая арифметическая операция с использованием сохраненного оператора и текущего операнда. Результат сохраняется в атрибуте `result`.
Класс Calculator можно использовать следующим образом:
python
calc = Calculator()
while True:
expression = input("Введите выражение: ")
if expression == 'exit':
break
result = calc.calculate(expression)
print("Результат: ", result)
В данном примере создается экземпляр класса Calculator и осуществляется бесконечный цикл ввода выражений пользователем. Если пользователь вводит строку 'exit', то цикл прерывается. Иначе, вызывается метод calculate, передавая в него введенное выражение, и выводится полученный результат.
Пример использования калькулятора:
Введите выражение: 2 + 3
Результат: 5.0
Введите выражение: 4 - 1
Результат: 3.0
Введите выражение: 5 * 2
Результат: 10.0
Введите выражение: 10 / 5
Результат: 2.0
Введите выражение: exit
Таким образом, рассмотрен пример реализации консольного калькулятора на языке Python. Данный пример демонстрирует базовую функциональность калькулятора и может быть изменен и дополнен в соответствии с требованиями задачи.Нажимая «Регистрация» или «Войти через Google», вы соглашаетесь с Публичной офертой, даете Согласие на обработку персональных данных, а также подтверждаете что вам есть 18 лет
Нажимая «Регистрация» или «Войти через Google», вы соглашаетесь с Публичной офертой, даете Согласие на обработку персональных данных, а также подтверждаете что вам есть 18 лет