Поменять местами 1-ую половину массива со 2-ой половиной,не используя дополнительный массив — Pascal(Паскаль)

uses crt;
const nmax=100;
var a:array[1..nmax] of integer;
    n,i,j,k:byte;
    x:integer;
begin
clrscr;
randomize;
repeat
write('Размер массива четное число до ',nmax,' n=');
readln(n);
until (n in [2..nmax])and(n mod 2=0);
writeln('Исходный массив:');
for i:=1 to n do
 begin
  a[i]:=random(90)+10;
  write(a[i]:4);
 end;
writeln;
writeln;
k:=n div 2;
for i:=1 to k do
 begin
  x:=a[i];
  a[i]:=a[k+i];
  a[k+i]:=x;
 end;
writeln('Обмен половин массива:');
for i:=1 to n do
write(a[i]:4);
readln
end.

Leave a Comment

− 1 = 8