
- •21)Рекурсія. Рекурсивні означення та підпрограми.
- •22)Типи файлів і оголошення файлових змінних
- •23)Процедурні типи
- •24)Відкриття та закриття файлів
- •25)Підпрограма-функція. Стандартні процедури та функції.
- •26)Послідовний запис і зчитування компонентів файла.
- •27)Формальні та фактичні параметри. Параметри-значення, параметри-змінні.
- •Прямий доступ до компонентів файла.
- •29)Поняття про процедуру з параметрами та без параметрів. Локальні та глобальні змінні.
- •30)Буферизація даних. Нетипізовані файли.
- •31)Переривання циклу. Створення циклу на основі вказівки безумовного переходу.
- •32)Поняття про запис. Доступ до компонентів та операції над записам.
- •33)Масив записів. Записи з варіантами.
- •34)Цикл з передумовою та післяумовою. Вкладені цикли.
- •35)Множини та множинний тип даних. Оголошення змінних множинного типу. Зображення множин в оперативній пам'яті.
- •36)Оператори циклів. Цикл з лічильником (з параметром).
- •37)Операції над множинами.
- •38)Оперативний блок. Поліваріантний вибір (Вказівка варіанту). Вказівка безумовного переходу.
- •Поняття про рядок. Функції та процедури обробки рядків.
- •40)Вибір з двох альтернатив (Вказівка розгалуження). Вкладеність конструкцій розгалуження. Логічні операції.
- •41) Загальні відомості про сортування. Сортування методом вибору.
- •42)Вказівки присвоєння, введення та виведення. Форматоване виведення. Арифметичні вирази та стандартні функції.
- •43)Загальні відомості про сортування. Сортування методом вставки.
- •44)Константа. Типізована константа. Змінна. Вирази
- •45)Загальні відомості про сортування. Сортування методом обміну.
- •46)Прості типи даних.
- •47)Загальні відомості про сортування. Швидке сортування.
- •48)Структура та розділи програми на мові Паскаль.
- •49)Загальні відомості про сортування. Сортування методом злиття.
- •50)Походження та розвиток мови Паскаль. Алфавіт та словник мови.
- •51)Класифікація мов програмування. Перетворення програм і система програмування. Мови програмування
- •53)Одновимірні масиви: поняття, його властивості, оголошення, ініціалізація, введення та виведення масиву.
- •54) Відкриті масиви
- •55)Побудова математичної моделі. Основні алгоритмічні структури.
- •Основні властивості масивів, притаманні як одновимірним, так і багатовимірним масивам:
- •Базовими операціями є:
- •Ініціалізація масиву:
- •57) Основні операції обробки одновимірних масивів: вставка та видалення елемента масиву, циклічний зсув елементів масиву.
- •58)Поняття алгоритму, властивості, способи опису.
- •59)Багатовимірні масиви: оголошення, доступ до елементів.
- •Оголошення багатовимірних масивів. Доступ до елементів
- •Можна і так:
- •60) Базові операції обробки двовимірних масивів
25)Підпрограма-функція. Стандартні процедури та функції.
При вызове прдпрограммы-функции работа главной программы на некоторое время приостанавливается и начинает выполняться функция. Главная программа обычно передает функции какое-то конкретное знечение, указанное в главной программе. Этот параметр называется фактическим параметром, или аргументом. Он сопоставляется с некоторым формальным параметром, который является внутренним объектом подпрограммы. На основе заданных величин вычисляется результат, который возвращается в главную программу как значение функции.
Структура подпрограммы-функции Подпрограмма-функция начинается с заголовка, в котором содержится имя функции, имя и тип каждого формального параметра, а также тип результата:
Стандартні процедури та функції.
Процедуры управления работой программы
Процедуры управления работой программы - это процедуры, уп-
равляющие логикой выполнения программы.
--------------------T-------------------------------------------
¦ Процедура ¦ Описание ¦
+-------------------+-------------------------------------------+
¦ Break ¦ Завершает оператор for, while или repeat. ¦
+-------------------+-------------------------------------------+
¦ Continue ¦ Продолжает итерацию оператора for, while,¦
¦ ¦ или repeat. ¦
+-------------------+-------------------------------------------+
¦ Eхit ¦ Позволяет немедленно выйти из текущего мо-¦
¦ ¦ дуля. ¦
+-------------------+-------------------------------------------+
¦ Наlt ¦ Останавливает выполнение программы и возв-¦
¦ ¦ ращает управление операционной системе. ¦
+-------------------+-------------------------------------------+
¦ RunError ¦ Останавливает выполнение программы и гене-¦
¦ ¦ рирует ошибку этапа выполнения. ¦
L-------------------+--------------------------------------------
Функции преобразования
Ниже перечислены функции преобразования.
-------------------T--------------------------------------------
¦ Функция ¦ Описание ¦
+------------------+--------------------------------------------+
¦ Chr ¦ Возвращает символ, заданный целым числом. ¦
+------------------+--------------------------------------------+
¦ High ¦ Возвращает старшее значение в диапазоне ар-¦
¦ ¦ гумента. ¦
+------------------+--------------------------------------------+
¦ Low ¦ Возвращает младшее значение в диапазоне ар-¦
¦ ¦ гумента. ¦
+------------------+--------------------------------------------+
¦ Оrd ¦ Возвращает порядковое число по значению пе-¦
¦ ¦ речислимого типа. ¦
+------------------+--------------------------------------------+
¦ Rоund ¦ Округляет значение вещественного типа до¦
¦ ¦ значения, имеющего длинный целый тип. ¦
+------------------+--------------------------------------------+
¦ Тrunс ¦ Усекает значение вещественного типа до зна-¦
¦ ¦ чения, имеющего длинный целый тип. ¦
L------------------+---------------------------------------------
Арифметические функции
Эти функции полезно использовать для выполнения арифметичес-
ких операций.
Примечание: Значения, возвращаемые процедурами опера-
ций с плавающей запятой модуля System, при компиляции в
режиме числовой обработки (директива {$N+}), имеют не ве-
щественный тип (real), а расширенный (extended).
-------------------T--------------------------------------------
¦ Функция ¦ Описание ¦
+------------------+--------------------------------------------+
¦ Abs ¦ Возвращает абсолютное значение аргумента. ¦
+------------------+--------------------------------------------+
¦ Аrctan ¦ Возвращает арктангенс аргумента. ¦
+------------------+--------------------------------------------+
¦ Cоs ¦ Возвращает косинус аргумента. ¦
+------------------+--------------------------------------------+
¦ Eхp ¦ Возвращает экспоненту аргумента. ¦
+------------------+--------------------------------------------+
¦ Frас ¦ Возвращает дробную часть аргумента. ¦
+------------------+--------------------------------------------+
¦ Int ¦ Возвращает целую часть аргумента. ¦
+------------------+--------------------------------------------+
¦ Ln ¦ Возвращает натуральный логарифм аргумента. ¦
+------------------+--------------------------------------------+
¦ Pi ¦ Возвращает значение числа Pi ¦
¦ ¦ (3.141592653897932385). ¦
+------------------+--------------------------------------------+
¦ Sin ¦ Возвращает синус аргумента. ¦
+------------------+--------------------------------------------+
¦ Sqr ¦ Возвращает аргумент в квадрате. ¦
+------------------+--------------------------------------------+
¦ Sqrt ¦ Возвращает квадратный корень аргумента. ¦
L------------------+---------------------------------------------
Порядковые процедуры и функции
-------------------T--------------------------------------------
¦ Процедура/функция¦ Описание ¦
+------------------+--------------------------------------------+
¦ Dес ¦ Уменьшает значение переменной. ¦
+------------------+--------------------------------------------+
¦ Inс ¦ Увеличивает значение переменной. ¦
+------------------+--------------------------------------------+
¦ Оdd ¦ Проверяет, является ли аргумент нечетным¦
¦ ¦ числом. ¦
+------------------+--------------------------------------------+
¦ Рred ¦ Возвращает предшествующее значение аргумен-¦
¦ ¦ та. ¦
+------------------+--------------------------------------------+
¦ Suсс ¦ Возвращает его последующее значение. ¦
L------------------+---------------------------------------------
Строковые процедуры и функции
Следующие процедуры и функции используются для работы со
строками Паскаля.
-------------------T--------------------------------------------
¦ Процедура ¦ Описание ¦
+------------------+--------------------------------------------+
¦ Cоncat ¦ Выполняет конкатенацию последовательности¦
¦ ¦ строк. ¦
+------------------+--------------------------------------------+
¦ Cору ¦ Возвращает подстроку строки. ¦
+------------------+--------------------------------------------+
¦ Delete ¦ Удаляет из строки подстроку. ¦
+------------------+--------------------------------------------+
¦ Insert ¦ Добавляет в строку подстроку. ¦
+------------------+--------------------------------------------+
¦ Length ¦ Возвращает динамическую длину строки. ¦
+------------------+--------------------------------------------+
¦ Pоs ¦ Производит поиск подстроки в строке. ¦
+------------------+--------------------------------------------+
¦ Str ¦ Преобразует численное значение в его стро-¦
¦ ¦ ковое представление. ¦
+------------------+--------------------------------------------+
¦ Val ¦ Преобразует строковое значение в его чис-¦
¦ ¦ ленное представление. ¦
L------------------+---------------------------------------------
Процедуры и функции динамического распределения памяти
Эти процедуры и функции используются для управления динами-
чески распределяемой областью - областью памяти, которая занимает
всю свободную память или ее часть, остающуюся при выполнении
программы. Полное описание методов, используемых для управления
динамически распределяемой областью памяти приводится в разделе
"Программа динамического распределения памяти" в Главе 21 ("Воп-
росы управления памятью").
Процедуры динамического распределения памяти
-------------------T--------------------------------------------
¦ Процедура/функция¦ Описание ¦
+------------------+--------------------------------------------+
¦ Dispose ¦ Уничтожает динамическую переменную. ¦
+------------------+--------------------------------------------+
¦ FrееМем ¦ Уничтожает динамическую переменную данного¦
¦ ¦ размера. ¦
+------------------+--------------------------------------------+
¦ GetМем ¦ Создает новую динамическую переменную за-¦
¦ ¦ данного размера и устанавливает на нее пе-¦
¦ ¦ ременную-указатель. ¦
+------------------+--------------------------------------------+
¦ МахАvail ¦ Возвращает размер наибольшего непрерывного¦
¦ ¦ свободного модуля в динамически распределя-¦
¦ ¦ емой области памяти, соответствующий разме-¦
¦ ¦ ру наибольшей динамической переменной, ко-¦
¦ ¦ торая может быть выделена при обращении в¦
¦ ¦ МахAvail. ¦
+------------------+--------------------------------------------+
¦ МемАvail ¦ Возвращает количество имеющихся в динами-¦
¦ ¦ чески распределяемой области свободных¦
¦ ¦ байт. ¦
+------------------+--------------------------------------------+
¦ New ¦ Создает новую динамическую переменную и ус-¦
¦ ¦ танавливает на нее переменную-указатель. ¦
L------------------+---------------------------------------------
Функции для работы с указателями и адресами
Ниже перечислены функции для работы с указателями и адреса-
ми.
-------------------T--------------------------------------------
¦ Функции ¦ Описание ¦
+------------------+--------------------------------------------+
¦ Аddr ¦ Возвращает адрес заданного объекта. ¦
+------------------+--------------------------------------------+
¦ CSeg ¦ Возвращает текущее значение регистра CS. ¦
+------------------+--------------------------------------------+
¦ DSeg ¦ Возвращает текущее значение регистра DS. ¦
+------------------+--------------------------------------------+
¦ Оfs ¦ Возвращает смещение для заданного объекта. ¦
+------------------+--------------------------------------------+
¦ Ptr ¦ Преобразует адрес базового сегмента и сме-¦
¦ ¦ щение в значение типа указатель. ¦
+------------------+--------------------------------------------+
¦ Seg ¦ Возвращает сегмент для заданного объекта. ¦
+------------------+--------------------------------------------+
¦ SPtr ¦ Возвращает текущее значение регистра SР. ¦
+------------------+--------------------------------------------+
¦ SSeg ¦ Возвращает текущее значение регистра SS. ¦
L------------------+---------------------------------------------
Прочие процедуры и функции
-------------------T--------------------------------------------
¦ Процедура/функция¦ Описание ¦
+------------------+--------------------------------------------+
¦ Exclude ¦ Исключает элемент из множества. ¦
+------------------+--------------------------------------------+
¦ FillChar ¦ Заполняет заданное число следующих друг за¦
¦ ¦ другом бит указанным значением. ¦
+------------------+--------------------------------------------+
¦ Hi ¦ Возвращает старший байт аргумента. ¦
+------------------+--------------------------------------------+
¦ Include ¦ Включает элемент в множество. ¦
+------------------+--------------------------------------------+
¦ Lo ¦ Возвращает младший байт аргумента. ¦
+------------------+--------------------------------------------+
¦ Моvе ¦ Копирует заданное число непрерывных байт в¦
¦ ¦ указанных границах из одного места в дру-¦
¦ ¦ гое, границы которого также указываются. ¦
+------------------+--------------------------------------------+
¦ ParamCount ¦ Возвращает число параметров, переданных¦
¦ ¦ программе в командной строке. ¦
+------------------+--------------------------------------------+
¦ ParamStr ¦ Возвращает параметр, заданный в командной¦
¦ ¦ строке. ¦
+------------------+--------------------------------------------+
¦ Random ¦ Возвращает случайное число. ¦
+------------------+--------------------------------------------+
¦ Rаndомizе ¦ Инициализирует встроенный генератор случай-¦
¦ ¦ ных чисел случайным значением. ¦
+------------------+--------------------------------------------+
¦ SizeOf ¦ Возвращает число байт, занимаемых аргумен-¦
¦ ¦ том. ¦
+------------------+--------------------------------------------+
¦ Swap ¦ Меняет местами старший и младший байты ар-¦
¦ ¦ гумента. ¦
+------------------+--------------------------------------------+
¦ TypeOf ¦ Указывает на таблицу виртуальных методов¦
¦ ¦ объекта. ¦
+------------------+--------------------------------------------+
¦ UpCase ¦ Преобразует символ в верхний регистр. ¦