<список_значень_1>: команда_1;
<список_значень_2>: команда_2;
…
<список_значень_n>: команда_n
else команда_n+1;
end;
До лабораторної роботи № 6:
Оголошення позначок в розділі описань:
label <список_позначок >;
Команда безумовного переходу:
goto <позначка >;
...
<позначка>: команда;
Команда циклу з передумовою:
while <логічний_вираз> do <команда_1>;
До лабораторної роботи № 7:
Команда циклу з післяумовою:
repeat <команди> until <логічний_вираз>;
До лабораторної роботи № 8:
Оператор циклу з параметром:
for <параметр>:= <вираз_1> to <вираз_2> do <команда_1>;
for <параметр>:= <вираз_1> downto <вираз_2> do <команда_1>;
Приклад розв¢язку завдання 2:
{Програма вводить три символи, що являють собою запис числа в 16-ковій системі числення, переводить число в 10-кову систему числення і роздруковує його}:
program SS;
var S:char; I, M:integer;
begin
writeln (‘введіть послідовність із трьох символів 16-кової системи числення’);
m:=0;
for I:=1 to 3 do
begin read (S); write (S);
if (S>=’0’) and (S<=’9’) then M:=M*16+ord(S)-ord(‘0’)
else M:= M*16+ord(S)-ord(‘A’)+10
end;
writeln (‘число в 10-ковій системі числення =’, M:5)
end.
До лабораторної роботи № 9, 10:
Описання масиву здійснюється в розділі описання:
var <назва_масиву>: array [1..n] of <назва_базового_типу>;
або
type <назва_типу>= array [1..n] of <назва_базового_типу>;
var <ім¢я_масиву>:<назва_типу>;
Звернення до елемента масиву: <ім¢я_масиву>[номер_елемента];
Щоб опрацювати всі елементи масиву використовують команди циклу for (чи while або repеat).
До лабораторної роботи № 11:
Функції для роботи з рядками:
|
length (<рядок>)
| визначає кількість символів у рядку
|
copy (r, m, n)
| дає n символів рядка r, починаючи з символу з номером m
|
concat (r1, r2, …, rn)
| з¢єднує рядки r1, r2, …, rn в один рядок
|
pos (r1, r2)
| визначає номер символу, з якого починається входження рядка r1 у рядок r2
|
Процедури для роботи з рядками:
|
insert (r1, <змінна>, n)
| вставляє рядок r1 у рядок, заданий змінною, починаючи з позиції n
|
delete (<змінна>, m, n)
| вилучає n символів з рядка, заданого змінною, починаючи з позиції m
|
str (<число>, <змінна>)
| переводить числове дане в дане типу рядок
|
val (r1, s1, s2)
| засилає у числову змінну s1 числовий образ рядка r1. Якщо це можливо, то змінна s2 отримує значення 0, інакше – числове значення номера першого недопустимого символу заданого рядка.
|
До лабораторної роботи № 12:
Операції над множинами:
|
a + b
| Об¢єднання. Множина, яка містить усі елементи множин а і b без повторень
|
a * b
| Перетин. Множина, яка містить елементи, які є спільними для множин а і b
|
a – b
| Різниця. Множина, яка складається з елементів, які є у множині а, але немає у множині b
|
=, <>, <=, >=
| Порівняння. Результатом порівняння є дане логічного типу.
|
in
| Включення множини в множину
|
Описання множин:
type <назва_типу> = set of <базовий_тип>;
Значення змінній типу множина надають за допомогою команди присвоєння.
До лабораторної роботи № 13:
Описання запису у розділі описань:
type <назва_типу_запису>= record
<назва_поля_1>:<тип_поля_1>;
…;
<назва_поля_n>:<тип_поля_n>;
end;
Доступ до конкретного поля запису дає складене ім¢я:
<назва_запису>.<назва_поля>
До лабораторної роботи № 14:
Опис процедури:
procedure <назва > (<список_формальних_параметрів >);
<розділи_описів_і_оголошень_процедури>;
Begin
<розділ_команд_процедури>
end;
Звернення до процедури:
<назва_процедури> (<список_фактичних_параметрів>);
Опис функції:
function <назва> ( <список_формальних_параметрів> ):<тип_функції>;
<розділи_описів_і_оголошень_функції>;
Begin
<розділ_команд_функції, де_ має_бути_така_команда-назва:=вираз>
end;
Виклик функції:
<назва> (<список_фактичних_параметрів>);
Формула трапецій:
Формула Сімпсона:
До лабораторної роботи № 15:
Файловий тип даних описують у розділі описів типів:
type <ім¢я_типу>= file of <базовий тип>;
або
var <список_змінних>: file of <базовий_тип>;
Щоб знайти потрібний елемент файлу, необхідно послідовно переглянути всі попередні – послідовний доступ до файла.
Дії з файлами
|
eof (<ім¢я файла>)
| визначення кінця файла, результат – true
|
assign (<ім¢я файлу>, <зовнішнє ім¢я>)
| налагоджує зв¢язок між іменем файлу і файлом на зовнішньому носії
|
reset (<ім¢я файлу>)
| відкриває файл для читання з нього даних
|
read (<ім¢я файлу>, <ім¢я змінної>)
| читає (вводить) дане з файлу в оперативну пам¢ять
|
close (<ім¢я файлу>)
| закриває файл
|
rewrite (<ім¢я файлу>)
| відкриває файл для записування в нього даних
|
write (<ім¢я файлу>, <ім¢я змінної>)
| Записує (виводить) дане у файл
|
seek (<назва файлу>, k)
| для опрацювання файлів прямого доступу перед використанням команд read і write слід забезпечити доступ до k-го елемента (нумерація від нуля) файлу
|
Для текстових файлів: описання текстового файла в розділі описань:
var <список_імен_змінних>: text;
eoln (<ім¢я файлу>)
| перевірка кінця файлу
|
read(<ім¢я_файлу>, <список-параметрів>)
або
readln(<ім¢я_файлу>, <список_параметрів>)
| зчитати дані з рядка текстового файлу
|
write (<ім¢я_файлу>, <список_параметрів>)
або
writeln (<ім¢я_файлу>, <список_параметрів>)
| створити рядок текстового файлу
|
append (<ім¢я_файлу>)
| дописати дані у текстовий файл
|
До лабораторної роботи № 16:
Задати графічний режим:
<розділи описів та оголошень конкретної програми>;
var driver, mode: integer; {для характеристик дисплея}
begin
driver:=detect; {detect – стандартна стала}
initgraph (driver, mode, ‘’); {задання графічного режиму}
if graphresult <> 0 then
begin
writeln (‘графічний режим задати не вдалося’);
halt {стоп}
end;
<текст конкретної програми з графічними командами>
end.
Процедури, функції і модулі для графічних побудов
|
initgraph (driver, mode, ‘шлях до драйвера’)
| задає графічний режим
|
detectgraph (<драйвер>, <режим>)
| повертає значення характеристик дисплея
|
setcolor (<колір>)
| задає колір майбутнього зображення
|
setbkcolor (<колір>)
| задає колір тла
|
putpixel (x,y,<колір>)
| висвітлює точку (x,y) заданим кольором
|
line (x1, y1, x2, y2)
| рисує лінію між двома точками
|
lineto (x,y)
| рисує лінію від поточної точки до точки (x,y)
|
linerel (dx, dy)
| рисує лінію від поточної точки з заданими приростами
|
rectangle (x1, y1, x2, y2)
| рисує прямокутник з заданими координатами діагонально протилежних вершин (лівої верхньої та правої нижньої)
|
bar (x1, y1, x2, y2)
| рисує зафарбований прямокутник
|
bar3d (x1, y1, x2, y2, <об¢ємна глибина>, true)
| рисує паралелепіпед
|
circle (x, y, R)
| коло з радіусом R і центром в точці (x,y)
|
arc (x, y, <початковий кут>, <кінцевий кут>, <радіус>)
| дуга
|
pieslice (x, y, <початковий кут>, <кінцевий кут>, <радіус>)
| зафарбований сектор
|
ellipse (x, y, <початковий кут>, <кінцевий кут>, <горизонт. радіус>, <вертик. радіус>)
| еліпс або дугу еліпса
|
setfillstyle (<заповнення>, <колір>)
| задає спосіб заповнення замкнутої області залежно від значення параметра заповнення: 0 – заповнення кольором фону, 1 – суцільне заповнення, 2 – заповнення товстими горизонтальними лініями,..., 11 – щільне заповнення точками
|
floodfill (x, y, <колір межі>)
| заповнює замкнену область, що містить точку (x,y)
|
closegraph
| закриває графічний режим
|
outtext (<текст>)
| виводить заданий текст з поточної позиції
|
outtextxy (x, y, <текст>)
| виводить текст у заданому місці
|
settextstyle (<шрифт>, <напрям>, <розмір>)
| задає вигляд символів, напрямок виведення: 0 – горизонтально, 1 – вертикально; розміри символів: 1, 2, 3
|
getmaxx
| повертає значення розміру екрана вздовж осі ОХ
|
getmaxy
| повертає значення розміру екрана вздовж осі OY
|
getcolor
| повертає значення поточного кольору
|
getcolor (x,y)
| повертає значення кольору точки (x, y)
|
getx, gety
| повертають координати поточного пікселя
|
Кольори задаються числами або англійськими назвами:
black=0 – чорний
| brown=6 – коричневий
| lightred=12 – яскр.-червоний
|
blue=1 – синій
| lightgray=7 – світло-сірий
| lightmagenta=13 – яскр.-фіолет.
|
green=2 – зелений
| darkgray=8 – темно-сірий
| yellow=14 – жовтий
|
cyan=3 – блакитний
| lightblue=9 – яскраво-синій
| white=15 – білий
|
red=4 – червоний
| lightgreen=10 – яскр.-зелений
|
|
magenta=5 – фіолетовий
| lightcyan=11- -яскр.-блакитний
|
|