Var k, m: integer;Dat: array[1..10] of integer;BeginDat[1] := 16; Dat[2] := 20;Dat[3] :=...

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

Var k, m: integer;Dat: array[1..10] of integer;
Begin
Dat[1] := 16;
Dat[2] := 20;
Dat[3] := 20;
Dat[4] := 41;
Dat[5] := 14;
Dat[6] := 21;
Dat[7] := 28;
Dat[8] := 12;
Dat[9] := 15;
Dat[10] := 35;
m := 0;
for k := 1 to 10 do
if Dat[k]>m then
begin
m := Dat[k]
end;
writeln(m);
End.


с пояснениями, пожалуйста!


Информатика (79 баллов) | 99 просмотров
Дан 1 ответ
0 голосов
Правильный ответ

Программа отыскивает и выводит максимальное из десяти чисел, которые помещаются в массиве Dat.
Вначале каждый элемент массива получает значение.
Для отыскания максимума отводится переменная m. Примененный алгоритм требует, чтобы перед началом поиска значение m было меньше самого меньшего из чисел в Dat. В качестве такого значения выбирается ноль.
Затем в цикле выполняется просмотр всех элементов массива, начиная с первого. Если очередной элемент превышает ранее найденный максимум, то за новый максимум принимается значение элемента.
После окончания поиска максимума найденное значение выводится на экран.

(142k баллов)