Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Lab1_TP.doc
Скачиваний:
5
Добавлен:
08.12.2018
Размер:
209.92 Кб
Скачать

1.2.4. Местоположение подпрограмм в тексте и вне текста программы.

1. Расположение подпрограммы внутри текста программы.

Подпрограммы могут располагаться в виде отдельного раздела внутри описательной части текста программы.

2. Размещение подпрограммы в файле.

Размещение подпрограммы возможно в отдельном текстовом файле, который может иметь расширение PAS или INC. В этом случае текст подпрограммы включается в текст программы директивой компилятора {$I имя файла}.

3. Размещение подпрограммы в библиотеке.

Подпрограмма может находиться в библиотеке в виде машинных кодов. Существует возможность для пользователя создавать собственные библиотеки. Тексты библиотек представляют собой программные единицы, называемые модулями. Модули после трансляции располагаются в файлах с расширением TPU.

2. Массив как статическая структура данных

Массив – это упорядоченная последовательность данных одного и того же типа, имеющая общее имя; доступ к элементам массива организуется при помощи индексов, которые могут быть любого порядкового типа. Индексы можно представлять себе как порядковые номера элементов в последовательности.

Массив как статическая структура обладает следующими свойствами:

  • она имеет описание, и обращение к ней возможно по имени;

  • память под нее выделяется на этапе компиляции;

  • объем памяти фиксирован и не меняется в процессе выполнения программы.

Массивы могут быть одномерными, двумерными и многомерными.

Одномерный массив – это массив, для получения доступа к элементам которого достаточно одной индексной переменной. Математическим представлением одномерного массива является вектор.

2.1. Линейный поиск в массивах данных.

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

2.2. Способы сортировки в массивах данных.

Сортировкой информационной структуры (массива, списка, файла) называется преобразование исходной структуры путем перестановки ее элементов для достижения упорядоченности по заданному признаку порядка.

2.2.1. Признаки порядка.

Одномерный массив А (n) называется упорядоченным

по возрастанию, если для любого i = 2, 3, …, n ai > ai-1

по неубыванию, если для любого i = 2, 3, …, n ai ai-1

по убыванию, если для любого i = 2, 3, …, n ai < ai-1

по невозрастанию, если для любого i = 2, 3, …, n ai ai-1

2.2.2. Пузырьковая сортировка (попарные перестановки).

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

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

2.2.3. Сортировка выбором.

При сортировке выбором каждый элемент меняется местами с минимальным или максимальным, в зависимости от признака порядка, среди следующих за ним, то есть используется метод:

ai = min(max){aj , j=i, i+1, …, n}, i=1, …, n-1

где n – размерность массива

2.2.4. Сортировка простыми вставками.

Чтобы упорядочить массив A(n) сортировкой простыми вставками используется следующий подход: для i = 2, 3, …, n каждый элемент ai переставляется в нужное место среди упорядоченных ранее элементов a1, a2, …, ai-1, раздвигая их за счет удаления ai.

2.3.Некоторые рекомендации при работе с массивом.

  1. При объявлении массивов размерность задается константами, поэтому следует объявлять наиболее разумные размерности, а затем вводить переменные размерности и циклы организовывать уже с их использованием.

  2. При обработке массивов рекомендуется использовать вывод на экран всего введенного массива в наглядной форме для визуального контроля правильности ввода и демонстрации соответствия результатов введенным данным.

  3. Следует максимально ограничивать выделение дополнительных (рабочих) массивов той же размерности, что и обрабатываемые, а также искать эффективные по трудоемкости алгоритмы.

  4. В задачах на анализ или поиск в заданном массиве не следует искажать массив в своих целях.

  5. Если требуется найти фрагмент массива, обладающий каким-либо свойством (цепочку элементов), то следует в качестве результата показать не только сам фрагмент, но и его местоположение (индексы первого и последнего элементов фрагмента) в массиве.

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

Понятие массив используется на уровне постановки задачи: за­дается или должно быть сформировано множество однотипных данных. При описании интерфейса как способа взаимодействия с будущей подпрограммой необходимо знать только перечень входных и выходных данных, их тип и способ размещения – входную и выходную формы.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]