Вопрос по информатике:
Дан целочисленный массив из 30 элементов. Элементы массива могут принимать значения от 0 до 10 включительно – показатели среднего отклонения от нормальной работы прибора за день, зафиксированные в течение месяца. Написать на языке Паскаль алгоритм подсчета максимального количества подряд идущих дней, в которые прибор работал исправно (отклонение от нормальной работы прибора за день было равно 0), при условии, что хотя бы один день прибор работал исправно. Исходные данные объявлены так, как показано ниже. Запрещается использовать необъявленные переменные, но разрешается не использовать часть из них.
const n = 30;
var a : array [1 .. n] of integer;
I, k1, k2 : integer;
begin for i := 1 to n do readln ( a [ i ] );
…
end.
- 10.10.2015 17:14
- Информатика
- remove_red_eye 14946
- thumb_up 18
Ответы и объяснения 1
var a : array [1 .. n] of integer;
i, k1, k2 : integer;
begin
for i := 1 to n do read(a[i]);
k1:=0; k2:=0;
for i:=1 to n do
if (a[i]>0) then
begin
if k1>k2 then k2:=k1;
k1:=0;
end
else k1:=k1+1;
if k1>k2 then k2:=k1;
writeln('max = ',k2);
end.
Пример:
3 9 7 9 2 9 1 7 5 8 9 9 0 0 0 0 1 1 0 0 7 4 3 3 7 5 1 0 4 3
max = 4
- 11.10.2015 13:50
- thumb_up 31
Знаете ответ? Поделитесь им!
Есть сомнения?
Не нашли подходящего ответа на вопрос или ответ отсутствует? Воспользуйтесь поиском по сайту, чтобы найти все ответы на похожие вопросы в разделе Информатика.
Трудности с домашними заданиями? Не стесняйтесь попросить о помощи - смело задавайте вопросы!
Информатика — наука о методах и процессах сбора, хранения, обработки, передачи, анализа и оценки информации с применением компьютерных технологий, обеспечивающих возможность её использования для принятия решений.