Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции сем. 1.doc
Скачиваний:
9
Добавлен:
13.11.2019
Размер:
2.03 Mб
Скачать

Массивы

Массив - это поименованное упорядоченное множество, образованное из фиксированного числа элементов данных одного и того же типа.

Элементы данных в массиве упорядочены с помощью индексов (одного или нескольких). В качестве индексов используются константы и переменные порядкового типа. Чаще всего константы и переменные, принимающие целые положительные значения.

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

Для идентификации отдельного элемента массива необходимо

указать:

  • имя (идентификатор) массива,

  • один или несколько индексов.

В Delphi индексы указываются вслед за именем массива в квадратных скобках и разделяются запятой.

Пример: B[3],

MAS [i , j].

Массив называют одномерным, если для идентификации отдельного элемента необходимо указать один индекс, двумерным, если два индекса и т. д.

Алгоритмы, манипулирующие данными, представленными массивами, имеют циклическую структуру.

Записи

Запись - это поименованное множество, образованное из фиксированного числа компонент различного типа.

Компоненты записи имеют имена и называются полями.

Доступ к полям записи в языке Паскаль осуществляется с помощью составного имени. Составное имя включает в себя имя переменной типа запись, точку и имя поля.

Пример 2 X. Ind ; .

X - это имя переменной типа запись b содержащей

несколько полей,

Ind - это имя поля.

Технология структурного программирования

Структурное программирование - это принципы разработки программ в соответствии с набором жестких правил.

Разработка программ включает в себя три этапа:

  • разработку алгоритма,

  • написание программы (кодирование),

  • отладку. Основные достоинства структурного программирования:

  • исключает бессистемность в работе программиста,

  • улучшает читабельность программы,

  • повышает производительность труда программиста,

  • облегчает процесс отладки,

  • облегчает сопровождение программного продукта.

Основная идея структурного программирования заключается в том, чтобы логически связанные части программы располагать в одном месте.

Основные принципы структурного программирования Основными принципами структурного программирования являются:

  • нисходящая разработка алгоритма или постепенная детализация

  • использование трех базовых структур (следование, ветвление, цикл),

  • сквозной структурный контроль.

Нисходящая разработка алгоритма

Нисходящая разработка алгоритма заключается в разбиении задачи на подзадачи до тех пор, пока не будет достигнута такая детализация, при которой очередная подзадача будет представлена в виде последовательности действий присваивания, выбора, ввода/вывода.

Задача. Имеется матрица размером М х N. Определить максимальный элемент среди минимальных элементов каждого столбца матрицы и номер столбца, в котором он находится.

Исходные данные:

  • матрица с именем В,

  • ее размеры: М - количество строк и N - количество столбцов.

Выходные данные

  • К - номер столбца максимального элемента,

  • Мах - максимальный элемент среди минимальных каждого столбца матрицы.

На первом уровне детализации (см. рис. 5) в этой задаче можно выделить следующие подзадачи:

  • ввод матрицы (VV_MAS );

  • определение минимального элемента в каждом столбце матрицы; (QPR_MIN);

  • определение максимального среди минимальных каждого столбца и номера столбца, в котором он находится (OPR_MAX).

Далее необходимо детализировать каждую подзадачу по отдельности.

Схемы алгоритмов подзадач VV_MAS, OPR_MIN, OPR_MAX приведены на рис.6., рис.7., рис.8 соответственно.

Рис. 5. Схема алгоритма первого уровня детализации.

Рис.6. Схема алгоритма ввода матрицы.

Рис.7. Схема алгоритма определения минимального элемента в каждом столбце матрицы.

Рис.8. Схема алгоритма определения максимального элемента

одномерного массива и его индекса