В программе задается массив, состоящий из 8 элементов. Затем переменным term и m присваиваются начальные значения (1 и 7 соответственно). В цикле нц для к от 2 до 8 если Dat[к] > m то m:= Dat[k] term := k все КЦ элементы массива (начиная со второго) сравниваются с переменной m: k=2 Dat[2]>m ⇒ 7>7 ⇒ нет k=3 Dat[3]>m ⇒ 6>7 ⇒ нет k=4 Dat[4]>m ⇒ 8>7 ⇒ да; m=Dat[4]=8; term=k=4 k=5 Dat[5]>m ⇒ 4>8 ⇒ нет k=6 Dat[6]>m ⇒ 5>8 ⇒ нет k=7 Dat[7]>m ⇒ 8>8 ⇒ нет k=8 Dat[8]>m ⇒ 7>8 ⇒ нет На экран будет выведено значение переменной term=4 Таким образом, в переменной m сохраняется значение максимального элемента массива, а в переменной term - номер первого максимального элемента.
Блок-схема - в прилагаемом файле. Программа: const n=20; var a:array[1..20] of integer; i,k2,k3,k4,k5:integer; begin Randomize; writeln('Оценки:'); for i:=1 to n do begin a[i]:=random(4)+2; write(a[i],' '); end; writeln; k2:=0;k3:=0;k4:=0;k5:=0; for i:=1 to n do case a[i] of 2: k2:=k2+1; 3: k3:=k3+1; 4: k4:=k4+1; 5: k5:=k5+1; end; writeln('Двоек: ',k2); writeln('Троек: ',k3); writeln('Четверок: ',k4); writeln('Пятёрок: ',k5); end.
Затем переменным term и m присваиваются начальные значения (1 и 7 соответственно).
В цикле
нц для к от 2 до 8
если Dat[к] > m то
m:= Dat[k]
term := k
все
КЦ
элементы массива (начиная со второго) сравниваются с переменной m:
k=2
Dat[2]>m ⇒ 7>7 ⇒ нет
k=3
Dat[3]>m ⇒ 6>7 ⇒ нет
k=4
Dat[4]>m ⇒ 8>7 ⇒ да; m=Dat[4]=8; term=k=4
k=5
Dat[5]>m ⇒ 4>8 ⇒ нет
k=6
Dat[6]>m ⇒ 5>8 ⇒ нет
k=7
Dat[7]>m ⇒ 8>8 ⇒ нет
k=8
Dat[8]>m ⇒ 7>8 ⇒ нет
На экран будет выведено значение переменной term=4
Таким образом, в переменной m сохраняется значение максимального элемента массива, а в переменной term - номер первого максимального элемента.
const n=20;
var a:array[1..20] of integer;
i,k2,k3,k4,k5:integer;
begin
Randomize;
writeln('Оценки:');
for i:=1 to n do begin
a[i]:=random(4)+2;
write(a[i],' ');
end;
writeln;
k2:=0;k3:=0;k4:=0;k5:=0;
for i:=1 to n do
case a[i] of
2: k2:=k2+1;
3: k3:=k3+1;
4: k4:=k4+1;
5: k5:=k5+1;
end;
writeln('Двоек: ',k2);
writeln('Троек: ',k3);
writeln('Четверок: ',k4);
writeln('Пятёрок: ',k5);
end.
Пример:
Оценки:
3 5 3 2 5 3 2 5 3 4 4 5 2 3 3 4 4 2 2 5
Двоек: 5
Троек: 6
Четверок: 4
Пятёрок: 5