TURBO PASCAL |
Новости |
1. 4. Типы переменных
Типы переменных, используемых в
Турбо-Паскале, приводятся в таблице.
Некоторые типы объединены в группы:
структурированные, простые типы.
Структурированные типы Простые типы
Строковый тип
Массивы Вещественные Указатели
и ссылки
Записи Порядковые
Процедурные
Множества Целый тип типы
Логический тип
Файловые типы Символьный тип
Объекты
Перечислимый тип
Тип-диапазон
Используются стандартные имена
типов, либо имя типа задается в разделе
описания программы, например: TYPE A = array 1
. . 1000 of real ;
Тип переменной объявляется после
служебного слова VAR, например:
VAR a1, a2: A; массивы из 1000
элементов вещественных чисел типа «A»
Если не использовать служебное
слово TYPE, то можно записать:
VAR a1, a2 : array 1 . . 1000 of real ;
Рассмотрим подробнее описание
некоторых стандартных типов и допустимые
диапазоны изменения значений переменных.
Вещественные типы Примеры описания:
Наименование размер кол. диапазон VAR
c, d, e: real;
типа ( байт ) цифр значений d1, d2: double;
Single 4 7..8 10 (-45..+38) Примеры присвоения
значения:
Real 6 11..12 10 (-39..+38) с:= –125. 6; e:= 10;
Double 8 15..16 10 (-324..+308) d:= 1. e02; или
d:= 100.;
Extended 10 19..20 10 (-4951..+4932) d1:= 1.2e-257; 1.2*10-257
Comp 8 19..20 –263 +1..+263 –1 Comp – число без
дробной части
и без точки.
Примечание: типы Single, Double, Extended
работают при подключении сопроцессора, в
том числе при эмуляции сопроцессора. Для
этого в меню Options, Compiler установить Numeric
processing: X 8087/80287, а также X
Emulation, либо в начале программы установить
режим компиляции $N+.
Порядковые типы имеют конечное
число возможных значений.
Целые типы
Наименование размер диапазон
Примеры описания:
типа ( байт ) значений VAR i, j, k: byte;
h, m, n: integer;
Byte 1 0..255 l1, l2, l3: longint;
Shortint 1 –121..+127
Word 2 0..65535 Примеры присвоения
значения:
Integer 2 –32761..+32767 i:= 222; j:= 10; m:= –23000;
Longint 4 –2147483641.. l1:= 280000;
+2147483647 h:= $A7; (шестнадцатеричный
формат числа 10*16+7)
Логический тип
Переменные логического типа могут
принимать значения:
False (ложно) или True (верно).
Примеры описания: VAR b1, b2, b3, b4: boolean;
Примеры присвоения значения:
b1:= True; b2:= False; b3:= not b1; или b3:=
False; b4:= b1;
Символьный тип
Переменные символьного типа могут
принимать значения одного из символов с
кодами от #0 до #255, т. е. допускаются буквы
русского алфавита и символы псевдографики.
Символы с кодами от #0 до #31 (управляющие) в
тексте воспринимаются как пробел, а в
операторах вывода как символ или команда.
Примеры описания: VAR с, ch, e: char;
Примеры присвоения значения:
c:= '!'; c:= #33; символ «!» задается
значением кода
ch:= #13; код клавиши Enter e:= #27; код
клавиши Esc
Примеры вывода: Write(с); выводится
символ « ! «
Write(ch); команда перевода
курсора на новую строчку
Write(е); выводится специальный
символ, соответствующий коду #27
Строковый тип
Переменная строкового типа
задается набором символов, заключенных в
кавычки.
Примеры описания: VAR s: string 25;
s1: string;
длина переменной s может
изменяться от 1 до 25 символов
длина переменной s1 не
указывается, наибольшее число символов
равно 255
Примеры присвоения значения: s:= 'Привет';
s1:= 'Hello';
Массив
Массив – упорядоченные данные
одного типа, состоящие из переменных (элементов
массива). Элементы массива имеют свой
порядковый номер (индекс) и значение.
Значение присваивается отдельно каждому
элементу массива, либо сразу всем
элементам массива (копирование одного
массива в другой в случае массивов
одинакового типа). Массив может быть
многомерным (без ограничения), но занимать
не более 65520 байт. Примеры описания:
VAR M1: array 1..200 of integer; A1: array 100..200
of real;
ch1: array 'A'..'Z' of char; ch2: array 0..255
of char;
М1, A1 – одномерные массивы
целых и вещественных чисел
с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 DateM= 1..31; Rushb= 'А..Я'; Latb= 'A..Z'; тип
диапазон
Otmetka= (2,3,4,5); Ball= (1,2,3,4,5,6,7,8,9,10); перечислимый
тип
VAR t1,t2:DateM; c1:Ruchb; s1:Latb;
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' );
Оператор Assign присваивает файловой
переменной имя файла на диске.
Файл file1. in содержится в текущем
каталоге. Для файла file2. out указывается
дорожка DOS.
Записи
Записи – вводимый программистом
тип, определяемый как структура данных
разного типа, содержащая названия полей с
указанием их типов, расположенных между
служебными словами Record и End.
Примеры описания: Type Sity = Record
NameG: String 20; название
города
NumbG: LongInt; число жителей
StolG: Boolean; Столица (Да, Нет)
Shir, Dol: Real Координаты: широта,
долгота
End;
Var St1, St2, St3: Sity; Переменные типа
запись
Примеры присвоения значения:
St1. NameG:= 'Уфа'; St1. NumbG:=1200000; Отдельным
полям переменной St1
St2. NameG:= 'Москва'; St2. NumbG:=8200000;
St3:= St1; Всем полям переменной St3
Переменные типа запись могут
обозначаться с помощью оператора
присоединения:
WITH «имя переменной» DO «оператор»;
Например: With St1 do Begin
NameG:= 'Уфа'; Stolg:= True; Readln(Shir, Dol);
z:= NumbG – St2. NumbG; Writeln(NameG:5,
NumbG:10) end;
|
(с) Все права защищены. По всем интересующим вопросам прошу писать электронный адрес |