Процедура | Пример процедуры для обмена значений между целыми переменными m и n |
program имя-программы; | program primer; var x,y: integer; |
procedure имя(параметры); | procedure swap(var m,n:integer); |
описания локальных величин | var s: integer; |
begin | begin |
операторы процедуры | s:=m; m:=n; n:=s |
end; | end; |
BEGIN | BEGIN |
операторы программы | read(x,y); swap(x,y); writeln(x:10,y:10) |
END. | END. |
Функция | Пример функции для вычисления натуральной степени (n) целого числа (m) |
program имя-программы; | program primer; var x,y: integer; |
function имя(параметры): тип-результата; | function power(m,n:integer):integer; |
описания локальных величин | var s,i: integer; |
begin | begin |
операторы функции | s:=1; for i:=1 to n do s:=s*m; power:=s |
end; | end; |
BEGIN | BEGIN |
операторы программы | read(x,y); writeln(power(x,y)) |
END. | END. |
Часть III.
Символьные типы данных
Тип | Описатель типа (имя) | Значение типа (пример) |
Символьный (литерный) | char | 'a' |
| | #13 |
Строковый | string | 'задача' |
| | 'тема'#13#10'урока:' |
Функция | Результат функции | Пример |
length(s) | Длина строки | n:=length(s) |
pos(s1,s2) | Начало первого вхождения строки s1 внутри строки s2 (номер позиции) | n:=pos('+',s) |
copy(s,p,n) | Часть строки s длиной n, начиная с позиции p | c:=copy(s,4,2) |
concat(s1,s2,s3,...sn) | Соединить строки (функция конкатенации) | c:=concat(s,';',t,'.') |
Функция | Результат функции | Пример |
upcase(c) | Преобразовать малую букву латинского алфавита в большую (символ верхнего регистра) | c:=upcase(c) |
chr(n) | Символ с номером n | c:=chr(n) |
ord(c) | Номер символа со значением c | n:=ord(c) |
succ(c) | Следующий символ таблицы ASCII | c:=succ(c) |
pred(c) | Предыдущий символ таблицы ASCII | c:=pred(c) |
Процедура | Операция | Пример |
delete(s,p,n) | Удалить часть строки s длиной n, начиная с позиции p | delete(s,n,1) |
insert(s1,s2,p) | Вставить строку s1 в строку s2, начиная с позиции p | insert('+',s,1) |
val(s,x,r) | Преобразовать строку s в число x с признаком результата r | val(s,x,nan) |
str(x:f,s) | Преобразовать число x в строку s с форматом числа f | str(x:10,s) |
| | str(x:10:2,s) |
s1 + s2 | Соединить строки (операция конкатенации) | s:=s+';'+t+'.' |
Множества
Тип множества | Описание множества | Пример |
Постоянное множество (константа) | [ тип-элемента ] | const a = [ 0..100 ]; |
Переменное множество (переменная) | set of [ тип-элемента ] | var a: set of [ '0'..'9', '+', '-' ]; |
Пример описания постоянного множества | Элементы множества |
const A = [ 'A'..'Z', 'a'..'z' ]; | Буквы латинского алфавита |
const B = [ 'a'..'z' ]; | Малые буквы латинского алфавита |
const C = [ 'А'..'Я', 'а'..'п', 'р'..'я', 'Ё', 'ё' ]; | Буквы алфавита-кириллицы |
const D = [ 'А'..'Я' ]; | Большие буквы алфавита-кириллицы |
const M = [ '0'..'9' ]; | Цифровые символы от 0 до 9 |
const N = [ 0..100 ]; | Целые числа от 0 до 100 |
Пример описания переменного множества | Элементы множества |
var a set of [ 'A'..'Z', 'a'..'z' ]; | Буквы латинского алфавита |
var b set of [ 'a'..'z' ]; | Малые буквы латинского алфавита |
var c set of [ 'А'..'Я', 'а'..'п', 'р'..'я', 'Ё', 'ё' ]; | Буквы алфавита-кириллицы |
var d set of [ 'А'..'Я' ]; | Большие буквы алфавита-кириллицы |
var m set of [ '0'..'9' ]; | Цифровые символы от 0 до 9 |
var n set of [ 0..100 ]; | Целые числа от 0 до 100 |
Операция | Результат операции | Пример |
М1 + М2 | Объединение множеств М1 и М2 | ['0'..'9'] + ['+'] |
М1 - М2 | Разность множеств М1 и М2 | ['a'..'z'] - ['x'..'z'] |
М1 * М2 | Пересечение множеств М1 и М2 | ['a'..'m'] * ['c', 'i', 'n'] |
Операция | Когда результат операции равен true | Пример |
значение in множество | Значение является элементом множества | not (s[i] in ['a'..'z']) |
М1 = М2 | Множества М1 и М2 равны между собой | |
М1 <> М2 | Множества М1 и М2 не равны | |
М1 < М2 | Множество М1 является подмножеством множества М2 | |
М1 <= М2 | Множество М1 является подмножеством множества М2 или равно М2 | |
М1 > М2 | Множество М1 является надмножеством множества М2 | |
М1 >= М2 | Множество М1 является надмножеством множества М2 или равно М2 | |
Часть IV.
Файлы
Тип файла | Описание файла | Пример |
текстовый файл (текст) | text | var t: text; |
типизированный файл | file of тип-элемента | var a: file of integer; |
Процедуры и функции | Операция | Пример |
read( файл, список ввода ) | Ввод данных из файла | read(t,a,b,c); |
readln( файл, список ввода ) | Ввод данных из файла | readln(t,a,b,c); |
write( файл, список вывода ) | Вывод данных в файл | write(t,x,y,z); |
writeln( файл, список вывода ) | Вывод данных в файл | writeln(t,x,y,z); |
assign( файл, имя файла ) | Определить имя файла | assign(t,'c:\text\info.txt'); |
reset( файл ) | Открыть файл для ввода | reset(t); |
rewrite( файл ) | Открыть файл для вывода | rewrite(t); |
close( файл ) | Закрыть файл | close(t); |
eof( файл ) | Если конец файла, то true (функция) | while not eof(t) do read(t,a); |
eoln( файл ) | Если конец строки, то true (функция) | while not eoln(t) do read(t,a); |
Типы и записи
Описание типа записи | Пример |
имя типа = record | type data = record |
имя-1: тип-1; | x:integer; |
имя-2: тип-2; | y:integer; |
имя-N: тип-N; | t:string; |
end; | end; |
| var a1, a2, a3: data; |
Ссылки и указатели
Описание указателя | Пример |
имя-указателя: ^имя-типа; | var pdata: ^data; |
Ссылка с помощью указателя | Пример |
имя-указателя^ | pdata^ := 0; |
Процедура | Операция | Пример |
new(имя-указателя) | Выделить память для переменной (создать переменную для указателя) | new(pdata); |
dispose(имя-указателя) | Освободить память переменной (указатель:=nil) | dispose(pdata); |
Объекты и классы
Описание типа объекта (класс) | Пример |
имя класса = object (класс-родитель) | type donkey = object (animals) |
свойство-1: тип-1; | x:integer; |
свойство-2: тип-2; | y:integer; |
свойство-N: тип-N; | t:string; |
метод-1(параметры); | function run(m:string):boolean; |
метод-2(параметры); | procedure show; |
метод-N(параметры); | procedure hide; |
end; | end; |
| var a1, a2, a3: donkey; |
Наши рекомендации