Программа вычисления суммы элементов двумерного массива const m = 5; n = 4

Вид материалаПрограмма
Подобный материал:
Программа вычисления суммы элементов двумерного массива

const m = 5; n = 4;

var

a: array[1..m,1..n] of integer;

begin

ввод массива

writeln ('------------');

for j := 1 to n do begin

for i := 1 to m do begin

sum := sum + a[i,j]

end;

end;

write (' | sum = ', sum);

end.


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

Двумерный массив – структура данных, хранящая прямоугольную матрицу – таблицу из нескольких строк с равным числом элементов в каждой.. Двумерный массив определяется именем, числом строк и столбцов и обозначается: А(N,M), где А – имя массива; N – число строк, M – число столбцов. Если M= N, то матрица называется квадратной. В матрице каждый элемент определяется номером строки и номером столбца, на пересечении которых он расположен, и в соответствии с этим обозначается именем массива с двумя индексами: первый – номер строки, второй – номер столбца. Пример: К[4,3], Z[3,2], R[5,5].

Если обозначить: i – номер строки, j – номер столбца, то элемент матрицы обозначается A[i,j].

Если матрица квадратная:
  • Для элементов, принадлежащих главной диагонали i=j.
  • Для элементов, принадлежащих вспомогательной диагонали i+j=n+1, где n – размерность квадратной матрицы.
  • Для элементов, лежащих выше главной диагонали I < j.
  • Для элементов, лежащих ниже главной диагонали I > j.


Пример описания двумерного массива А(2,3):
6 4 -3
2 -5 6
Var A: array[1..2, 1..3] of integer;

3.8.1 Типовые алгоритмы обработки двумерных массивов.
  • Поэлементный ввод массива:
    for i:=1 to N do
    begin for j:=1 to M do
    readln (A[i,j]);
    end;
  • Вывод массива в виде таблицы:
    for i:=1 to N do
    begin for j:=1 to M do
    write (A[i,j]:3,’ ‘);
    writeln;
    end;
  • Нахождение суммы значений элементов массива:
    S:=0;
    for i:=1 to N do
    begin for j:=1 to M do
    S:= S + A[i,j];
    end;



Задания:

1. Дан двумерный массив. Поменять местами:
а) элементы, расположенные в верхнем правом и
нижнем левом углах;
б) элементы, расположенные в нижнем правом и
верхнем левом углах;

2. Составить программу:
а) расчета суммы двух любых элементов
двумерного массива;
б) расчета суммы всех элементов двумерного
массива;
в) расчета суммы отрицательных элементов двумерного
массива;
г) расчета среднего арифметического всех элементов
двумерного массива;
д) расчета количества четных значений элементов массива.
  1. Дан двумерный массив. Поменяйте знаки значений элементов матрицы на противоположные. Выведите на экран новую матрицу в виде таблицы.
  2. Дан двумерный массив К(3,3). Найдите сумму значений её элементов, стоящих на главной диагонали матрицы.
    Матрицу выведите на экран в виде таблицы.
  3. Дан двумерный массив R(4,3). Увеличьте значение каждого элемента в 5 раз, а затем найдите сумму значений элементов первой строки. Выведите на экран новую матрицу в виде таблицы.
  4. Дан двумерный массив D(4,3). Найдите во втором столбце количество элементов, значения которых кратны 3.
  5. Дан двумерный массив А(3,3). Поменяйте местами второй и третий столбцы.
  6. Дан двумерный массив В(3,3).
    а) найдите максимальный элемент матрицы;
    б) поменяйте местами первый и максимальный элементы матрицы.
  7. Координаты точек на плоскости заданы в виде двумерного массива С(4,2), где первая строка – координата Х, вторая – Y. Определите, какая из точек расположена ближе к началу координат.

10. В поезде 18 вагонов, в каждом из которых 36 мест. Информация о проданных на поезд билетах хранится в двумерном массиве, номера строк которых соответствуют номерам вагонов, а номера столбцов – номерам мест. Если билет на то или иное место продан, то соответствующий элемент массива имеет значение 1, а противном случае – 0. составить программу, определяющую, имеются ли свободные места в том или ином вагоне.

11. Расположить столбцы матрицы D(N,M) в порядке возрастания элементов k-ой строки (1 ≤ k ≤ N).