- •Вопрос 1 Алфавит языка Паскаль. Правила построения идентификаторов.
- •Вопрос 2 Структура Паскаль-программы. Прокомментировать назначения разделов.
- •Вопрос 3 Логические переменные в Паскале. Основные операции над ними. Логические выражения. Правила записи и вычсления сложных логических выражений. Логические переменные
- •Логические выражения
- •Вопрос 4 Правила записи и вычисления арифметических и строковых выражений. Операции mod и div.
- •Арифметические выражения
- •Вопрос 5 Формат и правила выполнения оператора присваивания. Оператор присваивания
- •Вопрос 6 Понятие и применение составного оператора.
- •Вопрос 7
- •Вопрос 8
- •Вопрос 9
- •Var X: real; {аргумент }
- •Вопрос 10
- •Вопрос 11,12,13
- •Вопрос 14, 15
- •5.9 Процедуры вывода данных.
- •Вопрос 16
- •Вопрос 17
- •Вопрос 18
- •Одномерные массивы. Работа с элементами
- •Способы задания одномерных массивов
- •Работа с элементами массива (разбор на примерах)
- •Вопрос 19
- •Методы сортировки массивов
- •Метод "пузырька"
- •Сортировка вставками
- •Сортировка посредством выбора
- •Вопрос 20
- •Двумерные массивы Паскаля – матрицы
- •Описание двумерного массива Паскаля.
- •Основные действия с двумерными массивами Паскаля
- •Ввод двумерного массива Паскаля.
- •Вывод двумерного массива Паскаля на экран.
- •Представление двумерного массива Паскаля в памяти
- •Сколько памяти выделяется для массива?
- •Примеры решения задач с двумерными массивами Паскаля
- •Вопрос 21, 22
- •Строки Строковый тип данных
- •Процедуры и функции для работы со строками
- •Вопрос 23
- •Стандартные процедуры и функции.
- •5.1 Математические функции.
- •Вопрос 30
- •Нетипизированные параметры
- •Вопрос 31
- •Вопрос 32
Вопрос 23
Понятие процедуры и функции в Паскале. Их назначение, применение, варианты размещения в программе.
Стандартные процедуры и функции.
В языке программирования Турбо Паскаль все используемые процедуры и функции объединены в стандартные модули. К основным модулям можно отнести следующие:
• SYSTEM – включает стандартные процедуры и функции языка; при использовании этого модуля его не требуется подключать с помощью USES, так как он подключен по умолчанию;
• DOS – содержит процедуры и функции для взаимодействия с MS DOS;
• CRT - объединяет процедуры и функции для работы с экраном в текстовом режиме и клавиатурой;
• GRAPH - состоит из процедур и функций для работы с экраном в графическом режиме;
• OVERLAY - обеспечивает работу с оверлеями (то есть частями программы), используется для обработки программ большого объема при недостатке оперативной памяти;
• PRINTER – модуль для работы с принтером.
Процедуры и функции модуля SYSTEM наиболее часто встречаются в программах. Рассмотрим некоторые из них.
5.1 Математические функции.
Имя функции |
Назначение функции |
Tип результата |
Abs(X) |
Абсолютное значение (модуль) аргумента Abs(-3.5)=3.5 |
Совпадает с типом Х |
ArcTan(X) |
Арктангенс аргумента в радианах ArcTan(1)=7.8539816340E-01 |
Real |
Cos(X) |
Косинус аргумента в радианах Сos(PI/3)=5.0000000000E-01 |
Real |
Exp(X) |
Экспонента аргумента (E в степени X) Exp(1)=2.7182818285E+00 |
Real |
Ln(X) |
Натуральный логарифм Ln(10)=2.3025850930E+00 |
Real |
PI |
Значение числа π PI=3.1415926536E+00 ( более точно 3.1415926535897932385 ) |
Real |
Random |
Случайное число из диапазона от 0 до 1 |
Real |
Вопросы 24-29 читать в учебнике
Вопрос 30
Область действия имен. Глобальные и локальные переменные.
В программе на языке FPC различают глобальные и локальные имена. Глобальные имена определены во внешней программе. Память под них выделяется статически при компиляции. Они доступны во всех внутренних точках, в том числе в подпрограммах.
Локальные имена определены в подпрограммах. Память под них выделяется динамически (в стеке) при исполнении подпрограммы. Они доступны во внутренних точках подпрограммы, а во внешней программе недоступны.
Если локальное и глобальное имя совпадают, то в подпрограмме локальное имя блокирует глобальное. Совпадения глобальных и локальных имен лучше избегать. Чтобы получить доступ к глобальному имени в подпрограмме, его надо указывать составным. Формат доступа к глобальному имени: <имя программы>.<глобальное имя>. Пример:
program Names_View;
{$mode objfpc}{$H+}
uses SysUtils; // Ссылка на модули
var I:integer; // Глобальная переменная I
procedure Proc;
var I:real; // Локальная переменная I
begin
I:=7; // Задание локальной переменной
I:=2.1+Names_View.I; // Обращение к глобальной переменной
writeln(I); // Результат в процедуре – число 5.1
end;
begin
I:=3; // Задание глобальной переменной
Proc; // Обращение к процедуре
readln; // Пауза, чтобы увидеть результат
end.