- •Типы данных.
- •Ввод с клавиатуры.
- •Параметры-переменные и параметры-значения.
- •Категории параметров
- •Рекурсия.
- •Новые графические процедуры и функции.
- •Linestyle
- •Thickness
- •Построение звёзд.
- •Вертикально – горизонтальное отношение.
- •Поворот фигур.
- •Вывод текста.
- •Тип данных множество.
- •Тип данных записи.
- •Записи с вариантами.
- •Текстовые файлы.
- •Файлы с прямым доступом. Типизированные файлы.
- •Нетипизированные файлы.
- •Модули.
- •ЗАГОЛОВОК МОДУЛЯ
- •ИНИЦИАЛИЗАЦИОННАЯ ЧАСТЬ
- •Рекомендованная литература.
Одесский колледж компьютерных технологий “СЕРВЕР”
Пример 4. (Выполнение требования совместимости при разных типах).
{$R+} Var A : Longint; B : Word;
BEGIN A : = 37450; B : = A; Writeln (B) END.
Оба типа – целые, переменная В получает неотрицательное значение, попадающее в диапазон типа WORD, поэтому сообщения об ошибке нет, хотя диапазон типа у переменной А гораздо шире диапазона типа переменой В.
Ввод с клавиатуры.
KeyPressed : boolean Анализирует нажатие клавиши клавиатуры (за исключением вспомогательных клавиш - Shift, Alt, NumLock и т.п.). Результат - True, если клавиша на клавиатуре нажата, и False в противном случае.
ReadKey : char. Считывает символ с клавиатуры и освобождает буфер клавиатуры от считанного символа.
Присваиванием
с: =readkey;
всимвольную переменную с будет занесён символ, соответствующий клавише, нажатой на клавиатуре. Для управляющих клавиш, например стрелок, такое присваивание как правило приходится делать дважды:
c : =readkey;
if ord(с)=0 then c : =readkey;
Параметры-переменные и параметры-значения.
Процедуры и функции могут не только получать значения от вызывающей программы, но и возвращать в программу новые значения. Для этой цели служат параметры-переменные.
Отличие параметров-значений от параметров-перемен- ных:
7
Одесский колледж компьютерных технологий “СЕРВЕР”
•параметры-значения только получают значения при вызо-
ве процедуры;
•параметры-переменные получают значения, во время вы-
полнения могут измениться и возвращают новые значения тем аргументам, которые передали им значения.
Для параметров-значений заводится новая переменная, в которую заносится передаваемое значение. Все изменения этой переменной действуют только в пределах текущей процедуры. При завершении процедуры переменная уничтожается. При этом становится видна исходная переменная (значение которой передавалось как параметр). Но её значение остаётся прежним. При передаче параметра-переменной передаётся не само значение, а адрес исходной переменной. При этом все изменения переменной в процедуре сохраняются при возврате в программу.
В описании подпрограмм перед параметрамизначениями ставится служебное слово var, например:
Procedure Example (x : integer, var y : real);
Категории параметров
|
Параметры-значения |
Параметры-переменные |
Служебное |
--- |
VAR |
слово |
|
|
Передаётся |
Копия переменной |
Сама переменная |
|
|
(её адрес) |
Изменения |
Разрешены |
Разрешены |
Обратная |
Невозможна (ориги- |
Возможна |
передача |
нал не изменяется) |
|
8