Требуется найти самую длинную непрерывную цепочку нулей в последовательности нулей и...

0 голосов
286 просмотров

Требуется найти самую длинную непрерывную цепочку нулей в последовательности нулей и единиц. Пример - 00101110000110 - 4. Прошу сделать без использования массивов и на языке паскаль абс.


Информатика (15 баллов) | 286 просмотров
0

Строки тоже нельзя использовать?

0

Можно, если вы про string и char

Дан 1 ответ
0 голосов
Правильный ответ

Var
  i, n, max: integer;
  s: string;

 begin
  n := 0;
  max := 0;
  readln(s);
  for i := 1 to length(s) do
  begin
    if(s[i] = '0') then n := n + 1
    else begin if(n > max) then max := n; n := 0; end;
  end;
  write(max);
end.

(3.7k баллов)
0

Спасибо большое

0

Но там есть недочет, если например ввести 100010000, то программа выдаст результат 3, не беря во внимание последнюю цепочку. Или, например, взяв число 1000, то программа выдаст результат 0.

0

var
i, n, max: integer;
s: string;

begin
n := 0;
max := 0;
readln(s);
for i := 1 to length(s) do
begin
if(s[i] = '0') then n := n + 1;
if(n>max)then max:=n;
if(s[i]='1')then n:=0;
end;
write(max);
end.

0

спасибо