Археология Архитектура Астрономия Аудит Биология Ботаника Бухгалтерский учёт Войное дело Генетика География Геология Дизайн Искусство История Кино Кулинария Культура Литература Математика Медицина Металлургия Мифология Музыка Психология Религия Спорт Строительство Техника Транспорт Туризм Усадьба Физика Фотография Химия Экология Электричество Электроника Энергетика
|
Логические средства языка
Оператор условия - полная форма
| Пример
| if условие then
| if (x>0) and (y>0) then
| оператор 1
| begin x:=x+y; y:=0 end
| else
| else
| оператор 2
| begin x:=x-y; y:=-y end
|
Оператор условия - неполная форма
| Пример
| if условие then
| if x>y then
| оператор
| x:=x mod y
|
Логическая операция
| Описание операции
| Приоритет (порядок выполнения операции)
| not
| Отрицание (НЕ)
|
| and
| Конъюнкция (И)
|
| or
| Дизъюнкция (ИЛИ)
|
| xor
| Сильная дизъюнкция (ИЛИ-ИЛИ)
|
|
Логическое отношение (предикат)
| Описание отношения
| Приоритет (порядок выполнения операции)
| =
| Равно
|
| >
| Больше
|
| <
| Меньше
|
| <>
| Не равно
|
| <=
| Не больше (меньше или равно)
|
| >=
| Не меньше (больше или равно)
|
|
Оператор варианта
| Пример
| case выражение of
| case c of
| вариант-1: оператор;
| 0: x:=x+1;
| вариант-2: оператор;
| 1,2: x:=x-1;
| вариант-N: оператор
| 3..100: x:=-x
| else
| else
| оператор
| x:=0
| end
| end
|
Операторы цикла
Оператор цикла с управляющей переменной - форма "to"
| Пример
| for имя:=значение1 to значение2 do
| for i:=1 to n do
| оператор
| begin read(a); s:=s+a end
|
Оператор цикла с управляющей переменной - форма "downto"
| Пример
| for имя:=значение1 downto значение2 do
| for i:=n downto 0 do
| оператор
| write(i)
|
Оператор цикла с логическим пред-условием
| Пример
| while условие-повторения do
| while i<=n do
| оператор
| begin read(a); s:=s+a; i:=i+1 end
|
Оператор цикла с логическим пост-условием
| Пример
| repeat
| repeat
| операторы
| write(i); i:=i-1
| until условие-выхода
| until i=0
|
Массивы
Тип массива
| Описание массива
| Пример
| Одномерный массив (вектор)
| array [ тип-индекса ] of тип-элемента
| var a: array [ 1..100 ] of integer;
|
Тип массива
| Описание массива
| Пример
| 2-мерный массив (матрица)
| array [ тип-индекса-1, тип-индекса-2 ] of тип-элемента;
| var a: array [ 1..M, 1..M ] of real;
| 3-мерный массив
| array [ тип-индекса-1, тип-индекса-2, тип-индекса-3 ] of тип-элемента;
| var a: array [ 0..1, 0..M, 0..N ] of char;
| 4-мерный массив
| array [ тип-индекса-1, тип-индекса-2, тип-индекса-3, тип-индекса-4 ] of тип-элемента;
| var a: array [ 0..1, 0..1, 0..1, 'a'..'z' ] of boolean;
|
Процедуры и функции пользователя
Процедура
| Пример процедуры для обмена значений между целыми переменными 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;
|
Поиск по сайту:
|