- •Краткое знакомство.
- •Функциональные клавиши Турбо Паскаль.
- •Типы переменных
- •Первая программа.
- •Стандартные математические функции
- •Правила записи арифметических выражений.
- •Правила записи стандартных функций.
- •Алгоритмы работы с массивами
- •8 Класс.
- •6) Упорядочение массива
- •Работа с элементами
- •1. Заполнение двумерного массива по строке.
- •2. Заполнение двумерного массива по столбцу :
- •3. Печать содержимого на экран :
- •4. Вычисление суммы элементов каждой строки, столбца.
- •5.Вычисление суммы элементов всего двумерного массива.
- •6. Задача поиска максимального (минимального) элемента и его индексов.
- •7. Алгоритм поиска минимального элемента и его индексов для всего массива.
- •8. Квадратные матрицы.
- •Примеры решения задач
- •Заполнить двумерный массив размером 7х7 следующим образом :
- •Задачи повышенной сложности
- •9 Класс.
- •Функции
- •Рассчитать значение х, определив и использовав функцию :
- •Даны вещественные числа a, b, c, d, e, f, g.
- •Преобразование
- •10 Класс
- •11 Класс.
Работа с элементами
В математике часто используют многомерные массивы (двумерные, трехмерные и т.д.). Мы рассмотрим двумерные массивы, иначе называемые матрицами.
Например : 5 4 3 6
2 8 1 7
4 3 9 5
Данная матрица имеет размер 3 на 4, т.е. она состоит из трех строк и четырех столбцов. Если всю матрицу обозначить одним именем, например А, то каждый элемент матрицы будет иметь два индекса - А[i,j]
Здесь первый индекс i обозначает номер строки (i=1,2,3), второй индекс j - номер столбца (j=1,2,3,4).
Такую матрицу можно описать следующим образом :
1 способ :С использованием типа
Type T=array [1..3,1..4] of integer;
Var A: T;
2 способ :
Var A: array [1..3,1..4] of integer;
При решении задач с использованием двумерных массивов во всех случаях (кроме некоторых частных) организуются вложенный циклы.
Перемещение по строке :
for i:=1 to m do {внешний цикл, изменяется номер строки}
.......
for j:=1 to n do {внутренний цикл, изменяется номер столбца}
..........
Перемещение по столбцу :
for j:=1 to n do {внешний цикл, изменяется номер столбца}
.......
for i:=1 to m do {внутренний цикл, изменяется номер строки}
Перечислим базовые алгоритмы и рассмотрим каждый из них.
1. Заполнение двумерного массива :
а) по строке; б) по столбцу
2. Печать в виде таблицы.
3. Вычисление суммы элементов каждой строки и каждого столбца.
4. Поиск максимального (минимального) элементов каждой строки (столбца) и их индексов.
5. Сумма элементов массива.
6. Максимальный (минимальный) элемент массива.
Ввод (заполнение) элементов двумерного массива (матрицы)
For i:=1 to n do
For j:=1 to m do
Readln(A[i,j]);
1. Заполнение двумерного массива по строке.
Массив содержит 3 строки и 4 столбца, т.е. 3х4=12 элементов
а11 |
а12 |
а13 |
а14 |
а21 |
. |
. |
. |
. |
. |
. |
. |
For j:=1 to 4 do
a[i,j]:=random(100);
2. Заполнение двумерного массива по столбцу :
а11 |
а12 |
. |
. |
а21 |
. |
. |
. |
а31 |
. |
. |
. |
For i:=1 to 3 do
a[i,j]:=random(100);
3. Печать содержимого на экран :
For i:=1 to n do
begin
For j:=1 to m do
Write (A[i,j]); {Вывод элементов одной
строки матрицы}
Writeln; { переход на следующую строку экрана}
end;
где
А - имя массива;
i - индекс строки;
j - индекс столбца;
n - количество элементов в строке;
m - количество элементов в столбце.