
DELPHI 7
.pdf
vk.com/club152685050 | vk.com/id446425943
Передача массивов в подпрограммы
- массив с неопределенными границами
Procedure p8 (x: array of real);
Var y: array [1..25] of real;
P8(y);
SizeOf() – определение числа элементов в массиве High() – определение верхней границы массива
(равная SizeOf()-1)
35

vk.com/club152685050 | vk.com/id446425943
Параметры - результаты
Type TBigArray = array [1..100] of string [50];
Var A: TBigArray;
Procedure p10 (Out X: TBigArray);
P10(A);
Данные используются только для записи.
36

vk.com/club152685050 | vk.com/id446425943
Схема структуры блоков некоторой программы
A–основная программа
B–
подпрограмма
C–
подпрограмма
D–
подпрограмма
E–
подпрограмма
F–
подпрограмма
37

vk.com/club152685050 | vk.com/id446425943
Область видимости (область действия объектов)
Любую подпрограмму можно описать локально в разделе описаний другой подпрограммы.
Вложенные процедуры и функции могут быть вызваны только в теле подпрограммы, в которой они были описаны.
Допускается произвольная иерархия вложенности подпрограмм.
38

vk.com/club152685050 | vk.com/id446425943
Локальные и глобальные объекты
Все константы, переменные, типы, функции и процедуры, описанные в подпрограмме, являются локальными и доступны только внутри этой подпрограммы или в ее подпрограммах.
Все объекты, описанные в вызывающей подпрограмме до описания дочерней подпрограммы, доступны в дочерней подпрограмме. Для нее эти объекты являются
глобальными.
Поэтому обмен данными между программой и вызываемой ею процедурой может производиться и через глобальные переменные.
39

vk.com/club152685050 | vk.com/id446425943
Для доступа к объектам, описанным в различных блоках, требуется соблюдать следующие правила:
1.Имена объектов, описанные в некотором блоке считаются известными в пределах данного блока, включая и все вложенные блоки.
2.Имена объектов должны быть уникальны в пределах данного блока и могут совпадать с именами объектов из других блоков.
3.Локальные имена могут совпадать с глобальными. В этом случае локальные имена как бы «экранируют » глобальные, и тем самым делают их недоступными (т.е. это разные переменные, хотя и с одинаковыми именами).
40

vk.com/club152685050 | vk.com/id446425943
Простые методы сортировки
-Пузырьковая сортировка
-Выборочная сортировка
41

vk.com/club152685050 | vk.com/id446425943
Пузырьковая сортировка
Суть метода:
Попарное сопоставление элементов
массива и их перестановка в случае
несоответствия критерию (условию)
сортировки.
42

vk.com/club152685050 | vk.com/id446425943
Пузырьковая сортировка
Пример: Отсортировать в порядке убывания
(7 |
2 |
1 |
5 |
3 |
4 |
0 |
8 |
9 |
4) |
(7 |
2 |
5 |
1 |
3 |
4 |
0 |
8 |
9 |
4) |
(7 |
2 |
5 |
3 |
1 |
4 |
0 |
8 |
9 |
4) |
(7 |
2 |
5 |
3 |
4 |
1 |
0 |
8 |
9 |
4) |
(7 |
2 |
5 |
3 |
4 |
1 |
8 |
0 |
9 |
4) |
(7 2 5 3 4 1 8 9 0 4) (7 2 5 3 4 1 8 9 4 0)
43

vk.com/club152685050Пузырьковая| vk.com/id446425943 сортировка
Алгоритм решения задачи
44