
Fordrellador
7 год назад
1)дан массив из n элементов, n не больше 30. отсортировать по возрастанию элементы второй половины
2) Дан массив из n элементов, n не более 30, n-четное. Поменять местами первую и вторую половину
Помогите, пожалуйста
ОТВЕТЫ

Laevbabav
Jul 11, 2019
{ 1. Дан массив из n элементов, n не больше 30. отсортировать по возрастанию элементы второй половины }
const n=20;
var
k,x,i,j: integer;
var a: array[1..n] of integer;
begin
if n mod 2 =0
then k:=(n div 2)+1
else k:=(n div 2)+2;
writeln (Исходный массив);
for i:=1 to n do begin
a[i]:=random(100);
write (a[i]:3);
end;
writeln;
for i:=k to n-1 do
for j:=i+1 to n do
if a[i]gt;a[j]
then begin x:=a[i]; a[i]:=a[j]; a[j]:=x end;
writeln;
writeln (Измененный массив);
for i:=1 to n do
write (a[i]:3);
end.
-----------------Результат:--------------------
Исходный массив
52 49 94 71 98 80 83 94 26 59 66 74 97 59 27 32 90 97 43 37
Измененный массив
52 49 94 71 98 80 83 94 26 59 27 32 37 43 59 66 74 90 97 97
----------------------------------------------------
{ Дан массив из n элементов, n не более 30, n-четное. Поменять местами первую и вторую половину }
const n=20;
var
k,x,i: integer;
var a: array[1..n] of integer;
begin
k:=(n div 2);
writeln (Исходный массив);
for i:=1 to n do begin
a[i]:=random(100);
write (a[i]:3);
end;
writeln;
for i:=1 to k do begin
x:=a[i];
a[i]:=a[i+k];
a[i+k]:=x
end;
writeln;
writeln (Измененный массив);
for i:=1 to n do
write (a[i]:3);
end.
-----------------Результат:--------------------
Исходный массив
37 8 74 17 8 96 1 47 69 77 69 21 2 67 93 35 74 58 48 53
Измененный массив
69 21 2 67 93 35 74 58 48 53 37 8 74 17 8 96 1 47 69 77
----------------------------------------------------
const n=20;
var
k,x,i,j: integer;
var a: array[1..n] of integer;
begin
if n mod 2 =0
then k:=(n div 2)+1
else k:=(n div 2)+2;
writeln (Исходный массив);
for i:=1 to n do begin
a[i]:=random(100);
write (a[i]:3);
end;
writeln;
for i:=k to n-1 do
for j:=i+1 to n do
if a[i]gt;a[j]
then begin x:=a[i]; a[i]:=a[j]; a[j]:=x end;
writeln;
writeln (Измененный массив);
for i:=1 to n do
write (a[i]:3);
end.
-----------------Результат:--------------------
Исходный массив
52 49 94 71 98 80 83 94 26 59 66 74 97 59 27 32 90 97 43 37
Измененный массив
52 49 94 71 98 80 83 94 26 59 27 32 37 43 59 66 74 90 97 97
----------------------------------------------------
{ Дан массив из n элементов, n не более 30, n-четное. Поменять местами первую и вторую половину }
const n=20;
var
k,x,i: integer;
var a: array[1..n] of integer;
begin
k:=(n div 2);
writeln (Исходный массив);
for i:=1 to n do begin
a[i]:=random(100);
write (a[i]:3);
end;
writeln;
for i:=1 to k do begin
x:=a[i];
a[i]:=a[i+k];
a[i+k]:=x
end;
writeln;
writeln (Измененный массив);
for i:=1 to n do
write (a[i]:3);
end.
-----------------Результат:--------------------
Исходный массив
37 8 74 17 8 96 1 47 69 77 69 21 2 67 93 35 74 58 48 53
Измененный массив
69 21 2 67 93 35 74 58 48 53 37 8 74 17 8 96 1 47 69 77
----------------------------------------------------
32
Смежные вопросы: