Процедуры и функции пользователя

Процедура Пример процедуры для обмена значений между целыми переменными 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;

Наши рекомендации