Лабораторний
практикум

Лабораторна
робота №1

Тема
роботи:
ознайомлення
з ІСР Delphi 5.
Створення
найпростіших
додатків та
їх реалізація.

Мета
роботи:
навчитися
створювати
найпростіші
Windows-додатки.

Опис
програми:

Описаний
додаток
містить одну
нескладну процедуру.
Після
натискання
кнопки Button1 в мітку Label1
виводиться
фраза –
привітання з
днем
народження.

Хід роботи:

1.Завантажити
ІСР Delphi за
допомогою
головного меню
Windows та
ознайомитись
з ним.
Занотувати у
зошит склад
головного
меню.

2.Перенести
на порожню
форму кнопку
Button зі сторінки
Standard палітри
компонентів.
Для цього
спочатку
клацнути
мишею по
піктограмі
кнопки на
палітрі
компонентів
і потім
клацнути у
потрібному
місці на
формі.

3.Аналогічно
перенести на
форму зі
сторінки Standard
палітри
компонентів
мітку Label і
розташувати
її вище
кнопки. (див.
рис. 1).

Рис. 1. Розміщення
компонентів
на формі

4.Ознайомитись
з
властивостями
компонентів
Button і Label, а також
переліком
подій, на які
вони можуть
реагувати.

5.За
допомогою
миші зменшити
розмір форми
до розумних
меж, так як інших
компонентів
не буде.

6.Виділити
на формі
кнопку
(клацнути
мишею по
компонентові
Button1). Перейти
для роботи на
сторінку
властивостей
Інспектору
Об’єктів і
замінити
властивість
Caption кнопки, яка
за замовченням
дорівнює Button1,
на Пуск.

7.Виділити
на формі
мітку Label1, у
вікні
Інспектора
Об’єктів
розкрити
властивість
Font і встановити
такі
параметри
шрифту: System,
жирний курсив,
розмір 10 пт.,
червоний
колір.

8.Видалити
текст
властивості
Caption мітки Label1.

9.Виділити
на формі
кнопку Button1,
перейти на
сторінку
подій
Інспектора
Об’єктів і
двічі клацнути
мишею у вікні
праворуч від
імені події
OnClick. При цьому у
вікні
Редактора
Коду з’явиться
заготовка
процедури,
яка була створена
Delphi
автоматично:

procedure TForm1.Button1Click(Sender: TObject);

begin

end;

10.Між
зарезервованими
словами begin і end
ввести оператор,
який задає
надпис мітки
Label1:

Label1.Caption:=’З
днем
народження!’;

Тепер
створена
процедура в
цілому буде
мати
наступний
вигляд:

procedure TForm1.Button1Click(Sender: TObject);

begin

Label1.Caption:=’З
днем
народження!’;

end;

11.Зберегти
створений
додаток
командою File/Save all.

12.Виконати
команду Run/Run
(клавіша F9).
Після компіляції
на екрані
монітору
з’явиться
вікно створеного
додатку.
Після
натискання
на кнопку
“Пуск” над
нею
з’явиться
рядок тексту
“З днем народження!”.

13.Закрити
додаток за
допомогою
системної кнопки.

14.За
аналогією
створити
свій варіант
додатку-привітання
або
поздоровлення,
який би містив
дві кнопки і
один рядок
введення.

15.Оформити
звіт про
виконання
лабораторної
роботи.

Контрольні
запитання:

1.Які
елементи
входять до
складу ІСР Delphi?

2.Для
чого
призначене
головне меню?
Який його
склад?

3.Який
склад
палітри
компонентів
Delphi 5?

4.Що
являє собою
вікно коду?

5.Які
призначення
та склад
вікна
інспектора
об’єктів?

Лабораторна
робота №2

Тема
роботи:
створення
методів за
допомогою
візуальних
засобів.

Мета
роботи:
створити
проект, в
якому
генерується
метод, що є
відгуком на
подію OnDblClick.

Опис
програми:

Даний
додаток
демонструє
створення
методу, який
є відгуком на
подію OnDblClick.
Після
подвійного
клацання
мишею у рядку
редагування Edit1 в
ньому
з’явиться
введений
текст,
відповідно
до
створеного
методу Edit1DblClick.

Хід роботи:

1.Відкрити
новий
додаток і
зберегти
його в
окремій
папці.

2.Зменшити
розмір форми
до розумних
розмірів.

3.За
допомогою
миші
перенести на
порожню форму
компонент Edit
зі сторінки
Standard палітри
компонентів.
Збільшити
розмір цього
компоненту в
довжину до
кінців форми
(див. рис 2).

Рис. 2. Розміщення
компонентів
на формі

4.Ознайомитись
з
властивостями
компоненту Edit,
а також
переліком
подій, на які
він може реагувати.
Потрібне
занотувати у
зошит.

5.Очистити
значення
властивості Text
компоненту Edit1.

6.Клацнути
мишею по формі,
перейти до
Інспектора
Об’єктів і
замінити
властивість
Caption форми з Form1 на
Створення методів.

7.Для
того, щоб
форма завжди
з’являлася
всередині
екрану,
необхідно
змінити її
властивість
Position з poDesigner на poScreenCenter.

8.Змінити
властивість
форми BorderStyle з bsSizeable
на bsDialog. (При
цьому на
формі
зникнуть
кнопки
згортання і
розгортання
вікна і користувач
не зможе
змінювати її
розміри за
допомогою
миші).

9.Задати на
свій розсуд
колір форми
за допомогою
її
властивості
Color.

10.Виділити
на формі
компонент Edit1,
перейти на
сторінку подій
Інспектора
Об’єктів і
двічі
клацнути
мишею у вікні
праворуч від
імені події
OnDblClick.

11.Між
зарезервованими
словами begin і end
порожньої
процедури
ввести
наступний
код, який являє
собою
змістову
частину
методу:

Edit1.Text:=’Ви
двічі
клацнули у
рядку
редагування! ‘;

При цьому,
створена
процедура в
цілому матиме
такий вигляд:

procedure TForm1.Edit1DblClick (Sender: TObject);

begin

Edit1.Text:=’Ви
двічі
клацнули у
рядку
редагування!’;

end;

12.Зберегти проект
командою File/Save all.

13.Виконати
команду Run/Run
(клавіша F9).
Після компіляції
на екрані
монітору
з’явиться
вікно створеного
додатку під
назвою
“Створення методів”.
Після
подвійного
клацання
мишею у рядку
редагування
в ньому
з’явиться введений
текст,
відповідно
до описаного
методу Edit1DblClick.

14.Закрити
створений
додаток.

15.За
аналогією
створити
проект, в
якому генеруються
методи, що є
відгуками на
події OnClick і OnDblClick і
зберегти
його в
окремій
папці.

16. Оформити
звіт про
виконання
лабораторної
роботи.

Контрольні
запитання:

1.Що
таке RAD?

2.Що
означає
термін
“об’єктно-орієнтоване
програмування”?

3.Як
дізнатися, на
які події
реагує
компонент?

4.Що
являє собою
обробник
події?

5.На
які події
можуть
реагувати
компоненти Edit,
Button і Label?

Лабораторна
робота №3

Тема
роботи: використання
передачі
параметрів в
методи Delphi.

Мета
роботи:
навчитися
створювати
власні
процедури.

Опис
програми:

Пропонований
додаток
дозволяє за
допомогою
однієї
процедури
заповнити
два рядка редагування
і дві мітки.
Після
натискання
кнопки
“Виклик процедури”
фраза з рядка
введення Edit1
копіюється в
два рядки
редагування Edit2 і Edit3 і до
міток Label1
і Label2.

Хід роботи:

1.Відкрити
новий
додаток і
зберегти
його в окремій
папці.

2.Спроектувати
розташування
додатку
всередині
екрану і
заборонити
зміну його
розмірів.

3.Перенести
на порожню
форму три
рядки редагування
Edit, дві мітки Label
та одну
кнопку Button і
розташувати
всі компоненти
один під
одним.
Розміри
форми дещо
зменшити
(див. рис. 3).

Рис. 3. Розміщення
компонентів
на формі

4.Дещо
збільшити
розмір
кнопки Button1 і
значення її
властивості
Caption встановити:
Виклик
процедури
(параметри
шрифту
встановити
на свій
розсуд).

5.Задати
колір форми
(властивість Color) та її
ім’я:
Створення
процедур (властивість
Caption).

6.Очистити
значення
властивості Text
компонентів Edit1 – Edit3 і
властивості Caption
міток Label1
та Label2.

7.Двічі
клацнути по
компоненту Button1
і ввести код
передачі
параметра
процедури
між зарезервованими
словами begin і end:

CopyAll(Edit1.Text);

8.Створити
вручну
процедуру CopyAll,
яка призначена
для
копіювання
вмісту рядка
редагування
Edit1 до двох
інших рядків
редагування
Edit2, Edit3 та двох
міток Label1
і Label2.
Ця процедура
не являється
відгуком на
будь-яку
подію Delphi, тому
її треба
повністю
написати
вручну нижче
попередньої
процедури:

procedure TForm1.CopyAll(NewString :
String);

begin

Edit2.Text:=NewString;

Edit3.Text:=NewString;

Label1.Caption:=NewString;

Label2.Caption:=NewString;

end;

9.Заголовок
процедури,
який є методом
класу, треба
включити до
декларації
класу. Для
цього
необхідно у
розділі type програми
вручну
ввести такий
рядок:

procedure
CopyAll(NewString : String);

10.Зберегти
створений
проект.

11.Виконати
команду Run/Run (F9).
Після
компіляції
ввести у рядок
Edit1
словосполучення:
Створення
процедур. Після
натискання
кнопки
“Виклик
процедури”
це
словосполучення
скопіюється
в два інші
рядки
редагування
і дві мітки.

12.Закрити
створений
додаток
системною
кнопкою.

13.За
аналогією
придумати та
створити
свій варіант
передачі
параметрів в
методи Delphi і
зберегти
створений
проект в
окремій
папці.

14.Оформити
звіт про
виконання
лабораторної
роботи.

Контрольні
запитання:

1.З
яких
розділів
складається
головний модуль
проекту?

2.Що
називають
класом в Object Pascal?

3.Які
базові класи
вам відомі?

4.Що
таке метод?

5.Які
призначення
та основні
властивості
компонентів
Button, Label і
Edit?

Лабораторна
робота №4

Тема
роботи:
створення
проектів з
використанням
функцій
введення та
виведення
даних.

Мета
роботи: навчитися
створювати
проекти для
виконання
нескладних
обчислень.

Опис
програми:

Описаний
додаток
дозволяє
обчислювати
і виводити на
екран
результат
добутку двох чисел,
які
вводяться з
клавіатури
під час
роботи
програми.

Хід роботи:

1.Відкрити
новий
додаток і
зберегти
його в окремій
папці.

2.Спроектувати
розташування
додатку всередині
екрану і
заборонити
зміну його
розмірів.

3.Зменшити
розмір форми
до розумних
розмірів.

4.Перенести
на порожню
форму два рядки
введення Edit,
одну панель Panel,
одну кнопку Button
і три мітки Label
та
розташувати
їх певним
чином (див.
рис. 4).

Рис. 4. Розміщення
компонентів
на формі

5.Клацнути
мишею по
формі,
перейти до
Інспектора
Об’єктів і
задати
властивість
Caption форми:
Добуток
чисел.

6.Змінити
властивість
Caption кнопки Button1 на
Розрахунок.

7.Задати
властивість
Caption для міток Label1,
Label2, Label3 відповідно

Число 1, Число 2,
Результат.

8.Очистити
властивість
Caption панелі Panel1.

9.Значення
властивості
Text для рядків
введення Edit1 і Edit2
задати
рівним 1.

10.Двічі
клацнути по
компоненту Button1
і ввести такий
програмний
код:

Panel1.Caption:=Edit1.Text+’*’+Edit2.Text+

’=’+FloatToStr(StrToFloat(Edit1.Text)*

StrToFloat(Edit2.Text));

11.Створити
ярлички-підказки
для всіх
елементів
додатку (вони
будуть
з’являтися,
коли
користувач
затримає
покажчик
миші над
відповідним
елементом).
Для цього
необхідно:

-
виділити
компонент Edit1 і
до його
властивості
Hint ввести
пояснювальний
текст,
наприклад, Перший
множник;

-
встановити
властивість
ShowHint (показ
ярличка) у значення
true.

12.За
аналогією
створити
ярлички-підказки
для
компонентів
Edit2, Panel1, Button1 і Form1.

13.Зберегти
додаток
командою File/Save all.

14.Відкомпілювати
додаток і
запустити
його на
виконання.
Перевірити
створений
додаток у
роботі.

15.Закрити
додаток
системною
кнопкою.

16.За
аналогією
створити
додаток, який
би дозволяв
знаходити
суму,
різницю,
добуток і частку
двох чисел, а
також
підносити
число до
квадрату та
здобувати з
нього
квадратний
корінь.

17.Створений
додаток
зберегти в
окремій папці.

18.Оформити
звіт про
виконання
лабораторної
роботи.

Контрольні
запитання:

1.Що
означає
термін
наслідування?

2.Яким
чином можна
змінити
назву форми?

3.Що
називається
подією?

4.Які
основні
властивості
компоненту Panel?
На які події
він може
реагувати?

5.Пояснити
призначення
процедури FloatToStr(Value: Extended): string.

Лабораторна
робота №5

Тема роботи:
виконання
обчислень в Delphi.

Мета
роботи:
створити
додаток для
обчислення
площі трикутника
за формулою
Герона.

Опис
програми:

Додаток
призначений
для
розрахунку
площі
трикутника
за формулою
Герона.
Значення довжин
сторін
трикутника
вводяться
під час
роботи
програми.

Хід
роботи:

1.Відкрити
новий
додаток і
зберегти
його в окремій
папці.

2.Спроектувати
розташування
додатку
всередині
екрану і заборонити
зміну його
розмірів.

3.Перенести
на порожню
форму одну
кнопку BitBtn, чотири
мітки Label, три
рядка
введення Edit і
один редактор
тексту Memo та
зручно їх
розташувати
на формі (див.
рис. 5).

Рис. 5. Розміщення
компонентів
на формі

4.До
властивості
Caption форми
ввести:
Обчислення площі
трикутника
за формулою
Герона.

5.До
властивості
Caption міток Label
ввести такі
значення:

-
Label1 –
Довжина
сторони а: ;

-
Label2 –
Довжина
сторони b: ;

-
Label3 –
Довжина сторони
с: ;

-
Label4 –
Площа
трикутника
дорівнює: .

6.Очистити
значення
властивості
Text всіх компонентів
Edit.

7.Очистити
значення
властивість
Lines компоненту
Memo.

8.Виділити
кнопку BitBtn1 і
встановити
значення її
властивість
Caption –
Обчислити.

9.До обробника
події OnClick
кнопки BitBtn1
ввести такий
програмний
код :

a:=StrToFloat
(Edit1.Text);

b:=StrToFloat
(Edit2.Text);

c:=StrToFloat
(Edit3.Text);

p:=(a+b+c)/2;

s:=Sqrt(p*(p-a)*(p-b)*(p-c));

Str(s:6:2,St);

Memo1.Lines.Add (St);

10.До
розділу var
модуля
дописати:

a,b,c,p,s: extended;

st: string;

11.Для
всіх
елементів
додатку
зробити
ярлички-підказки.

12.Зберегти
та
відкомпілювати
створений додаток.

13.Перевірити
додаток у
роботі.

14.Закрити
створений
додаток.

15.За
аналогією
створити
додаток для
розрахунку
площі
поверхні та
об’єму
циліндра і зберегти
його в
окремій
папці.

16.Оформити
звіт про
виконання
лабораторної
роботи.

Контрольні
запитання:

1.Що
називається
компонентом?

2.Яким
чином можна
змінити
колір
символів шрифту
в Delphi?

3.Яке
призначення
та основні
властивості
компоненту Memo?
На які події
він може
реагувати?

4.Яке
призначення
процедури StrToFloat(const S: string): Extended?

5.Пояснити
рядок
програмного
коду:  Str(s:6:2,St).

Лабораторна
робота №6

Тема
роботи:
створення
проектів з
використанням
умовних
операторів.

Мета
роботи:
створити
додаток для
порівняння
двох цілих
чисел.

Опис
програми:

Пропонований
додаток
дозволяє
порівняти
два цілих
числа,
значення
яких
вводяться під
час роботи
програми.

Хід
роботи:

1.Відкрити
новий
додаток і зберегти
його в
окремій
папці.

2.Спроектувати
розташування
додатку всередині
екрану і
заборонити
зміну його
розмірів.

3.Перенести
на порожню
форму дві
кнопки BitBtn, чотири
мітки Label, два
рядки
введення Edit та
зручно розташувати
їх на формі
(див. рис. 6).

Рис. 6. Розміщення
компонентів
на формі

4.До
властивості
Caption форми
ввести:
Порівняння двох
цілих чисел..

5.До
властивості
Caption міток Label
ввести такі
значення:

-
Label1 –
Число 1: ;

-
Label2 –
Число 2: ;

-
Label3 –
Результат
порівняння: ;

6.Очистити
значення
властивості
Caption мітки Label4.

7.
Очистити
значення
властивості
Text всіх компонентів
Edit.

8.Виділити
кнопку BitBtn1 і
встановити
значення її
властивості
Caption – Порівняти
числа.
(Розміри кнопки
збільшити за
допомогою
миші).

9.До обробника
події OnClick
кнопки BitBtn1
ввести такий
програмний
код :

a:=StrToInt(Edit1.text);

b:=StrToInt(Edit2.text);

if a=b then Label4.Caption:=’Числа
рівні’ else

if a>b then
Label4.Caption:=’Більше
число ‘+Edit1.Text else

Label4.Caption:=’Більше
число ‘+Edit2.Text;

10.До
розділу var модуля
дописати:

a,b:integer;

11.Виділити
кнопку BitBtn2 і
встановити
значення її
властивості
Caption – Очищення.

12.До
обробника
події OnClick
кнопки BitBtn2
ввести такий
програмний
код :

Edit1.Clear;

Edit2.Clear;

Label4.Caption:=’
‘;

13.Для
всіх
елементів
додатку
зробити
ярлички-підказки.

14.Зберегти
та
відкомпілювати
створений додаток.

15.Перевірити
додаток у
роботі та
закрити його.

16.За
аналогією
створити
додаток для
визначення
найбільшого
з трьох
введених
чисел і зберегти
його в
окремій
папці.

17.Оформити
звіт про
виконання
лабораторної
роботи.

Контрольні
запитання:

1.Чим
відрізняються
візуальні
компоненти від
невізуальних?

2.Які
існують
варіанти
компіляції
додатків у Delphi?

3.У
чому
відмінність
між
конструкціями
if…then…  та  if…then…else…?

4.Яке
призначення
процедури StrToInt(const S: string): Integer?

5.Пояснити
рядок
програмного
коду:
Edit1.Clear.

Лабораторна
робота №7

Тема
роботи:
створення
проектів з
використанням
циклічних
операторів.

Мета
роботи:
створити
додаток для
обчислення
факторіала
числа.

Хід
роботи:

1.Відкрити
новий
додаток і
зберегти
його в окремій
папці.

2.Спроектувати
розташування
додатку всередині
екрану і
заборонити
зміну його розмірів.

3.Перенести
на порожню
форму дві
кнопки BitBtn, один
рядок
введення Edit,
дві мітки Label та
розмістити
їх певним
чином (див.
рис. 7).

Рис. 7. Розміщення
компонентів
на формі

4.Трохи
зменшити
розміри
форми і
змінити
значення її
властивості
Caption на
Обчислення
факторіала
числа.

5.Виділити
кнопку BitBtn1 і
змінити
значення її
властивості
Caption на
Обчислення.

6.Виділити
кнопку BitBtn2 і
змінити
значення її
властивості
Caption на
Очищення.

7.Очистити
значення
властивості
Text компоненту
Edit1 і значення
властивості
Caption мітки Label2.

8.Значення
властивості
Caption мітки Label1
встановити:
Число.

9.До
обробника
події OnClick
кнопки BitBtn1
ввести такий
програмний
код :

var

i,n:integer;

p:extended;

begin

n:=StrToInt(Edit1.Text);

p:=1;

for i:=1 to n do p:=p*i;

Label2.Caption:=’n!=
‘+ FloatToStr(p);

end;

10.До
обробника
події OnClick
кнопки BitBtn2
ввести такий
програмний
код:

Edit1.Clear;

Label2.Caption:=’
‘;

Edit1.SetFocus;

11.Для
всіх
елементів
додатку
зробити
ярлички-підказки.

12.Зберегти
та
відкомпілювати
створений додаток.

13.Перевірити
додаток у
роботі та
закрити його.

14.За
аналогією
створити
додаток для
обчислення
суми S=1+1/4+1/9+… і
зберегти
його в
окремій папці.

15.Оформити
звіт про виконання
лабораторної
роботи.

Контрольні
запитання:

1.Для
чого
використовують
циклічні
конструкції?

2.Які
види
циклічних
конструкцій
існують?

3.Що
називається
тілом циклу?

4.У
чому полягає
різниця між
циклами  Repeat…Until…  і  While…Do…?

5.Пояснити
призначення
рядка
програмного
коду:
Edit1.SetFocus.