program mn;
uses crt;
const m=7;n=9;
var mas:array[1..m,1..n] of Integer ;
m1, m2:array[1..n] of Integer ;
i, j, k:Integer;
begin
Randomize;
write('Исходный массив:') ;
for i:=1 to m do begin
writeln;
for j:=1 to n do begin
mas[i, j]:=random(100);
write(mas[i, j]:3) end end ;
j:=0;
repeat
for i:=1 to n do begin
m1[i]:=mas[1+j,i];
m2[i]:=mas[m-j,i];
mas[1+j,i]:=m2[i];
mas[m-j,i]:=m1[i]; end;
j:=j+1
until j>m div 2;
write('Преобразованный массив:') ;
for j:=1 to n do
write(mas[i, j] :3) end;
readln;
end.
Объяснение:
В разделе const задаем нужный размер исходного массива.
1) program Array16;
var
i:integer; // счетчик в цикле
N:integer;
a: array [1..10] of integer;
writeln('Введите N (N<10)');
readln(N); // ввод размера массива
for i:=1 to N do
write('a[',i,']=');
readln(A[i]); // ручной ввод значений массива
end;
writeln('Результат');
// вычисление и вывод элементов в указанном порядке
write(' ',a[(i div 2+1)*((i) mod 2)+ n*((i+1)mod 2)-((i div 2)-1)*((i+1) mod 2)]);
2) Var A:array[1..100] of integer;
i,n:byte;
Begin
write('Введите n<=100: ');readln(n);
For i:=1 to n do
A[i]:=random(31);
write(A[i]:3);
End;
For i:=1 to n div 2 do
write(A[i]:3,A[n-i+1]:3);
if n mod 2 <>0 then write(A[n div 2+1]:3);
End.
program mn;
uses crt;
const m=7;n=9;
var mas:array[1..m,1..n] of Integer ;
m1, m2:array[1..n] of Integer ;
i, j, k:Integer;
begin
Randomize;
write('Исходный массив:') ;
for i:=1 to m do begin
writeln;
for j:=1 to n do begin
mas[i, j]:=random(100);
write(mas[i, j]:3) end end ;
j:=0;
repeat
for i:=1 to n do begin
m1[i]:=mas[1+j,i];
m2[i]:=mas[m-j,i];
mas[1+j,i]:=m2[i];
mas[m-j,i]:=m1[i]; end;
j:=j+1
until j>m div 2;
writeln;
write('Преобразованный массив:') ;
for i:=1 to m do begin
writeln;
for j:=1 to n do
write(mas[i, j] :3) end;
readln;
end.
Объяснение:
В разделе const задаем нужный размер исходного массива.
1) program Array16;
var
i:integer; // счетчик в цикле
N:integer;
a: array [1..10] of integer;
begin
writeln('Введите N (N<10)');
readln(N); // ввод размера массива
for i:=1 to N do
begin
write('a[',i,']=');
readln(A[i]); // ручной ввод значений массива
end;
writeln('Результат');
for i:=1 to N do
begin
// вычисление и вывод элементов в указанном порядке
write(' ',a[(i div 2+1)*((i) mod 2)+ n*((i+1)mod 2)-((i div 2)-1)*((i+1) mod 2)]);
end;
end.
2) Var A:array[1..100] of integer;
i,n:byte;
Begin
write('Введите n<=100: ');readln(n);
For i:=1 to n do
Begin
A[i]:=random(31);
write(A[i]:3);
End;
writeln;
For i:=1 to n div 2 do
write(A[i]:3,A[n-i+1]:3);
if n mod 2 <>0 then write(A[n div 2+1]:3);
End.