Давайте решим задачу по написанию кода, который принимает два числа и операцию, и выполняет соответствующее действие.
Шаги решения
- Определение функции: Начнем с определения функции, которая будет принимать три аргумента: два числа и операцию.
- Проверка операции: Затем проверим, какая операция была передана, и выполните соответствующее действие.
- Обработка ошибок: Если операция неизвестна, вернем строку "Неизвестная операция".
Пример реализации на Python
Вот код, который реализует описанную логику:
def calculate(num1, num2, operation):
if operation == '+':
return num1 + num2
elif operation == '-':
return num1 - num2
elif operation == '*':
return num1 * num2
elif operation == '/':
if num2 != 0: # Проверим, что делитель не равен 0
return num1 / num2
else:
return "Ошибка: деление на ноль!" # Обработка деления на ноль
else:
return "Неизвестная операция"
Пояснение работы кода
- Определение функции: Мы создали функцию
calculate, которая принимает три параметра: num1, num2 и operation.
- Условия:
- Сначала проверяем, равна ли
operation тот ли символ, который соотвествует сложению ('+'), вычитанию ('-'), умножению ('*') или делению ('/').
- Для каждой операции выполняем соответствующий математический расчет и возвращаем результат.
- Деление: Внутри блока для деления проверяем, что
num2 не равен 0, чтобы избежать деления на ноль, которое вызывает ошибку. Если делитель равен нулю, возвращаем сообщение об ошибке.
- Неизвестная операция: Если
operation не соответствует ни одной из известных операций, возвращаем строку "Неизвестная операция".
Пример использования функции
Вы можете вызывать функцию, передавая два числа и необходимую операцию. Например:
print(calculate(10, 5, '+')) # Вывод: 15
print(calculate(10, 5, '-')) # Вывод: 5
print(calculate(10, 5, '*')) # Вывод: 50
print(calculate(10, 5, '/')) # Вывод: 2.0
print(calculate(10, 0, '/')) # Вывод: "Ошибка: деление на ноль!"
print(calculate(10, 5, '%')) # Вывод: "Неизвестная операция"
Таким образом, мы создали функцию, которая может выполнять базовые арифметические операции на числах с обработкой ошибок. Если у вас есть вопросы или нужно доработать функцию, не стесняйтесь спрашивать!