Требуется найти самую длинную непрерывную цепочку нулей в последовательности нулей и единиц. Пример: 00101110000110 Ответ:4; Программу нужно написать на Паскале
Answers & Comments
srzontmp
Var s: string; bg,k,i,l: integer; begin write('строка: '); readln(s); i:=1; bg:=0; k:=0; l:=length(s); while (i<l) do begin while (s[i]<>'0') and (i<l) do i:=i+1; bg:=i; while (s[i]='0') and (i<l) do i:=i+1; if i=l then bg:=bg-1; if k<i-bg then k:=i-bg; end; writeln('длина макс. последоват. из нулей = ',k); end.
5 votes Thanks 2
andrey975
Надеюсь вам можно использовать массивы, если нет, то скажите, переделаем
Answers & Comments
bg,k,i,l: integer;
begin
write('строка: ');
readln(s);
i:=1; bg:=0; k:=0;
l:=length(s);
while (i<l) do
begin
while (s[i]<>'0') and (i<l) do i:=i+1;
bg:=i;
while (s[i]='0') and (i<l) do i:=i+1;
if i=l then bg:=bg-1;
if k<i-bg then k:=i-bg;
end;
writeln('длина макс. последоват. из нулей = ',k);
end.