2.2. Пример обработки многомерного массива
Как правило, при обработке многомерных массивов используются вложенные циклы, т.е. цикл по столбцам располагается внутри цикла по строкам.
Дана матрица A(3,4), и вектор B(4), состоящие из целых чисел. Умножить матрицу А на вектор В.
program pr4-2 ;
const m=3; n=4;
var
a : array [l .. m, 1 .. n] of integer; (* описание матрицы *)
b : array [1 .. n] of integer; (* описание вектора *)
c : array [1 .. m] of integer; ( * описание С *)
i, j: integer;
begin
for i:=l to m do (* ввод матрицы *)
begin
writeln ('введите элементы ', i , '-той строки');
for j:=1 to n do read(a[i, j] );
writeln;
end;
writeln ('введите элементы вектора');
for j:=1 to n do (* ввод вектора *)
read (b[ j]);
writeln;
for i:=l to m do
begin
c[i]:=0;
for j:=l to n do c[i] := c[i]+a[i,j]* b[j];
end;
for i:=l to m do (*форматный вывод матрицы *)
begin
for j:=1 to n do write(a[i,j]:4);
writeln;
end;
for j:=l to n do write(b[j]:4); (* вывод массива B *)
writeln ;
for i:=l to m do write(c[i]:4); (* вывод массива С *)
readln;
end.
В программе элементы матрицы вводятся по строкам по одному с подтверждением клавишей Enter. А выводятся в общепринятом виде: каждая строка матрицы с новой строки экрана (цикл i по строкам внешний, а цикл j - внутренний).
3. ВЫПОЛНЕНИЕ РАБОТЫ
Набрать и откомпилировать приведенные выше программы, исправить выявленные ошибки. Ввести элементы массива, убедиться в правильности выполнения программ.
Составить и выполнить программы с применением массивов согласно вариантам заданий .
Варианты задания 1.
Ввести массив А из 10 элементов
Найти наибольший элемент и переставить его с первым элементом. Преобразованный массив вывести.
Найти наименьший элемент и переставить его с последним элементом. Преобразованный массив вывести.
Найти произведение положительных элементов и вывести его на экран.
Найти произведение отрицательных элементов и вывести его на экран.
Найти сумму положительных элементов и вывести ее на экран.
Найти сумму отрицательных элементов и вывести ее на экран.
Найти сумму элементов, больших 3 и меньших 8 и вывести ее на экран.
Найти сумму элементов, меньших по модулю 5 и вывести ее на экран.
Достарыңызбен бөлісу: |