Примеры задач
Двумерные массивы
Даны два двумерных массива одинаковой размерности. Создать третий массив той же размерности, каждый элемент которого равен сумме соответствующих элементов первых двух массивов. Методика решения
Пример: Пусть даны:
и
. Тогда получим массив:
.
Используемые переменные:
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.