Дано рядок виду: a#b=, де a та b деякі цілі додатні числа не більші 10000, а символ «#» - одна із операцій: «+», «-», «*». Знайти значення виразу s та у вихідний потік вивести рядок a#b=s.
Формат вихідних даних
У стандартному потоці міститься рядок довжиною не більше 255 символів.
Формат вихідних даних
У стандартний потік вивести результат.
Приклад вхідних даних
2+3=
Приклад вихідних даних
2+3=5
Коментарі
def calculate_expression(input_str): a = int(input_str[0]) b = int(input_str[2]) operation = input_str[1] if operation == '+': result = a+b elif operation == '-': result = a-b elif operation == '': result = ab return f"{a}{operation}{b}={result}" input_str = input().strip() print(calculate_expression(input_str))
Оцінено в 2 бали, що неправильно з відніманням? Де недоречність?
У такому варіанті віднімання теж не неспрацьовує input_str = input().strip() a, rest = input_str.split('#') b, op=rest.split('=') a = int(a) b = int(b) if op == '+': result = a+b elif op == '-': result == a-b elif op == '': result = ab output_str = f"{a}{op}{b}={result}" print(output_str)
Супер! У вас все вийшло ;)
Доброго дня! Підкажіть, в чому проблема. В Тоні задача працює, а при здачі помилка(
Помилка у 15 рядку - su=su+int(l)
Змінна l на цей момент рівна порожньому рядку