4
Объяснение:
фрагмент кода меняет соседние элементы массива, если предыдущий меньше последующего и считает кол-во этих перестановок
Исходный
8 9 5 3 2 8 4 2 1 9 d := 0 ( 8 < 9)
1) 9 8 5 3 2 8 4 2 1 9 d := 1 (8 !< 5)
2) 9 8 5 3 2 8 4 2 1 9 d := 1 (5 !< 3)
3) 9 8 5 3 2 8 4 2 1 9 d := 1 (3 !< 2)
4) 9 8 5 3 2 8 4 2 1 9 d := 1 (2 < 8)
5) 9 8 5 3 8 2 4 2 1 9 d := 2 (2 < 4)
6) 9 8 5 3 8 4 2 2 1 9 d := 3 (2 !< 2)
7) 9 8 5 3 8 4 2 2 1 9 d := 3 (2 !< 1)
8) 9 8 5 3 8 4 2 2 1 9 d := 3 (1 < 9)
8) 9 8 5 3 8 4 2 2 9 1 d := 4
ответ: d := 4
1) 5
2) 0
3) 1
Объяснение:1) s:=0; for i:=10 downto 6 do s:=s+1;Переменная s изначально равна 0. Потом идёт цикл от 10 вниз до 6, который каждый раз будет прибавлять к s единицу (s[новая] = s[старая] + 1). Цикл от 10 до 6 включительно, то есть он буде выполнятся 10-6+1=5 раз (+1 т.к. включительно). Получается мы 5 раз прибавляем к нулю 1. ответ: 0 + 1*5 = 5.
2)s:=0; for i:=8 to 3 do s:=s+1;Переменная s изначально равна 0. Потом идёт цикл от 8 до 6, который выполнятся не будет, так как 8>6, и увеличиваясь на 1 каждый раз, он никогда не дойдет до 6. Для работы необходимо писать downto вместо to, то есть вниз до. Однако такового тут нет, поэтому цикл не выполняется и переменная s остаётся 0. ответ: 0.
3)s:=1; for i:=2 downto 10 dо s:=s+1;Переменная s изначально равна 1. Потом идёт цикл от 2 вниз до 10, который выполнятся не будет, так как 2<10, и уменьшаясь на 1 каждый раз, он никогда не дойдет до 10. Для работы необходимо писать to вместо downto, то есть до, а не вниз до. Однако такового тут нет, поэтому цикл не выполняется и переменная s остаётся 1. ответ: 1.
Program maximal;
const
nmax=100;
var
a:array[1..nmax] of integer;
N,i,max:integer;
begin
readln(N);
max:=0;
for i:=1 to N do
begin
read(a[i]);
if max<a[i] then
max:=a[i];
end;
write(max);
end.
2) Program B;
const
nmax=100;
var
a:array[1..nmax] of integer;
N,i,z:integer;
begin
readln(N);
z:=0;
for i:=1 to N do
begin
read(a[i]);
if a[i]>0 then
write(a[i],' ');
if a[i]=0 then
z:=z+1;
end;
writeln();
for i:=1 to N do
begin
if a[i]<0 then
write(a[i],' ');
end;
writeln();
for i:=1 to z do
write('0',' ')
end.