
- •Лабораторна робота №1(3) Тема: Середовище програмування Turbo Pascal. Запуск і елементи вікна.
- •Теоретичні відомості.
- •Хід роботи
- •Контрольні питання
- •Лабораторна робота № 2(4) Тема: Структура програми Turbo Pascal. Оператори введення/виведення.
- •Теоретичні відомості
- •Хід роботи
- •Лабораторна робота №3 (5) Тема: Робота з арифметичними операціями в Turbo Pascal
- •Теоретичні відомості
- •Хід роботи
- •Контрольні питання
- •Лабораторна робота № 4 (6) Тема: Робота з умовним оператором
- •Теоретичні відомості
- •Хід роботи
- •Контрольні питання
- •Лабораторна робота № 5 (7) Тема: Створення та реалізація лінійних програм, використовуючи модулі crt та System.
- •Теоретичні відомості
- •Хід роботи
- •Контрольні питання
- •Лабораторна робота №6 (8) Тема: Побудова графічних примітивів
- •Теоретичні відомості
- •Хід роботи
- •Контрольні питання
- •Лабораторна робота №7 (9) Тема: Створення та реалізація найпростіших циклічних програм. Оператор повторення з параметром.
- •Теоретичні відомості
- •Хід роботи
- •Контрольні питання
- •Лабораторна робота № 8 (10) Тема: Створення та реалізація найпростіших циклічних програм. Оператор повторення з передумовою.
- •Теоретичні відомості
- •Хід роботи
- •Контрольні питання
- •Лабораторна робота № 9 (11) Тема: Створення та реалізація програм опрацювання табличних величин. Створення масивів, арифметичні дії з ними.
- •Теоретичні відомості
- •Хід роботи
- •Контрольні питання
- •Лабораторна робота № 10 (12) Тема: Створення та реалізація програм опрацювання табличних величин. Опрацювання масивів за умовою.
- •Теоретичні відомості
- •Хід роботи
- •Контрольні питання
- •Лабораторна робота № 11 (13) Тема: Створення та реалізація програм опрацювання табличних величин. Сортування таблиць методом прямого вибору.
- •Теоретичні відомості
- •Хід роботи
- •Контрольні запитання
- •Лабораторна робота № 12 (14) Тема: Створення та реалізація програм опрацювання табличних величин. Сортування таблиць методом бульбашок.
- •Теоретичні відомості
- •Хід роботи
- •Контрольні запитання
- •Лабораторна робота № 13 (15) Тема: Створення та реалізація програм з оператором вибору та циклом з післяумовою.
- •Теоретичні відомості Оператор repeat («цикл-до»)
- •Хід роботи
- •Контрольні запитання
- •Лабораторна робота № 13 Тема: Побудова графіків функцій в Turbo Pascal.
- •Теоретичні відомості
- •Хід роботи
- •Контрольні запитання
- •Лабораторна робота № 15 (17) Тема: Створення найпростіших програм обробки рядкових величин.
- •Теоретичні відомості
- •Хід роботи:
- •Контрольні питання
- •Лабораторна робота № 16 (18) Тема: Створення та реалізація програм, що використовують програми функції.
- •Теоретичні відомості
- •Хід роботи
- •Контрольні запитання
- •Лабораторна робота № 17 (19) Тема: Створення та використання програм, що містять підпрограми-процедури.
- •Теоретичні відомості
- •Хід роботи
- •Контрольні питання
- •Лабораторна робота №18 (20) Тема : Обробка файлових даних.
- •Теоретичні відомості
- •Хід роботи
- •Контрольні питання
- •Лабораторна робота № 19 (21) Тема: Використання процедур та функцій модуля Graph при розробці анімації.
- •Хід роботи
- •Контрольні питання
- •Лабораторна робота № 20 (22) Тема: Вивчення особливостей процедур та функцій модуля crt.
- •Хід роботи.
- •Контрольні питання
- •Додатки
Контрольні запитання
Як увести значення елементів масиву за допомогою оператора for?
Як виконується пошук елементів у масиві?
Які методи сортування масивів вам відомі?
У чому полягає різниця між методом прямого вибору i методом бульбашок?
В чому полягає різниця в описанні програми сортування між спаданням і зростанням елементів?
Як ви розумієте поняття спадання і зростання для символьних типів величин?
Лабораторна робота № 13 (15) Тема: Створення та реалізація програм з оператором вибору та циклом з післяумовою.
Мета: Уміти створювати та реалізовувати програми, що містять оператор вибору та циклом з післяумовою.
Теоретичні відомості Оператор repeat («цикл-до»)
Оператор repeat записується так:
Repeat
<тіло циклу>
until <умова закінчення циклу>
Цей оператор організує циклічні обчислення таким чином, що умова перевіряється після чергового виконання тіла циклу. Якщо вираз умови набуває значення True, повторення припиняються. Тому оператор repeat називають ще циклом з постумовою чи просто - «циклом-до» (робота циклу триває, поки не виконана умова завершення).
Оператор repeat (як i оператор while) дозволяв виконувати повторювані, дії коли числа повторень заздалегідь не відомо. Розглянемо як приклад спадну геометричну прогресію (q<l):
1, q, q2, ..q, . .
program Progression;
var
I, N: integer;
Q, Y, S, E: real;
begin
Writeln ('Введите Q’);
Readln (Q);
Writeln ('Введите границу для последнего учитываемого члена прогрессии');
Readln (E);
Y:=l;
S:=l;
repeat
begin
Y:=Y*Q;
S.:=S+Y;
end;
until Abs(Y)<=E;
Writeln ('Сумма = *,S:8:6);
Readln; end.
Хід роботи
Протабулювати (вивести значення функції) y=ax2+1 з кроком 2 на проміжку х є [-10;10].
Вирахувати значення суми , де f(x)=y3+5i
Вирахувати значення добутку
Створіть програму, яка малює кола випадковим розміром, кольором і радіусом.
Контрольні запитання
Як записуються умовні оператори в Паскалі?
Який вигляд мають вкладені умовні оператори?
Яке призначення оператора вибору?
Що таке селектор?
Як працює оператор вибору?
Як записується оператор циклу for у випадку зростаючих i спадних значень параметра циклу?
Який вигляд мае оператор «цикл-поки» у Паскалі?
Яка структура оператора «цикл-до»?
Чи існує такий випадок, коли «цикл до» не виконається ні разу? Відповідь обґрунтуйте.
Лабораторна робота № 13 Тема: Побудова графіків функцій в Turbo Pascal.
Мета: Уміти створювати та реалізовувати програми, що містять побудову графіків функцій.
Теоретичні відомості
Графічний екран дисплея складається з точок, що світяться різним кольором: пікселів. Кількість точок, що підтримує Turbo Pascal 640 по горизонталі і 480 по вертикалі, при чому точка з координатами (0;0) знаходиться в лівому верхньому куті екрану.
Для роботи з графічним екраном створений модуль Graph. Обов’язково потрібен файл egavga.bgi.
Графічний режим спочатку треба задати. Це виконують так:
Var driver, mode: integer; {для характеристики дисплея}
Begin
Driver:=detect; { стандартна стала}
Initgraph (driver, mode, ‘’); {задання графічного режиму}
If graphresult < > 0 then
Begin
Writeln(‘граф. режим не задано’);
Halt
End;
При побудові графіків функцій у ТР треба виходити з тих проблем, які виникають в співвідношенні декартової системи координат та графічним режимом роботи монітора. Є необхідність переведення декартових координат зі здвигом осі абсцис на 320 точок вправо, а осі ординат на 240 точок вниз, щоб початок координат бачити в центрі екрану. При чому для комп’ютера всі координати повинні бути цілими і додатними, а також прийняти до уваги зміну напрямку координати У.
При написанні програми спочатку малюють Декартові осі, а потім графіки задають промальовкою точок в циклі з параметром For зі зміною параметра від 1 до 640.
Розглянемо графік функції y=x. Це лінія, яка проходить через початок координат і знаходиться в І-й і ІІ-й чвертях декартової площини:
uses crt,graph;
var a,b,x:integer;
begin
a:=0;
initgraph(a,b,'{шлях до файлу egavga.bgi на диску}');
setcolor(2);
line(1,240,640,240);
line(640,240,630,245);
line(640,240,630,235);
outtextxy(300,10,'Y');
outtextxy(620,230,'X');
line(320,1,320,480);
line(320,1,315,10);
line(320,1,325,10);
for x:=1 to 640 do putpixel(x,240-(x-320),5);
readln;
closegraph;
end.
При побудові графіка функції y=x2 установлюють збільшення частоти точок для утворення злитої лінії графіка, тому значення аргументу беруть на порядок частіше:
for x:=1 to 640 do putpixel(x,trunc(240-sqr(x/10-320/10)),5);
При побудові графіка функції y=sin(x) установлюють розширення по Х, щоб розши-рити діапазон перегляду значень, з огляду на те, що функція приймає значення (-1;1) і при відсіканні дробної частини графік перетворюється в лінію:
putpixel(x,trunc(240- sin(x/50-320/50)*20),5);
При побудові tg(x) вирізають з графіка точку при якій cos(x)=0.
if sin((x/50-320/50))<>0 then
putpixel(x,trunc(240-cos(x/50-320/50)/sin(x/50-320/50)*20),5);