Форум » Обработка символьных строк » задание 24 вопрос по программе » Ответить

задание 24 вопрос по программе

Агаркова: Здравствуйте. Помогите решить проблему. Скажите, пожалуйста, какие настройки в среде PascalABC.Net надо проверить, чтобы узнать, почему не выполняется код программы. У меня на разных компьютерах разная версия Паскаля.НЕТ. В одних версиях программы работают, а в других нет. Вот код программы задания 2 из ЕГЭ-24: [pre2] var maxLen, cLen, i: integer; s: string; begin assign(input, 'k7-3.txt'); readln (s); maxLen := 0; for i:=1 to length(s) do if s[ i]='C' then begin cLen := cLen+1;; if cLen>maxLen then maxLen:=cLen; end else cLen := 0;; writeln (maxLen); end.[/pre2] Ответ получается 1 в одной версии, а другая версия программы (на школьном ноутбуке) все время выдает 0. Хотя код такой же. Дома на компьютере стоит версия 3.5 - все работает, на школьном компьютере версия 3.7 и 3.8 - не работает

Ответов - 4

Поляков: Возможно, тут проблема в том, что в этом файле после латинских букв НЕТ символа перевода строки. Видимо, реализация assign(input,...) такова, что такой символ обязательно нужен. Что делать: 1) вручную добавить такой символ - открыть файл в Блокноте, нажать Enter и сохранить. 2) использовать классический вариант работы с файлом: [pre2] var maxLen, cLen, i: integer; s: string; F: text; begin assign( F, 'k7-3.txt' ); reset( F ); readln( F, s ); maxLen := 0; for i:=1 to length(s) do if s[ i]='C' then begin cLen := cLen+1;; if cLen>maxLen then maxLen:=cLen; end else cLen := 0; writeln (maxLen); end.[/pre2]

Агаркова: Спасибо за ответ. Классический вариант мы пробовали. Все равно не работает. Пробовали в файлы добавлять нужные цепочки, чтобы они наверняка встречались, тоже не работает. Попробуем первый вариант

Поляков: Агаркова пишет: Спасибо за ответ. Классический вариант мы пробовали. Все равно не работает. Я проверял на версии 3.8, сборка 2870 от 25.03.2021, все отработало, получил ответ 1.


Агаркова: Спасибо, Константин Юрьевич. Все моя невнимательность. В Readln (F, s) просто пропускала текстовую переменную, из которой считывать. Добавила, все заработала.



полная версия страницы