1-11 класс
  • 1-11 класс
  • 1 класс
  • 2 класс
  • 3 класс
  • 4 класс
  • 5 класс
  • 6 класс
  • 7 класс
  • 8 класс
  • 9 класс
  • 10 класс
  • 11 класс
Выберите класс
Предметы
(Сам и контр)
Задание 10 Вариант 3 Самостоятельная работа 4 ГДЗ Рабочая тетрадь Босова 11 класс (Информатика)
Босова, Босова, Аквилянов
11 класс
Класс
11
Предмет
Информатика
Автор
Босова, Босова, Аквилянов

Задание 10 Вариант 3 Самостоятельная работа 4 ГДЗ Рабочая тетрадь Босова 11 класс (Информатика)

Задача
  1. Напишите программу. Дан одномерный массив $$C[1..N]$$, содержащий большое количество нулевых элементов. Найдите длину самой большой цепочки, состоящей из нулей. Запишите текст программы.
Подробный ответ

Нужно просмотреть массив и найти максимальную длину подряд идущих нулей. Для этого удобно хранить:

  • l — длину текущей цепочки нулей;
  • lmax — длину самой большой найденной цепочки.

Если очередной элемент равен $$0$$, увеличиваем l. Если встретилась единица, сравниваем l с lmax, при необходимости обновляем максимум и обнуляем l.

После просмотра всех элементов нужно ещё раз проверить последнюю цепочку нулей, если массив закончился на нуле.

program s4_v3_10;
const
  n = 20;
var
  c: array[1..n] of integer;
  i, l, lmax: integer;
begin
  randomize;
  for i := 1 to n do
  begin
    c[i] := random(2);
    write(c[i], ‘ ‘);
  end;
  writeln;

  l := 0;
  lmax := 0;
  for i := 1 to n do
  begin
    if c[i] = 0 then
      l := l + 1
    else
    begin
      if l > lmax then lmax := l;
      l := 0;
    end;
  end;
  if l > lmax then lmax := l;

  writeln(‘lmax = ‘, lmax);
end.

Ответ: программа, находящая длину самой большой цепочки из нулей, приведена выше.



Общая оценка
3.7 / 5
Другие учебники
Другие предметы