Слайд 3ВЕЩЕСТВЕННЫЕ ТИПЫ
Примечание: типы Single, Double, Extended работают при подключении сопроцессора, в
том числе при эмуляции сопроцессора. Для этого в меню Options, Compiler установить Numeric processing: [X] 8087/80287, а также [X] Emulation, либо в начале программы установить режим компиляции {$N+}.
Слайд 5ПРИМЕРЫ ОПИСАНИЯ ВЕЩЕСТВЕННЫХ ТИПОВ
VAR
c, d,
e: real;
d1, d2: double;
Слайд 6ПРИМЕРЫ ОПИСАНИЯ
ЦЕЛЫХ ТИПОВ
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)
Слайд 7ПРИМЕРЫ ОПИСАНИЯ
ЛОГИЧЕСКИХ ТИПОВ
Переменные логического типа могут принимать значения:
False (ложно) или
True (верно).
Примеры описания:
VAR b1, b2, b3, b4: boolean;
Примеры присвоения значения:
b1:= True; b2:= False; b3:= not b1; {или} b3:= False; b4:= b1;
Слайд 8ПРИМЕРЫ ОПИСАНИЯ
СИМВОЛЬНОГО ТИПА
Переменные символьного типа могут принимать значения одного из
символов с кодами от #0 до #255, т. е. допускаются буквы русского алфавита и символы псевдографики. Символы с кодами от #0 до #31 (управляющие) в тексте воспринимаются как пробел, а в операторах вывода как символ или команда.
VAR с, ch, e: char;
Примеры присвоения значения:
c:= '!'; c:= #33; { символ "!" задается значением кода }
ch:= #13; { код клавиши Enter }
e:= #27; { код клавиши Esc }
Примеры вывода: Write(с); { выводится символ " ! " }
Write(ch); { команда перевода курсора на новую строчку }
Write(е); { выводится специальный символ, соответствующий коду #27 }
Слайд 9ПРИМЕРЫ ОПИСАНИЯ
СТРОКОВОГО ТИПА ТИПА
Переменная строкового типа задается набором символов, заключенных
в кавычки.
VAR
s: string[25];
{ длина переменной s может изменяться от 1 до 25 символов }
s1: string;
{ длина переменной s1 не указывается, наибольшее число символов равно 255 }
Примеры присвоения значения:
s:= 'Привет'; s1:= 'Hello';
Слайд 10ПРИМЕРЫ ОПИСАНИЯ
МАССИВОВ
Массив - упорядоченные данные одного типа, состоящие из переменных
(элементов массива). Элементы массива имеют свой порядковый номер (индекс) и значение. Значение присваивается отдельно каждому элементу массива, либо сразу всем элементам массива (копирование одного массива в другой в случае массивов одинакового типа). Массив может быть многомерным (без ограничения), но занимать не более 65520 байт.
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]:='!'
Слайд 11ПРИМЕРЫ ОПИСАНИЯ
ТИП-ДИАПАЗОН, ПЕРЕЧИСЛИМЫЙ
Они задаются программистом.
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;
Слайд 12ПРИМЕРЫ ОПИСАНИЯ ФАЙЛОВ
Файл - именованная область внешней памяти ЭВМ, содержащая различные
данные. Длина файла ограничена доступной дисковой памятью. Файлы могут быть текстовые, типизированные и нетипизированные
VAR f1, f2: text;
Примеры присвоения значения:
Assign( f1, 'file1. in' );
Файл file1. in содержится в текущем каталоге.
Assign( f2, 'C:\ PASCAL\ WORK\ file2. out' );
Для файла file2. out указывается дорожка DOS.
Оператор Assign присваивает файловой переменной имя файла на диске.
Слайд 13ПРИМЕРЫ ОПИСАНИЯ ЗАПИСЕЙ
Записи - вводимый программистом тип, определяемый как структура данных
разного типа, содержащая названия полей с указанием их типов, расположенных между служебными словами Record и End.
Type Sity = Record
Name_G: String[20]; { название города }
Numb_G: LongInt; { число жителей }
Stol_G: Boolean; { Столица (Да, Нет) }
Shir, Dol: Real { Координаты: широта, долгота }
End;
Var St1, St2, St3: Sity; { Переменные типа запись }
Слайд 14ПРИМЕРЫ ОПИСАНИЯ ЗАПИСЕЙ
Примеры присвоения значения:
St1. Name_G:= 'Уфа';
St1. Numb_G:=1200000;
{Отдельным полям переменной St1 }
St2. Name_G:= 'Москва';
St2. Numb_G:=8200000;
St3:= St1; { Всем полям переменной St3 }
Переменные типа запись могут обозначаться с помощью оператора присоединения:
WITH "имя переменной" DO "оператор";
Например: With St1 do Begin
Name_G:= 'Уфа'; Stol_g:= True; Readln(Shir, Dol);
z:= Numb_G - St2. Numb_G; Writeln(Name_G:5, Numb_G:10) end;
Слайд 17МАТЕМАТИЧЕСКИЕ ОПЕРАЦИИ
Под смешанным типом переменных в выражении подразумевается операция с целым
и вещественным типом переменных.
Слайд 18ОПЕРАЦИИ СРАВНЕНИЯ
Операции в скобках имеют высший приоритет, т. е. сначала выполняются
операции в скобках, в том числе вычисление аргументов и значения функции.
Операции одинакового приоритета выполняются слева направо,
например a/c*b соответствует (a/c)*b.
Слайд 20Стандартные математические функции и процедуры
Турбо-Паскаля
Слайд 23ПРОЦЕДУРЫ ПРЕОБРАЗОВАНИЯ ТИПОВ ПЕРЕМЕННЫХ
Слайд 24ФУНКЦИИ ПРЕОБРАЗОВАНИЯ ТИПОВ ПЕРЕМЕННЫХ
Поскольку при вызове функции или процедуры производятся некоторые
вычисления, преобразования или выполняются другие действия, то вызов функции можно назвать оператором-функцией, а вызов процедуры - оператором-процедурой.