1) Как описывается двумерный массив?
2) В каком виде вводится мас-сив (строка или столбец)?
3) Объяснить работу программы.
4) В каком виде выводится мас-сив?
5) Провести вычисление для массива А(3,3): (1, 2, 3, 4, 5, 6, 7, 8, 9).
Пример 11.5 Заполнить массив A= {a[i,j]}, i =1,…,m; j=1,…,n
(см. 11.1) нулями (обнулить).
Program Pr_11_5;
const m=3; n=3;
type
ar=array[1..m,1..n] of real;
var
a:ar; i,j:integer;
begin
writeln('vvedite massiv');
for i:=1 to m do
for j:=1 to n do
read (a[i,j]);
for i:=1 to m do
for j:=1 to n do
a[i,j]:=0;
writeln('vivedite massiv');
for i:=1 to m do
begin
for j:=1 to n do
write(a[i,j]:6:2);
writeln;
end;
end.
Пример 11.5 (Продолжение).
1) Как описывается двумерный массив?
2) В каком виде вводится мас-сив (строка или столбец)?
3) Объяснить работу программы.
4) В каком виде и какой массив выводится?
5) Провести вычисление для массива А(3,3): (1, 2, 3, 4, 5, 6, 7, 8, 9).
Лабораторная работа № 12
Работа в среде Турбо Паскаль.
Двумерные массивы.
Поиск наибольших и наименьших элементов. Замена положений наибольшего и наименьшего элементов в
Массиве.
Пример 12.1 Найти максимальный элемент массива A(3, 3).
|
|
Program Pr_12_1;
const m=3; n=3;
var a:array[1..m,1..n] of real;
i,j,k,l:integer; amax:real;
begin
writeln('vvedite massiv');
for i:=1 to m do
for j:=1 to n do
read (a[i,j]);
amax:=a[1,1]; k:=1;l:=1;
for i:=1 to m do
for j:=1 to n do
if amax<a[i,j] then
begin
amax:=a[i,j]; k:=i;l:=j;
end;
for i:=1 to m do
begin
for j:=1 to n do
write(a[i,j]:6:2);
writeln;
end;
writeln('amax=',amax:6:2);
writeln('stroka k=',k:2);
writeln('stolbec l=',l:2)
end.
Пример 12.1 (Продолжение).
1) Организовать по программе ввод двумерного массива А(3,3): 1 2 3
4 5 6
7 8 9
2) Как описывается двумерный массив в программе?
3) В каком виде вводится задан-ный массив (строка или стол-бец)?
4) Объяснить работу програм-мы.
5) Как надо изменить програм-му, чтобы организовать ввод массива в один столбец.
6) Провести вычисление по программе.
7) Изменить порядок элементов в матрице и провести новое вычисление.
Пример 12.2 Найти минимальный элемент массива A(3, 3).
Program Pr_12_2;
const m=3; n=3;
var a:array[1..m,1..n] of real;
i,j,k,l:integer; amin:real;
begin
writeln('vvedite massiv');
for i:=1 to m do
for j:=1 to n do
read (a[i,j]);
amin:=a[1,1]; k:=1;l:=1;
for i:=1 to m do
for j:=1 to n do
if amin>a[i,j] then
begin
amin:=a[i,j]; k:=i;l:=j;
end;
for i:=1 to m do
begin
for j:=1 to n do
write(a[i,j]:6:2);
writeln;
end;
writeln('amin=',amin:6:2);
writeln('stroka k=',k:2);
writeln('stolbec l=',l:2)
end.
Пример 12.2 (Продолжение).
1) Организовать по программе ввод двумерного массива А(3,3): 1 2 3
4 5 6
7 8 9
2) Как описывается двумерный массив в программе?
3) В каком виде вводится задан-ный массив (строка или стол-бец)?
4) Объяснить работу програм-мы.
5) Как надо изменить програм-му, чтобы организовать ввод массива в один столбец.
6) Провести вычисление по программе.
7) Изменить порядок элементов в матрице и провести новое вычисление.
Пример 12.3 Поменять местами наибольший и наименьший
элементы массива A(3, 3).
|
|
Program Pr_12_2;
const m=3; n=3;
var a:array[1..m,1..n] of real;
i,j,imin,imax,jmin,jmax:integer;
amin,amax:real;
begin writeln('vvedite massiv');
for i:=1 to m do
for j:=1 to n do read (a[i,j]);
writeln('vivedite massiv');
for i:=1 to m do begin
for j:=1 to n do write(a[i,j]:6:2);
writeln; end;
amin:=a[1,1]; imin:=1;jmin:=1;
amax:=a[1,1]; imax:=1;jmax:=1;
for i:=1 to m do for j:=1 to n do
if amin>a[i,j] then begin
amin:=a[i,j]; imin:=i;jmin:=j; end;
for i:=1 to m do for j:=1 to n do
if amax<a[i,j] then begin
amax:=a[i,j]; imax:=i;jmax:=j; end;
a[imin,jmin]:=amax;
a[imax,jmax]:=amin;
writeln('vivedite massiv');
for i:=1 to m do begin
for j:=1 to n do write(a[i,j]:6:2);
writeln; end;
End.