Форум » Массивы, сортировка, работа с файлами » Вариант 3 задание 24(2556) из генератора » Ответить

Вариант 3 задание 24(2556) из генератора

NIKITA889941: Помогите пожалуй с решение, вот мое [pre2] program gregre; var k, i, c:integer; s,s1:string; f:text; begin i:=1; assign(f,'123.txt'); reset(f); while not eof(f) do begin readln(f,s1); s:=s+s1; end; i:=1; while not eof(f) do begin k:=0; repeat if ((s[ i]='Y') and (s[i+1] ='Z' )) then k:=k+1; writeln(s[ i],s[i+1],k); if k>=1 then c:=c+1; i:=i+1; until s[ i]=chr(13); end; writeln(c); end.[/pre2]

Ответов - 3

Поляков: Предлагаю сначала правильно оформить программу, сделав отступы. Разбираться в этой каше, я думаю, никто не будет.

Nikita889941!!313: [pre2]program gregre; var k, i, c:integer; s,s1:string; f:text; begin i:=1; assign(f,'123.txt'); reset(f); while not eof(f) do begin readln(f,s1); (поскольку файл построкам, склеиваю с помощью конкатанации) s:=s+s1; end; i:=1; while not eof(f) do begin k:=0; repeat if ((s[ i]='Y') and (s[i+1] ='Z' then K:=k+1; подсчитаем кол-во "yz" в строке пока не встретим символ переноса строки i:=i+1; (счетчик сдвига символа) until s[ i]=chr(13); If k>1 then c:=c+1; подсчетаем кол-во строк где "yz" встретились больше 1 раза end; writeln(c); end.[/pre2]

Поляков: Что мешает вам обрабатывать файл построчно? Прочитали одну строку; определили, сколько там нужных комбинаций символов; если > 1, увеличили счётчик. Непонятно, зачем склеивать все в одну строку и получать проблемы на ровном месте.




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