Предмет: Информатика,
автор: Шист
Составьте программу, которая заполняет массив 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.
Отныне эта программа является правильной и может использоваться как памятка.
Ответы
Автор ответа:
0
//Зачем прикручивать дополнительный 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.
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.
Похожие вопросы
Предмет: Окружающий мир,
автор: 123maksmaksmaks123
Предмет: Қазақ тiлi,
автор: bazarbaevmardan
Предмет: Математика,
автор: rrremmaradancuk5
Предмет: Математика,
автор: Наташинька
Предмет: Физика,
автор: знания0000