Двумерные массивы. Этот массив можно представить в виде таблицы, в которой есть строки и столбцы. A[1..5,1..4] - этот массив как таблица с 5-тью строками и 4-мя столбцами
A[3,2]=43 A[2,4]=4 Пример описание двумерного массива: Var a : array[1..10,1..15] of integer; b : array[0..20,1..100] of real; Элементы массива: a[4,6] 4 - это строка, 6 - столбец b[1,5], a[i,j]
Первый индекс указывает номер строки, второй - номер столбца.
Пример двумерного массива: в кинотеатре стоят ряды мест. Если место занято, то элемент массива равен единице, если пусто, то нулю.
Пример 1. Ввод значений элементов с клавиатуры (если знаем размерность массива). При переборе внешний цикл перебирает по строкам, внутренний - по столбцам. for i:=1 to 10 do for j:=1 to 15 do read(a[i,j]);
Пример 2. Выведем значения элементов массива размером NxM в виде таблицы.
for i:=1 to n do begin for j:=1 to m do write(a[i,j]:4); writeln; end; Пример 3. Ввод значений элементов с клавиатуры. Задаем с клавиатуры размерность массива a[1..n,1..m]. N - количество строк, M - количество столбцов.
read(n,m); for i:=1 to n do for j:=1 to m do read(a[i,j]); Пример 4. Определим количество положительных элементов массива.
k:=0; for i:=1 to n do // просматриваем по строкам for j:=1 to m do // просматриваем элементы в столбцах if a[i,j]>0 then k:=k+1;
Пример 5. Определим сумму элементов массива.
s:=0; for i:=1 to n do for j:=1 to m do s:=s+a[i,j]; Пример 6. Выведем на экран суммы строк элементов массива.
for i:=1 to n do // просматриваем строки begin s:=0; // определяем сумму элементов в строке for j:=1 to m do s:=s+a[i,j]; writeln(s); end;
Пример 7. Отсортируем по возрастанию элементы в строках массива.
for i:=1 to n do for j:=1 to m-1 do begin min:=a[i,j]; k:=j; for t:=j+1 to m do if a[i,t]<min then begin min:=a[i,t]; k:=t; end; a[i,k]:=a[i,j]; a[i,j]:=min; end; |