def solve(x, op, y):
if str(op) == '+':
try:
print(float(x) + float(y))
except ValueError:
print('одно из значений не число')
elif str(op) == '-':
print(float(x) - float(y))
elif str(op) == '*':
print(float(x) * float(y))
elif str(op) == '/':
print(float(x) / float(y))
except ZeroDivisionError:
print('на ноль делить нельзя')
return 0
elif str(op) == '//':
print(float(x) // float(y))
elif str(op) == '^':
print(float(x) ** float(y))
else:
print('error')
while True:
num1, op, num2 = input().split()
solve(num1, op, num2)
Объяснение:
Данные вводятся через пробел, ex:
Ввод: 2 + 2
Вывод: 4
Поделитесь своими знаниями, ответьте на вопрос:
подготовить ответ к зачету на вопрос "Текстовые процессоры. Форматирование текста"
def solve(x, op, y):
if str(op) == '+':
try:
print(float(x) + float(y))
except ValueError:
print('одно из значений не число')
elif str(op) == '-':
try:
print(float(x) - float(y))
except ValueError:
print('одно из значений не число')
elif str(op) == '*':
try:
print(float(x) * float(y))
except ValueError:
print('одно из значений не число')
elif str(op) == '/':
try:
print(float(x) / float(y))
except ZeroDivisionError:
print('на ноль делить нельзя')
except ValueError:
print('одно из значений не число')
return 0
elif str(op) == '//':
try:
print(float(x) // float(y))
except ZeroDivisionError:
print('на ноль делить нельзя')
except ValueError:
print('одно из значений не число')
return 0
elif str(op) == '^':
try:
print(float(x) ** float(y))
except ValueError:
print('одно из значений не число')
else:
print('error')
return 0
while True:
num1, op, num2 = input().split()
solve(num1, op, num2)
Объяснение:
Данные вводятся через пробел, ex:
Ввод: 2 + 2
Вывод: 4