Здравствуйте, Валерий.
Ваше сообщение указывает на проблему с отступами в вашей программе на Python. В первой программе у вас неправильные отступы, из-за чего интерпретатор считает, что else относится к циклу for, а не к блоку if. Правильные отступы очень важны в Python, так как они определяют блоки кода.
Давайте я покажу, как должны выглядеть обе программы с правильными отступами:
Первая программа:
s = open('24var13-17.txt').readline().strip()
count = 0
c = 1
for i in range(1, len(s)):
if s[i] >= s[i-1]:
c += 1
count = max(count, c)
else:
c = 1
print(count)
Вторая программа:
s = open('24var13-17.txt').readline().strip()
count = 0
c = 1
for i in range(1, len(s)):
if s[i] >= s[i-1]:
c += 1
count = max(count, c)
else:
c = 1
print(count)
Основное различие между двумя программами - отступы в блоках if и else. В первой программе отступы неверные, поэтому интерпретатор неправильно определяет конец блока if.
Чтобы избежать таких ошибок, следуйте этим рекомендациям:
Используйте 4 пробела для отступов.
Убедитесь, что отступы везде одинаковы (например, не смешивайте табуляции и пробелы).
Используйте редакторы кода или IDE, которые помогают управлять отступами (например, PyCharm, VS Code).
С уважением, Татьяна
s=open('24var13-17.txt').readline().strip()
count=0
c=1
for i in range(1,len(s)):
if s[i] >= s[i-1]:
c+=1
count=max(count,c)
else: c=1
print(count)
s=open('24var13-17.txt').readline().strip()
count=0
c=1
for i in range(1, len(s)):
if s[i] >= s[i-1]:
c+=1
count=max(count, c)
else:
с=1
print(count)
Первая программа работает правильно. else в 8 ой строке относится к if.
Вторая программа работает неправильно 18 и 19 строки интерпретатор отнес к циклу for.
С уважением Валерий.
P.S. ответы: 15
666650
версия Python: 3.13 (64 bit)
Входной файл большой 1000000 байт (подготовка к ЕГЭ)
>>>