- •Лекция "Алгоритмизация и основы программирования на языке Паскаль" Введение.
- •Основные понятия.
- •Основная структура программы.
- •Цикл "до"
- •Цикл "с параметром".
- •Цикл "Пока"
- •Строковые операции
- •Определение типов
- •Массивы
- •Процедуры и функции
- •Работа с файлами
- •Краткий справочник по языку программирования TurboPascal V. 7.0
- •1. Общая структура программы. Основные понятия.
- •1.1. Основные части программы
- •1.2. Имя (идентификатор)
- •2.3.3. Логические операции
- •3. Ввод и вывод данных (стандартные устройства)
- •5. Операции над числами
- •5.1. Функции
- •6.4. Множества
- •6.5. Операции над множествами
- •6.6. Записи
- •6.7. Сложные структуры данных. Квалификация имени.
- •7. Операции над символами и строками
- •7.1 Операции над символами и другими регулярными типами
- •7.2. Операции над строками
- •7.2.1. Функции
- •7.2.2. Процедуры
- •8. Преобразования данных
- •9. Файлы. Операции над файлами
- •9.1. Типы файлов (файловых переменных)
- •9.2. Процедуры
- •9.3. Функции
- •11. Основы машинной графики dos - bgi
- •11.1. Стандартный модуль (graph)
- •11.2. Основные процедуры и функции
6.4. Множества
Модель множества (количество элементов <=256, литеры или целые числа 0..255)
0 |
1 |
2 |
3 |
4 |
... |
255 |
1 |
1 |
0 |
1 |
0 |
... |
0 |
type тип-множество = set of тип-элемента;
6.5. Операции над множествами
Принадлежность |
Объединение |
Разность |
Пересечение |
||||||||
X |
A |
X in A |
A |
B |
A+B |
A |
B |
A-B |
A |
B |
A*B |
0 |
[1,2] |
false |
[1] |
[1,2] |
[1,2] |
[1,2] |
[2] |
[1] |
[1,2] |
[2,3] |
[2] |
1 |
[1,2] |
true |
[2] |
[3] |
[2,3] |
[1,2] |
[3] |
[1,2] |
[1,2] |
[3,4] |
[ ] |
6.6. Записи
Модель записи
R1 |
R2 |
R3 |
... |
Rn |
type тип-запись = record
переменная: тип-1;
переменная: тип-2
end;
6.7. Сложные структуры данных. Квалификация имени.
type mas_of_strings = array [1..n] of string;
var x: mas_of_strings;
x[ i ]
x[ i, j ]
type data = record nomer: integer; name, adres: string [20] end;
var x: data;
x.name
x.name[ i ]
type data = record nomer: integer; name, adres: string [40] end;
type mas_of_records = array [1..n] of data;
var x: mas_of_records;
x[i].name
x[i].name[j]
type mas_of_records = array [1..n] of byte;
type data = record nomer:integer; n:string; rates: mas_of_records end;
var x: data;
x.n[i]
x.rates[j]
7. Операции над символами и строками
7.1 Операции над символами и другими регулярными типами
Функция |
Значение |
Пример вызова |
Результат |
chr(номер-символа-n) |
Символ номер n (#n) |
chr(33) |
‘!’ |
ord(величина) |
номер величины (код) |
ord(‘!’) |
33 |
succ(величина) |
Следующее значение в последовательности |
succ(‘y’) |
‘z’ |
pred(величина) |
Предыдущее значение в последовательности |
pred(‘y’) |
‘x’ |
7.2. Операции над строками
7.2.1. Функции
Функция |
Назначение |
Пример вызова |
Результат |
copy(s,p,n) |
Выделить n символов из строки s начиная с позиции p |
copy(‘роза’,3,2) |
‘за’ |
concat(s1,s2,...sn) |
Соединить строки (литеры) в одну строку (конкатенация) |
concat(‘г’,’роза’) |
‘гроза’ |
length(строка) |
Длина строки [символ.] |
length(‘роза’) |
4 |
pos(s1,s2) |
номер позиции строки s1 внутри строки s2 (если не найдена, 0) |
pos(‘за’,’роза’) |
3 |
