• Предмет: Информатика
  • Автор: pomogitesdzpj
  • Вопрос задан 9 лет назад

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

Ответы

Ответ дал: contrlc
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.
Ответ дал: pomogitesdzpj
0
Спасибо большое
Ответ дал: pomogitesdzpj
0
Но там есть недочет, если например ввести 100010000, то программа выдаст результат 3, не беря во внимание последнюю цепочку. Или, например, взяв число 1000, то программа выдаст результат 0.
Ответ дал: contrlc
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.
Ответ дал: pomogitesdzpj
0
спасибо
Вас заинтересует