Примеры задач

Двумерные массивы


Даны два двумерных массива одинаковой размерности. Создать третий массив той же размерности, каждый элемент которого равен сумме соответствующих элементов первых двух массивов.

Методика решения

Пример:
Пусть даны: и . Тогда получим массив:.

Используемые переменные:
A, B, C - двумерные массивы одинаковой размерности,
D,k – размерность массивов,
I,j – индексы элементов массивов.

В данной программе целесообразно использовать процедуры формирования и вывода на экран массива.
Для начала формируем массивы (в цикле считываем с экрана их элементы) и выводим их на экран.
Затем, по условию, необходимо сформировать третий массив той же размерности, каждый элемент которого равен сумме соответствующих элементов первых двух массивов.
Перебираем в цикле элементы двух первых массивов, складываем элемент первого массива с элементом второго и помещаем в третий.
Выводим полученный массив на экран.

Листинг программы

Program ex3_7;
uses crt;
Const n=60;
Type mas=Array[1..n,1..n] Of Integer;
Var i,j,d,k:Integer;
a,b,c:mas;
{Процедура формирования массива}
Procedure Init(Var m:mas);
Begin
For i:=1 To d Do
For j:=1 To k Do
m[i,j]:=-25+Random(51);
End;
{Процедура вывода массива на экран}
Procedure Print(m:mas);
Begin
For i:=1 To d Do
Begin
For j:=1 To k Do
Write(m[i,j]:5);
Writeln;
End;
End;
{Процедура формирования массива C по правилу}
Procedure Summa( x,y:mas; Var z:mas);
Var i,j:Integer;
Begin
For i:=1 To d Do
For j:=1 To k Do
z[i,j]:=x[i,j]+y[i,j];
End;
Begin ClrScr;
Writeln('Введите количество строк и столбцов массивов');
Readln(d,k);
ClrScr;
Writeln('Сгенерированные массивы A и B');
Randomize;
{Вызов процедур формирования и вывода на экран массива}
Init(a);
Init(b);Writeln('Массив A:');
Print(a);Writeln('Массив B:');
Print(b);Writeln;
{Вызов процедуры формирования массива C}
Summa(a,b,c);
Writeln('Полученный массив C');
Print(c);
Readkey;
End.

Запустить программу






Назад