Ты знаешь, что такое пробелы? Много где после оператора if/elif/else у тебя сразу идёт имя переменной, ясен пень что интерпретатор понимает это не как кейворд и переменную, а просто как какое то имя, непонятно кому принадлежащее, и которое, логично, не объявленное ранее, и выдаёт ошибку. На строках 2, 3 - полнейший бардак внутри print(). Что ты пытался объяснить выражением "положительное, "eho)= ' '), или "отрицательное", end") - мягко сказать, не до конца понятно.
Про наличие оператора elif, судя по выражению else if ты знать не знал. А должен был, это в любом самоучителе сразу же рассказывается.
Вердикт - неисправимый бардак. Удаляй, ставь себе нормальную среду для работы с python, например PyCharm, и переделывай заново.
#Что бы не городить огромные условные конструкции,
#Мы просто "выключим" программу при кривом вводе
if k3 == k5 == 0: raise RuntimeError('bad input')
#Если введённое число не имеет нужных цифр - вылетаем с ошибкой Runtime error и сообщаем об этом
print(f'цифр 5 больше, счётчики: k3: {k3}, k5: {k5}' if (k5 > k3) else f'цифр 3 больше, счётчики: k3: {k3}, k5: {k5}')
y = int('5'*k5 + '3'*k3)
y1 = y - 7
#Это можно засунуть в print(), но раз уж надо...
print(x, y, y1, end = '\n')
Объяснение:
На скриншотах представлены исходный код программы в рабочем виде, без поломанных отступов, а так же результат работы для предложенных входных данных. Если сильно надо программу просто скопировать, сдать и забыть, а отсюда не копируется - попросите в комментариях, я залью это на какой нибудь сервис типа pastebin.
Ты знаешь, что такое пробелы? Много где после оператора if/elif/else у тебя сразу идёт имя переменной, ясен пень что интерпретатор понимает это не как кейворд и переменную, а просто как какое то имя, непонятно кому принадлежащее, и которое, логично, не объявленное ранее, и выдаёт ошибку. На строках 2, 3 - полнейший бардак внутри print(). Что ты пытался объяснить выражением "положительное, "eho)= ' '), или "отрицательное", end") - мягко сказать, не до конца понятно.
Про наличие оператора elif, судя по выражению else if ты знать не знал. А должен был, это в любом самоучителе сразу же рассказывается.
Вердикт - неисправимый бардак. Удаляй, ставь себе нормальную среду для работы с python, например PyCharm, и переделывай заново.
Python 3.7.2
x = int(input(), base = 10)
k3 = k5 = 0
for digit in map(int, list(str(x))):
if digit is 3: k3 += 1
elif digit is 5: k5 += 1
#Что бы не городить огромные условные конструкции,
#Мы просто "выключим" программу при кривом вводе
if k3 == k5 == 0: raise RuntimeError('bad input')
#Если введённое число не имеет нужных цифр - вылетаем с ошибкой Runtime error и сообщаем об этом
print(f'цифр 5 больше, счётчики: k3: {k3}, k5: {k5}' if (k5 > k3) else f'цифр 3 больше, счётчики: k3: {k3}, k5: {k5}')
y = int('5'*k5 + '3'*k3)
y1 = y - 7
#Это можно засунуть в print(), но раз уж надо...
print(x, y, y1, end = '\n')
Объяснение:
На скриншотах представлены исходный код программы в рабочем виде, без поломанных отступов, а так же результат работы для предложенных входных данных. Если сильно надо программу просто скопировать, сдать и забыть, а отсюда не копируется - попросите в комментариях, я залью это на какой нибудь сервис типа pastebin.