Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
33
Добавлен:
28.03.2016
Размер:
43 Кб
Скачать

ЛАБОРАТОРНА РОБОТА №9

Тема: Побудова графіків функцій.

Конструювання інтерфейсу користувача.

1. Мета роботи

Дослідити роботу, призначення, форму запису та особливості вживання функцій мови програмування Object Pascal при побудові графіків функцій. Засвоїти методику використання компонентів: Label, Edit, RadioGroup і Button із розділу Standard та компонентів Chart і CheckListBox із розділів відповідно TeeChart і Additional Палітри Компонентів в середовищі Delphi для конструювання інтерфейсу користувача.

2. Постановка завдання

Розробити проект з необхідних компонентів Delphi та оброблювач події мовою Object Pascal відповідно до заданого варіанта. Створити працездатну програму з необхідним інтерфейсом.

3. Програма роботи

3.1. Записати запропонований викладачем варіант завдання з Додатка 1.

3.2. Ознайомитись з рекомендованою літературою та конспектом лекцій.

3.3. Програмування задачі:

– розробити алгоритм;

– скласти програму розв’язання задачі мовою Object Pascal.

3.4. Розв’язання задачі на ПЕОМ.

На ПЕОМ набрати, відлагодити та розв’язати складену програму.

3.5. Оформлення звіту.

Звіт повинен містити:

– номер лабораторної роботи та її назву;

– умову задачі та дані свого варіанта;

– лістинг (або рукопис) програми з коментарями до кожної

використаної змінної та скріншоти форми проекту;

– результати розрахунку задачі;

– висновки.

Приклад.

Побудувати графік функції y=sin(x) на відрізку [а,b].

Розв’язання

1. Створимо нову папку для проекту.

2. Запустимо Delphi.

3. Зі сторінки Additional Палітри Компонентів розташуємо на формі компонент CheckListBox1, а із розділу TeeChart - Chart. Зі сторінки Standard Палітри Компонентів розташуємо на формі три компоненти Label, три компоненти Edit, компоненти RadioGroup і Button (рис. 11).

4. Для міток Label1, Label2, Label3 установимо властивості Caption рівними: 'A =', 'B =' і 'N =' відповідно.

5. Для компонентів Edit1, Edit2 і Edit3 установимо значення властивості Text рівним порожньому рядку.

6. Кнопці Button1 установимо властивість Caption рівною 'Розв’язання'.

7. Клікнемо правою кнопкою миші на компонент Chart1, та виберемо пункт Edit Chrt… Контекстного меню. З'явиться вікно Редактора Діаграм. У багатосторінковому вікні Редактора виберемо сторінку Chart, а на ній – сторінку Series.

8. Клацнемо по кнопці аdd. З'явиться нове вікно, в якому виберемо тип графіка – Line.

9. Клацнемо по кнопці Title і у вікні, що з'явилося, введемо назву графіка – y = sin(x).

10. Перейдемо на сторінку Legend і в полі Legend Style установимо значення Series Names.

11. Перейдемо на сторінку Titles і у вікні багатосторінкового редактора змінимо загальну назву області побудови графіків з TChart на Графік функції синус.

12. Закриємо вікно Редактора Діаграм (кнопка Close).

13. У вікні Інспектора Об'єктів для компонента Chart1 виберемо властивість View3D і установимо його значення рівним false.

14. Для компонента CheckListBox1 виберемо у вікні Інспектора Об'єктів властивість Items, клацнемо мишею по кнопці з трьома крапками й у вікні, що з'явилося, String List Editor введемо рядок:

y = sin(x)

15. Для компонента RadioGroup1 у властивість Items введемо два рядки:

  • плоске

  • об'ємне

16. Для компонента RadioGroup1 установимо значення властивостей:

Caption – 'Зображення'

ItemIndex – 0

17. У розділі implementation модуля за директивою компілятора {$R*.dfm} розмістимо підпрограму-функцію для обчислення синуса:

function f1(a: real):real;

begin

result:= sin(a);

end;

18. Створимо оброблювач події OnClick для кнопки Button1:

procedure TForm1.Button1Click(Sender: TObject);

var

x, a, b, h: real;

i, N: integer;

begin

CheckListBox1.Checked[0] := true;

Series1.Clear;

a:=StrToFloat(Edit1.Text);

b:=StrToFloat(Edit2.Text);

N:=StrToInt(Edit3.Text);

h:= (b-a)/N;

for i:=0 to N do

begin

x:= a+h*i;

Series1.AddXY(x,f1(x), ' ', clRed);

end;

end;

19. Створимо обробник події OnClick для CheckListBox1:

procedure TForm1.CheckListBox1Click(Sender: TObject);

begin

if CheckListBox1.Checked[0] then

Series1.Active := true

else

Series1.Active := false;

end;

20. Створимо оброблювач події OnClick для RadioGroup1:

procedure TForm1.RadioGroup1Click(Sender: TObject);

begin

case RadioGroup1.ItemIndex of

0: Chart1.View3D := false;

1: Chart1.View3D := true;

end;

end;

21. Збережемо програму і запустимо її на виконання.