Продолжить работу программы после выполнения условия
Как продолжить работу калькулятора после выполнения условия? Я только начал изучать python и не до конца понимаю работу while True.
while True:
a = float(input("Введите первое число:"))
operator = input("Введите операцию:")
b = float(input("Введите второе число:"))
if operator == "+":
c = a + b
print(c)
break
if operator == "-":
c = a - b
print(c)
break
if operator == "*":
c = a * b
print(c)
break
if operator == "/":
c = a / b
print(c)
break
else:
print("Неверная операция!")
if input("Продолжим?(Y/N)") !="Y":
break
Ответы (2 шт):
Автор решения: mironovmeow
→ Ссылка
Как сказал CrazyElf в комментариях, проблема была в лишних break. Решение будет выглядеть вот так:
while True:
a = float(input("Введите первое число:"))
operator = input("Введите операцию:")
b = float(input("Введите второе число:"))
if operator == "+":
c = a + b
print(c)
elif operator == "-":
c = a - b
print(c)
elif operator == "*":
c = a * b
print(c)
elif operator == "/":
c = a / b
print(c)
else:
print("Неверная операция!")
if input("Продолжим?(Y/N)") != "Y":
break
Автор решения: Игорь
→ Ссылка
Можно заменить break на continue, это будет лучшим решением.
while True:
a = float(input("Введите первое число:"))
operator = input("Введите операцию:")
b = float(input("Введите второе число:"))
if operator == "+":
c = a + b
print(c)
continue
if operator == "-":
c = a - b
print(c)
continue
if operator == "*":
c = a * b
print(c)
continue
if operator == "/":
c = a / b
print(c)
continue
else:
print("Неверная операция!")
if input("Продолжим?(Y/N)") !="Y":
break