@deku_21

Что не так с кодом?

lang = "EN"
lang_opt = input("Enter L to change language or other key to continue>>")
while lang_opt == '1':
    if lang == "RU":
        lang = "EN"
        lang_opt = input("Enter L to change language or other key to continue>>")
    else:
        lang = "RU"
        lang_opt = input("Введите L, чтобы сменить язык или любую клавишу, чтобы продолжить")
if lang_opt != "EN":
    f = "Enter first number>>"
    o = "Enter operation (+,-,/,*)>>"
    s = "Enter second number>>"
    r = "Result>>"
    e = "Error"
    v = "Enter 'yes' to continue and other key to finish>>"
if lang_opt != "RU":
    f = "Введите первое число>>"
    o = "Введите операцию (+,-,/,*)>>"
    s = "Введите конечное число>>"
    r = "Результат>>"
    e = "Ошибка"
    v = "Введите 'у' чтобы продолжить или закончить>>"
while 'prodolzhit' == 'v':
    f_num = float(input('f'))
    oper = input('o')
    s_num = float(input('s'))
    if oper == '+':
        print('r', f_num + s_num)
    elif oper == '-':
        print('r', f_num - s_num)
    elif oper == '*':
        print('r', f_num * s_num)
    elif oper == '/':
        print('r', f_num / s_num)
    else:
        print('e')
    prodolzhit = 'v'
  • Вопрос задан
  • 121 просмотр
Пригласить эксперта
Ответы на вопрос 1
phaggi
@phaggi Куратор тега Python
лужу, паяю, ЭВМы починяю
'prodolzhit' == 'v'
Это сравнение двух разных строк, всегда вернёт False, цикл while никогда не выполнится. Кроме того, переменную prodolzhit, которую по-идее надо вместо строки указать в условии цикла, вы объявляете внутри цикла, а её надо объявить до начала цикла, а внутри цикла её можно менять.

Кроме того, это очень нехорошо так именовать переменные
prodolzhit
- назовите её
cont
(contunue не надо, это используется в языке).

p.s. Возможно, вы хотели сделать «вечный» цикл, тогда просто делаете while True:
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы