Описание двумерных массивов.
Двумерный массив представляет собой матрицу. Индекс двумерного массива состоит из номера строки и номера столбца, на пересечении которых находится элемент. К элементу двумерного массива обращаются, указывая через запятую номер строки и номер столбца, например, a[3,3], a[1,2]. Объявление двумерного массива аналогично объявлению одномерных массивов: Const n=4; m=3; Type mas= array[1..m,1..n] of integer; Var a,b:mas; Заполнение двумерного массива. Присвоить элементам двумерного массива значения можно, также как для одномерного: 1) вводя значения с клавиатуры; 2) случайными числами; 3) вычисляя значение по формуле. Примеры заполнения двумерного массив, содержащего 8 строк и 12 столбцов случайными числами: 1) построчно (индекс строк меняется медленнее, чем индекс столбца) for i:=1 to 8 do for j:=1 to 12 do a[i, j]:=random(100); 2) по столбцам (индекс столбца меняется медленнее, чем индекс строки) for j:=1 to 12 do for i:=1 to 8 do a[i, j]:=random(100); Примеры. 1. Найти минимальный по модулю элемент каждой строки матрицы. Program example1; Const m=5; n=8; Var a:array[1..m, 1..n] of real; i,j:integer; jmin:integer;{номер строки с минимальным элементом} begin for i:=1 to m do for j:=1 to n do Read(a[i,j]) for i:=1 to m do begin jmin:=1; for j:=2 to n do if abs([a[i,j]) < abs(a[i, jmin]) then jmin:=j; writeln(’минимальный по модулю элемент в строке ‘,i, ‘ в столбце ‘, j, ‘равен ’ a[i, jmin]:5:1) end end. 2. В двумерном массиве а(5,5) найти среднее арифметическое значение чётных элементов массива. Program example2; Const m=5; n=5; Var a:array[1..m, 1..n] of integer; S, k, i, j: integer; Sr:real;{среднее значение чётных элементов } begin for i:=1 to m do for j:=1 to n do Read(a[i,j]) S:=0; K:=0; for i:=1 to m do begin for j:=2 to n do if a[i, j] mod 2=0 then begin s:=s+a[i, j];{сумма чётных элементов} k:=k+1; {количество чётных элементов} end; if k=0 then writeln(‘чётных элементов в массиве нет’)
else begin sr:=s/k; writeln(‘sr=’,sr:5:2) end; end. Упражнения. 1. В матрице А(8,8) найти сумму элементов главной диагонали. 2. В матрице A(10,12) поменять местами строки с минимальным и максимальным элементами. 3. В матрице Х(8,5) найти среднее арифметическое значение максимальных элементов в каждой строке. 4. В матрице В(10,8) найти минимальный и максимальный элементы в каждой строке и их порядковые номера. 5. В матрице В(9,7) найти минимальный и максимальный элементы в каждом столбце и их порядковые номера. 6. В матрице С(10,12) найти отрицательные элементы и их порядковые номера. Сформировать из этих элементов массив. 7. Найти минимальное и максимальное значение элементов главной диагонали матрицы В(8,8),их порядковые номера. Значения элементов определить по формуле: где: - порядковый номер элемента в столбце и в строке. При делении на 0 элемент массива принять равным 10. 8. В матрице С(8,11) найти отрицательные элементы в каждой строке и их сумму. 9. В матрице В(6,6) найти чётные значения элементов, их порядковые номера, количество и сумму. 10. Транспонировать матрицу Х(6,6). 11. Найти сумму элементов до максимального и минимального значения в матрице А(6,9). 12. В массиве В(3,3) поменять местами столбец, содержащий максимальный элемент, со столбцом, содержащим минимальный элемент. 13. Найти сумму элементов той строки массива А(3,3), в которой расположен максимальный элемент строки. 14. Найти наибольшую сумму из сумм каждой строки массива М(4,4). 15. Сформировать массив из минимальных элементов столбцов матрицы А(4,4). 16. Дан массив А(10) и массив В(3,3). В массиве В заменить нулями те элементы, которые имеют нечетную сумму индексов и превосходят среднее арифметическое значение элементов массива А. 17. Написать программу, которая удаляет из массива В(10,12) элементы, меньше заданной величины и освободившиеся места заполняет нулями.
Строки.
Читайте также: III. Описание лабораторной установки Воспользуйтесь поиском по сайту: ©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...
|