СЛОВАРЬ ОСНОВНЫХ ПОНЯТИЙ


Новые понятия

Новое понятие Определение
Двумерный массив (матрица) Представляет собой таблицу, заполненную элементами с двумя индексами. Первый индекс указывает номер строки, второй индекс – номер столбца, на пересечении которых находится элемент
Вложенные циклы Циклы, которые имеют внешний и внутренний циклы
Квадратная матрица Матрица называется квадратной, если количество строк соответствует количеству столбцов

Понятия для повторения

Понятие для повторения Определение
Массив данных Совокупность однотипных данных, имеющих общее имя и разные порядковые номера
Индекс (порядковый номер) Указывает место (положение) элемента в массиве
Сложные циклы Циклы, в теле которых имеются разветвления и другие встроенные в них циклы

ОСНОВНОЙ ТЕКСТ

Лекция 1

Программирование алгоритмов

С использованием двумерных массивов данных (матриц)

 

План лекции:

1. Составление алгоритмов с использованием двумерных массивов данных (матриц) и вложенных циклов.

2. Программирование алгоритмов с использованием двумерных массивов данных (матриц).

3. Квадратные матрицы.

 

В двумерном массиве (матрице) положение каждого элемента определяется двумя индексами, разделенными запятой, например: A[i,j], B[3,7], C[k,l].

Первый из индексов всегда обозначает номер строки, а второй - номер столбца матрицы, на пересечении которых находится данный элемент.

Все элементы матриц, встречающихся в программе, должны быть объявлены в разделе VAR, например:

VAR

I, J: INTEGER;

A: ARRAY [1..10, 1..15] OF INTEGER;

X: ARRAY [1..8, 1..3] OF REAL;.

Ввод и вывод элементов матриц отличается более сложной структурой, так как требует последовательного изменения двух переменных циклов: номера строки и номера столбца. Для организации ввода-вывода матриц используют два вложенных друг в друга цикла FOR, какой из них будет внешним, а какой внутренним (вложенным) – зависит от условия решаемой задачи.

Пусть задана матрица а(3,4), где а[i,j] – элементы матрицы, стоящие на пересечении строки с номером i и столбца с номером j.

а1,1 а1,2 а1,3 а1,4

а2,1 а2,2 а2,3 а2,4

а3,1 а3,2 а3,3 а3,4

Ввод элементов матрицы по строкам:

Рисунок 1 – Ввод элементов матрицы по строкам PROGRAM VVOD; VAR I,J: INTEGER; A: ARRAY [1..3,1..4]OF NTEGER; BEGIN FOR I:= 1 TO 3 DO FOR J:= 1 TO 4 DO READLN (A[I,J] );  

 

Такие циклы называются вложенными. Причем в данном случае цикл по переменной i – называется внешним, цикл по j – внутренним. Пока переменная i изменяется на 1 шаг, переменная j проходит все значения от начального до конечного.

Ввод элементов матрицы по столбцам:

 

  Рисунок 2 – Ввод элементов матрицы по столбцам   PROGRAM VVOD; VAR I,J: INTEGER; A: ARRAY [1..3,1..4] OF NTEGER; BEGIN FOR J:= 1 TO 4 DO FOR I:= 1 TO 3 DO READLN(A[I,J]);  

 

В этом случае внешним является цикл по переменной j, а внутренним – по переменной i.

Пример 1 Задана матрица из семи строк и пяти столбцов. Найти среднее арифметическое отрицательных элементов матрицы a(7,5):

 

 

Рисунок 3 – Схема алгоритма к решению примера 1

 

Программа на языке Turbo-Pascal к примеру 1.

PROGRAM PRIM1;

VAR

I,J,K: INTEGER;

SR,S: REAL;

A: ARRAY [1..7,1..5] OF REAL;

BEGIN

FOR J:= 1 TO 7 DO

FOR I:= 1 TO 5 DO READLN(A[I,J]);

K:=0;

S:=0;

FOR I:= 1 TO 7 DO

FOR J:= 1 TO 5 DO IF A[I,J]<0 THEN BEGIN

S:= S+A[I,J];

K:= K+1;

END;

SR: = S/K;

WRITELN (‘среднее арифметическое’, SR:10:3);

END.

Квадратные матрицы

Матрица называется квадратной, если количество строк соответствует количеству столбцов. Элементы, стоящие на главной диагонали матрицы, имеют одинаковые номера строки и столбца.

Пример 2 Задана квадратная матрица a (5,5). Найти сумму элементов матрицы, стоящих на главной диагонали.

а1,1 а1,2 а1,3 а1,4 а1,5

а2,1 а2,2 а2,3 а2,4 а2,5

а3,1 а3,2 а3,3 а3,4 а3,5

а4,1 а4,2 а4,3 а4,4 а4,5

а5,1 а5,2 а5,3 а5,4 а5,5.

 

Рисунок 4 – Схема алгоритма к решению примера 2

 

Программа на языке Turbo-Pascal к примеру 2.

PROGRAM PRIM2;

VAR

I,J: INTEGER;

S: REAL;

A: ARRAY [1..5,1..5] OF REAL;

BEGIN

FOR J:= 1 TO 5 DO

FOR I:= 1 TO 5 DO READLN(A[I,J]);

S:=0;

FOR I:= 1 TO 5 DO

FOR J:= 1 TO 5 DO IF I=J THEN S:=S+A[I,J];

WRITELN (‘СУММА’, S:10:3);

END.

Заметим, что у всех элементов, стоящих над главной диагональю, i < j (верхний треугольник), под главной диагональю i > j (нижний треугольник).

 

 

Рисунок 5 –Соотношение номера строкиiи номера столбцаj
в квадратнойматрице

 

Вопросы для самоконтроля

1. Какие циклы называются вложенными?

2. Какие массивы называются двумерными (матрицами)?

3. Ввод элементов матрицы по столбцам.

4. Ввод элементов матрицы по строкам.

5. Вывод элементов матрицы по строкам и столбцам.

6. Нахождение максимального элемента матрицы (номер строки и номер столбца, на пересечении которых он находится).

7. Что означают индексы iи j в обозначении элемента матрицы a[i,j]?

8. Пояснить понятия «главная диагональ», «верхний и нижний треугольники» в квадратной матрице.

 




Дата добавления: 2022-02-05; просмотров: 201;


Поиск по сайту:

Воспользовавшись поиском можно найти нужную информацию на сайте.

Поделитесь с друзьями:

Считаете данную информацию полезной, тогда расскажите друзьям в соц. сетях.
Poznayka.org - Познайка.Орг - 2016-2024 год. Материал предоставляется для ознакомительных и учебных целей.
Генерация страницы за: 0.012 сек.