1,2,3,4,5,6,8
Объяснение:
Что напечатается:
1
3
5
6
2
4
6
8
4
6
8
При вызове F(1) печатается 1. Дальше вызовется F(3)
Напечатается 3. Вызовется F(5)
Напечатается 5. F(7) не вызывается, т.к. 7>5
Теперь вызывается вторая функция для F(3), то есть F(6)
Печатается 6. Дальше вызывается вторая функция для F(1), то есть F(2)
Печатается 2. Вызывается первая функция для F(2), т.е. F(4).
Печатается 4. Вызывается первая функция для F(4), т.е. F(6).
Печатается 6. Вызывается вторая функция для F(4), т.е. F(8)
Печатается 8. Вызывается вторая функция для F(2), т.е. F(4)
Печатается 4. Вызываются первая и вторая функции F(6) и F(8)
Печатается 6
Печатается 8
Программа:
Pascal:
№2)
var
m: array[1..10] of integer;
begin
m[1]:=4; m[2]:=8; m[3]:=7; m[4]:=2; m[5]:=1; m[6]:=8; m[7]:=1; m[8]:=5; m[9]:=6; m[10]:=8;
for var i := 1 to 10 do
if m[i] = m.max then m[i]:= 0;
writeln(m);
end.
№3)
const n = 10;
var
a: array[1..n] of integer;
i, k, tmp: integer;
begin
for i := 1 to n do a[i] := random(0, 1);
writeln('Массив: ', a);
for i := 1 to n - 1 do
for k := 1 to n - i do
if a[k] > a[k + 1] then begin
tmp := a[k];
a[k] := a[k + 1];
a[k + 1] := tmp;
end;
writeln(a);
end.
№5)
const n = 10;
var
a: array[1..n] of integer;
a1, a2: array[1..n div 2] of integer;
i, k, tmp: integer;
begin
for i := 1 to n do a[i] := random(-10, 10);
writeln('Исходный массив: ',a);
for i := 1 to n div 2 do a1[i] := a[i];
for i := (n div 2 + 1) to n do a2[i - n div 2] := a[i];
for i := 1 to n div 2 - 1 do
for k := 1 to n div 2 - i do
if a1[k] > a1[k + 1] then begin
tmp := a1[k];
a1[k] := a1[k + 1];
a1[k + 1] := tmp;
end;
for i := 1 to n div 2 - 1 do
for k := 1 to n div 2 - i do
if a2[k] < a2[k + 1] then begin
tmp := a2[k];
a2[k] := a2[k + 1];
a2[k + 1] := tmp;
end;
for i := 1 to n do
if i <= 5 then a[i] := a1[i]
else a[i] := a2[i - n div 2];
writeln('Выходной массив: ', a);
end.