|
|||
Лабораторная работа № 13. Двумерные массивы. Типовые алгоритмы обработки двумерных массивов. Заполнение двумерного массива случайными числами. Вывода на экран элементов двумерного массива. Суммирование элементов главной диагоналиСтр 1 из 3Следующая ⇒ Лабораторная работа № 13 Двумерные массивы Цель работы: освоение приемов объявления, обращения и использования двумерных массивов при решении задач. Двумерные массивы являются частным случаем многомерных массивов и обладают теми же свойствами, что и одномерные массивы. От одномерных массивов они отличаются только тем, что указывается два параметра (индекса) при обращении к элементу массива. Например, А[i, j], где i – номер строки, j- номер столбца. К двумерным массивам применимы типовые алгоритма обработки одномерных массивов. Дополнительные типовые алгоритма обработки двумерных массивов: § суммирование элементов главной диагонали; § суммирование элементов побочной диагонали; § суммирование элементов строк (столбцов); § поиск минимального (максимального) элемента каждой строки (столбца). Один из возможных вариантов объявления двумерного массива в программе: {объявляем две константы – максимально возможное количество строк и столбцов} const MaxN=10; MaxM=8; {объявляем тип данных –двумерный массив целых чисел} type TMyArray=Array[1..MaxN, 1..MaxM] of Integer; var a : TMyArray; Типовые алгоритмы обработки двумерных массивов 1. Заполнение двумерного массива случайными числами Реализация: for i:=1 to n do for j:=1 to m do a[i, j]:=random(20)-10; 2. Вывода на экран элементов двумерного массива Реализация: for i:=1 to n do begin for j:=1 to m do write(a[i, j], ‘ ‘); writeln; end; 3. Суммирование элементов главной диагонали Алгоритм имеет смысл только для массива, в котором количество столбцов равно количеству строк. К элементам главной диагонали относятся следующие элементы: а11, а22, а33,….аnn. Следовательно, для суммирования элементов необходимо организовать цикл, параметр которого будет являться индексом и для строк, и для столбцов. Реализация: s:=0; for i:=1 to n do s:=s+a[i, i]; writeln(‘s=’, s);
|
|||
|