Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Почему программа прерывается

джейк про Ученик (89), на голосовании 2 месяца назад
После того как выбрал действие программа прервалась и не вывела результат
Голосование за лучший ответ
Адам Тлехугов Мастер (2168) 3 месяца назад
Проблема в вашем коде заключается в том, что функция input() возвращает строку, а вы сравниваете эту строку с числом. Чтобы исправить это, нужно сравнивать строку со строкой. Попробуйте изменить сравнение на строковое значение.

Исправленный код:
 print('Добро пожаловать в калькулятор!') 
number1 = float(input('Введите первое число: '))
number2 = float(input('Введите второе число: '))

print('Выберите действие которое хотите совершить')
print('1. +')
print('2. -')
print('3. *')
print('4. /')

calc = input(': ')

if calc == '1':
print(f'Результат: {number1 + number2}')
elif calc == '2':
print(f'Результат: {number1 - number2}')
elif calc == '3':
print(f'Результат: {number1 * number2}')
elif calc == '4':
print(f'Результат: {number1 / number2}')
else:
print('Неверный ввод')
Этот код исправляет проблему, сравнивая calc со строковыми значениями '1', '2', '3', и '4', что позволяет программе корректно работать и выводить результат.
3681 Просветленный (20338) 3 месяца назад
В строках, где выводятся варианты действий, кавычки использованы некорректно. Нужно использовать одинарные кавычки внутри строки и двойные — снаружи или наоборот, но не смешивать.
Так же переменная calc получает строковое значение от input(), но в условии if происходит сравнение с числом.
А в последнем print пропущен закрывающийся символ f-строки.
Например:
 print("Добро пожаловать в калькулятор!") 
number1 = float(input("Введите первое число: "))
number2 = float(input("введите второе число: "))

print("Выберите действие которое хотите совершить")
print("1. +")
print("2. -")
print("3. *")
print("4. /")

calc = input(": ")

if calc == '1':
print(f'Результат: {number1 + number2}')
elif calc == '2':
print(f'Результат: {number1 - number2}')
elif calc == '3':
print(f'Результат: {number1 * number2}')
elif calc == '4':
print(f'Результат: {number1 / number2}')
else:
print("Ошибка! Выберите действие из списка.")
Похожие вопросы