Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Числ. методы (л.р.).doc
Скачиваний:
1
Добавлен:
01.07.2025
Размер:
1.12 Mб
Скачать

Контрольные вопросы

1. Объясните принцип работы с файлами в Borland Pascal.

2. Сущность метода выбора сортировки одномерного массива.

3. Сущность метода вставки сортировки одномерного массива.

4. Сущность метода пузырька сортировки одномерного массива.

5. Какие Вы знаете сложные методы сортировки?

6. Охарактеризуйте интерфейс процедуры GETTIME.

Лабораторная работа № 10 Тема: “Внешняя сортировка“.

Цель работы: Освоение методов внешней сортировки. Освоение средств BORLAND PASCAL для работы с файлами.

Задание на работу:

  1. Составить блок-схему и программу на языке Borland Pascal, которая:

  • формирует на магнитном диске файл целых, вещественных, строковых переменных или текстовый файл (по указанию преподавателя ). Количество элементов файла - не менее 3000;

  • выдает на экран первые 20 элементов файла;

  • сортирует элементы файла двумя способами:

  1. сортировка первых пятидесяти элементов файла двумя любыми методами внутренней сортировки, не используя память (используя прямой доступ к записи (элементу) файла);

  2. сортировкой со слиянием. Использовать динамическую или статическую память размером, достаточным для хранения 500 элементов.

  1. Программу оформить в виде меню, примерные опции которого следующие: формирование файла, индикация содержимого файла (поэкранно), сортировка I,II методом, вывод отсортированного массива на экран, вывод отсортированного массива в файл.

  1. Во время работы по сортировке необходимо индицировать на экране время, затраченное на каждый из методов (GETTIME). Предпочтительней использование динамических переменных.

  1. Программу оформить в соответствии с требованиями: комментарии (заглавный и строчные), модульный принцип (все - в виде процедур и функций). Пользование модулями - без ограничений.

Контрольные вопросы.

  1. Что такое типизированный файл?

  2. Объясните принципы работы с типизированными файлами в Borland Pascal.

  3. Что такое внешняя сортировка?

  4. В каких задачах (техника, экономика, финансы, геодезия, науки о природе и другие науки) необходимо применять внешнюю сортировку?

  5. В чем особенности внешней сортировки по сравнению с внутренней?

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

  7. Объясните суть метода сортировки со слиянием.

  8. Что такое динамические переменные?

  9. Какие функции и процедуры используются для работы с динамическими переменными?

Лабораторная работа № 11. Тема:“Поиск и выбор“.

Цель работы: освоение методов поиска.

Краткое теоретическое введение Алгоритмы последовательного поиска

«Начни с начала и продвигайся, пока не найдёшь нужный ключ; тогда остановись». Такая последовательная процедура является очевидным способом поиска; удобно начать наши рассмотрения с неё, так как на ней основаны многие более сложные алгоритмы. Несмотря на свою простоту, последовательный поиск содержит ряд очень интересных идей.

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

Алгоритм S. (Последовательный поиск.) Имеется таблица записей R1,R2,...,Rn, снабженных соответственно ключами K1,K2,...,Kn. Алгоритм предназначен для поиска записи с данным ключом K. Предполагается, что N≥ 1.

S1. Установить i ≤1.

S2. Если K=Ki, алгоритм оканчивается удачно.

S3. Если K<>Ki, увеличить i на 1.

S4. Если i<=N, то вернутся к шагу S2. В противном случае алгоритм оканчивается неудачно.

Алгоритм Q. (Быстрый последовательный поиск.) В отличие от алгоритма здесь ещё предполагается, что в конце файла стоит фиктивная Rn+1 запись.

Q1. Установить i <=1, Kn+1<=K.

Q2. Если K=Ki, то перейти на Q4.

Q3. Увеличить i на 1 и вернутся к шагу Q2.

Q4. Если i<=N, алгоритм оканчивается удачно; в противном случае - неудачно(i=N+1).

Алгоритм T. (Последовательный поиск в упорядоченной таблице.)

Имеется таблица записей R1,R2,...,Rn, причём ключи удовлетворяют неравенствам K1<K2<...<Kn. Алгоритм предназначен для поиска записи с данным ключом K. В целях удобства и увеличения скорости работы предполагается, что в конце таблицы расположена фиктивная запись Rn+1, ключ которой Kn+1= >K.

T1. Установить i <=1.

T2. Если K<=Ki, то перейти на T4.

T3. Увеличить i на 1 и вернутся к шагу T2.

T4. Если K=Ki, то алгоритм оканчивается удачно, в противном случае - неудачно, нужной записи в таблице нет.