Тип-диапазон и перечислимый тип

Среда Borland Pascal 7.0 for Windows. Общие сведения. Интерфейс

Запуск и отладка программы

Структура языка Паскаль (общая, для всех версий)

Типы переменных

3.5. Структура программы

Операции и стандартные функции


Среда Borland Pascal 7.0 for Windows. Общие сведения. Интерфейс

Рис. 1

 

Рис. 2 – Экран среды Borland Pascal 7.0 for DOS

Рис. 3 – Экран среды Borland Pascal 7.0 for Windows

Основное меню среды содержит следующие команды:

- File – набор команд для работы с файлами (открытие, сохранение программы);

- Edit – набор команд для работы с текстом;

- Search – команды поиска по тексту программы;

- Run – команды, управляющие выполнением программы;

- Compile – команды компиляции программы, т.е. получение исполняемого файла;

- Tools – дополнительные утилиты;

- Options – настройки среды;

- Window – команды навигации между открытыми программами;

- Help – помощь.

Запуск и отладка программы

Компиляция – Compile/Make (клавиша F9)

Запуск программы –Run/Run (сочетание клавиш Ctrl+F9)

Помощь при исправлении ошибок при компиляции – Help/Topic Search (Ctrl+F1).

Точка останова (Breakpoint) – Ctrl+F8.

Выполнение команд подпрограмм пошагово – F7

Выполнение команд подпрограмм за один шаг– F8 .

Просмотр значений переменных: при нажатии Ctrl+F7 появляется окно, в котором следует ввести имя интересующей переменной.

Просмотр результата работы программы – Alt+F5.

Прекращение работы программы – Ctrl+F2.

Структура языка Паскаль (общая, для всех версий)

Служебные (зарезервированные) слова

and, array, asm, begin, case, const, constructor, destructor, div, do, downto, else, end, file, for, function, goto, if, implementation, in, inherited, inline, interface, interrupt, label, library, mod, nil, not, object, of, or, packed, procedure, program, record, repeat, set, shl, shr, string, then, to, type, unit, until, uses, var, while, with, xorи другие.

Стандартные директивы Borland Pascal

Absolute, far, name, resident, assembler, forward, near, virtual, export, index, private, external, interrupt, public.

При написании программы применяются:

- константы (Const);

- переменные (Var);

- выражения;

- операторы;

- функции, процедуры и модули;

- комментарии.

Примеры записи идентификаторов: Alfa, C, X_max, Y_min, Sin, Cos, _10_A.

Таблица 1

Специальные знаки: Примеры:
:= - присвоение значения x:= 0. 1; c:= Cos(x); d:= c;
= - описание значений констант Const n= 1; m= 200;
назначение типа Type M = array [N. . M] of integer;
; - конец оператора b:= 5; goto M1; begin end;
: - описание типа переменой Var b, c, d: real; i, j, k: integer;
задание меток операторов M1: c:=sin(x);
, - перечисление идентификаторов при описании Uses CRT, DOS;
. . - задание интервала, диапазона a: array [1. . 100] of real;
() - группировка арифметических выражений аргументов функций, процедур и т. п y:= b/(c+d) ; y:=Sin(x);
[] - границы массива, обозначение элемента массива a[1]:=22;
{} - комментарии {комментарии транслятором не обрабатываются}
' - обозначение символьных и строковых констант с:='!';S:='Cи';
# - обозначение символа с указанием номера кода ASCII c:=#33;
$ - обозначение шестнадцатеричных констант i:=$FF;
@ - обозначение адреса переменной yx:=@x; { где yx - адрес ячейки в ОЗУ со значением переменной "x"}
^ - обозначение типа ссылка Var yx: ^real; , а также значения переменной типа ссылка yx^ := 0. 1;
+ - / *- знаки математических операций  
= <> > < <= >= - знаки операций сравнения  

Типы переменных

В Паскале могут применяться следующие типы переменных:


Структурированные типы

Массивы

Записи

Множества

Файловые типы

Простые типы

Вещественные

Порядковые:

- целый тип

- логический тип

- символьный тип

- перечислимый тип

- тип-диапазон

Строковый тип

Указатели и ссылки

Процедурные типы

Объекты


TYPE A = array [ 1 . . 1000 ] of real ;

VAR a1, a2: A; {массивы из 1000 элементов вещественных чисел типа "A"}

VAR a1, a2 : array [ 1 . . 1000 ] of real ;

Вещественные типы

Название Длина, байт Кол-во цифр Диапазон значений
Single 7..8 10 (-45..+38)
Real 11..12 10 (-39..+38)
Double 15..16 10 (-324..+308)
Extended 19..20 10 (-4951..+4932)
Comp 19..20 -263 +1..+263 -1

 

Примеры описания

VAR c, d, e: real;

d1, d2: double;

 

и присвоения:

с:= -125. 6; e:= 10;

d:= 1. e02;{или}d:= 100.;

d1:= 1.2e-257; { 1.2*10-257}


 

Целые типы:

Название Длина в байтах Диапазон значений
Byte 0 ... 255
ShortInt -128 ... 127
Word 0 ... 65535
Integer -32768 ... 32767
LongInt -2147483648 ... 2147483647

 

Примеры описания:

VAR i, j, k: byte;

h, m, n: integer;

l1, l2, l3: longint;

и присвоения:

i:= 222; j:= 10; m:= -23000;

l1:= 280000;

h:= $A7;(шестнадцатеричный формат числа 10*16+7)


 

Над целыми типами определены такие операции:

1. "+" - сложение;

2. " * " - умножение;

3. " - " вычитание;

4. div - целочисленное деление;

5. mod - получение остатка от целочисленного деления.

 

Символьный тип

Примеры описания: VAR с, ch, e: char;

 

Примеры присвоения значения:  
c:= '!'; c:= #33; {символ "!" задается значением кода}
ch:= #13; {код клавиши Enter}
e:= #27; {код клавиши Esc}
Примеры вывода:  
Write(с); {выводится символ " ! "}
Write(ch); {команда перевода курсора на новую строчку}
Write(е); {выводится специальный символ, соответствующий коду #27}

 

Строковый тип

Примеры описания:

VAR s: string[25]; {длина переменной s может изменяться от 1 до 25 символов}
s1: string; {длина переменной s1 не указывается, наибольшее число символов равно 255}

Примеры присвоения значения: s:= 'Привет'; s1:= 'Hello';

 

Массив

Примеры описания:

VAR M1: array[1..200] of integer; A1: array[100..200] of real;   {М1, A1 - одномерные массивы целых и вещественных чисел}
ch1: array['A'..'Z'] of char; ch2: array[0..255] of char; {сh1, ch2 - одномерные массивы символов}

Примеры присвоения значения:

M1[1]:=5; M1[2]:=8; M1[3]:= M1[1]; M1[100]:=32;

A1[101]:=0.2; A1[102]:=2.31; ch1['B']:='C'; ch2[1]:='!'

Тип-диапазон и перечислимый тип

Примеры описания:

TYPE Date_M=1..31;Rush_b='А..Я';Lat_b= 'A..Z'; {тип диапазон}
Otmetka= (2,3,4,5); Ball= (1,2,3,4,5,6,7,8,9,10); {перечислимый тип}

VAR t1,t2:Date_M; c1:Ruch_b; s1:Lat_b; a1,a2:Otmetka; b:Ball;

Примеры присвоения значения: t1:= 10; c1:= 'Л'; s1:= 'F'; a1:=5; b:= 8;

Файлы

Примеры описания:

VAR f1, f2: text;

Примеры присвоения значения:

Assign( f1, 'file1. in' );

Assign( f2, 'C:\ PASCAL\ WORK\ file2. out' );

Записи

Примеры описания:

Type Sity = Record  
Name_G: String[20]; Numb_G: LongInt; Stol_G: Boolean; Shir, Dol: Real End; { название города } { число жителей } { Столица (Да, Нет) } { Координаты: широта, долгота }
Var St1, St2, St3: Sity; { Переменные типа запись }
Примеры присвоения значения:  
St1. Name_G:= 'Уфа'; St1. Numb_G:=1200000; {Отдельным полям переменной St1 }
St2. Name_G:= 'Москва'; St2. Numb_G:=8200000; St3:= St1;     { Всем полям переменной St3 }

Структура программы