- •Лекция 1
- •Лексемы
- •Идентификатор
- •Ключевые (служебные) слова
- •Константы
- •Знаки операций
- •Логические операции
- •Разделители
- •Комментарий
- •Константы и переменные
- •Классификация типов данных
- •Целые типы данных
- •Вещественные типы
- •Лекция2. Символьный тип данных
- •Логический тип
- •Перечислимый тип данных
- •Порядковые и неизвестные типы
- •Порядковые типы данных
- •1 Целые типы
- •Лекция 3
- •2 Символьный тип char
- •3 Логический тип данных boolean
- •4 Перечислимый тип
- •Вещественные типы
- •Ограниченные (интервальные) типы
- •Структура программы
- •Заголовок программы
- •Раздел операторов
- •Заголовок программы
- •Раздел описания
- •Описание меток
- •Лекция 4 Описоние констант. Раздел констант.
- •Раздел описания типов
- •Раздел описания переменных
- •Раздел операторов
- •Пример программ на языке Турбо Паскаль
- •Программа решения примера имеет вид
- •Стиль программирования
- •Основные операторы языка Турбо Паскаль
- •Оператор присваивания
- •Выражения в языке Турбо Паскаль
- •Например, в выражении
- •В качестве операндов можно брать на первом шаге, например
- •Лекция 5
- •Стандартные функции языка Турбо Паскаль
- •Тригонометрические функции
- •Алгебраические функции
Ограниченные (интервальные) типы
Ограниченные (интервальные) типы используются тогда, когда нужно использовать не весь базовый порядковый тип, а только его обрезок, например
type
index=1...10;
bukwy=’A’..’Z’;
week=(sunday, monday, tuesday, wednesday, thirsday, friday, saturday);
workweek=monday...friday;
Ограниченный (интервальный) тип
отрезок типа - это диапазон значений из любого порядкового типа, называемого базовым типом.
Ограниченный тип задается следующим образом:
<имя типа>=<начальное значение>..<конечное значение>;
Здесь имя типа задается пользователем по правилам задания идентификаторов.
Например,
index
bukwy
workweek
<начальное значение> и <конечное значение> - должны принадлежать рассматриваемому базовому типу, кроме того начальное значение должно предшествовать конечному.
Например, для ограниченного типа index начальное значение - 1;конечное значение - 10;
для типа bukwy - начальное значение ‘А’, конечное значение - ‘Z’;
для типа workweek - начальное значение - monday, конечное значение - friday.
Переменная ограниченного типа имеет все свойства переменной базового типа, однако ее значение на этапе выполнения должно принадлежать указанному интервалу.
Однако не все компиляторы проверяют принадлежность значения заданному интервалу. И кроме того, выражение для вычисления значения может быть настолько сложным, что компилятор не в состоянии будет проверить, вышло указанное значение за диапазон или нет. И в этом случае прерывание работы программы не произойдет и сообщение об ошибке выведено не будет.
Например, в программе
Program Prim1;
Type
Index=1...10;
Var
X:index;
begin
X:= round(100*cos(0));
writeln(‘X=’,X);
end.
задан ограниченный тип index, как отрезок типа Integer- диапазон от 1 до 10; Переменная Х имеет тип index и должен принимать значения только от1 до 10.
Значения выражений
round(100*cos(0))=round(100*1.0)=round(100.0)=100
выходит за границу диапазона. Но так как это выражение содержит функции и является сложным для вычислений его компилятором, то никаких действий по обработке ошибки компилятор выполнять не будет. Программа не остановится, переменной будет присвоено 100.
Результатом выполнения программы будет вывод результата вычисления
Х=100.
Следовательно, при использовании ограниченного типа нужно быть очень осторожным, и не рассчитывать на то, что компилятор автоматически начнет все проверять.
Поэтому удобнее пользоваться переменными базового порядкового типа, а проверку выхода за границу диапазона осуществлять в программе.
Структура программы
Программа представляет собой последовательность операторов и других элементов языка, построенную в соответствии с определенными правилами и предназначенную для решения определенной задачи.
В языке Турбо Паскаль программа имеет следующею структуру:
Заголовок программы
Раздел описаний
Begin
Раздел операторов
End.
Заголовок программы
Заголовок программы имеет следующую структуру:
Program<имя программы>;
Здесь Program – ключевое (зарезервированное) слово.
<имя программы> - имя, задаваемое программистом по правилам определения идентификатором
Между ключевым словом Program и именем программы должен быть по крайней мере один пробел (а может быть и больше). Например, PROGRAM ZADANIE1;
В Тубо Паскале оператор заголовка программы может быть опущен. Имя программы в ней фактически никогда не используется, и оно совершенно не связано с именем внешнего файла, содержащего текст программы.