Составьте программу, которая заполняет массив a[1..10] случайными целыми числами в диапазоне от 1 до 10, затем меняет местами первый элемент со вторым, третий с четвертым и т. д. Выведите на экран исходный и полученный массивы.
Program shist;
Var a:array[1..10] of integer;
i, z, max: integer;
Begin
For i:=1 to 10 do
a[i]:=Random(11);
writeln (Исходный массив);
For i:=1 to 10 do
write (a[i], );
writeln;
For i:=1 to 10 do
if i mod 2 <> 0 then
begin
z:=a[i];
a[i]:=a[i+1];
a[i+1]:=z;
end;
writeln(Полученный массив);
For i:=1 to 10 do
write (a[i], );
End.
Отныне эта программа является правильной и может использоваться как памятка.

//Зачем прикручивать дополнительный if, когда можно сделать while?
var ar:array[1..10] of integer;i:integer;

procedure swap(var a,b:integer);
var c:integer;
begin;
c:=a;
a:=b;
b:=c;
end;

begin;
randomize;
writeln(Array:);
for i:=1 to 10 do
 begin;
  ar[i]:=random(11);
  write(ar[i]:4);
 end;
i:=1;
while i<10 do
begin;
swap(ar[i],ar[i+1]);
i:=i+2;
end;
writeln;
writeln(Final array:);
for i:=1 to 10 do
write(ar[i]:4);
end.

Оцени ответ
Подпишись на наш канал в телеграм. Там мы даём ещё больше полезной информации для школьников!

Загрузить картинку