37829

Програмування підпрограм та модулів

Лабораторная работа

Информатика, кибернетика и программирование

Контрольні запитання: Що називають підпрограмою Які види підпрограму мові Pscl Ви знаєте Які види параметрів Ви знаєте Які види змінних Ви знаєте Що називають моделем Яка структура модуля Як організувати модуль у Delphi Теоретичні відомості. Створення модуля: Створюючи модуль варто звернути увагу на те що він не повинний мати своєї форми. Для створення модуля в меню File вибрати File New і потім у репозиторії – піктограму. Ім'я модуля можна перемінити на інше що відповідає внутрішньому змістові модуля наприклад Unit...

Украинкский

2013-09-25

41 KB

3 чел.

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

Тема роботи: Програмування підпрограм та модулів.

Мета роботи: вивчити прийоми створення підпрограм і модулів. Скласти і налагодити програму, що використовує зовнішній модуль Unit з підпрограмою.

Рекомендована література:

  1.  Бобровский С. И. Delphi 7. Учебный курс. - С.Пб. Питер, 2004. – 735 с.
  2.  Я. М. Глинский Інформатика. Алгоритмізація і програмування. Книжка 1. -  Львів, 2003. – 198 с.
  3.  Симонович С.В., Евсеев Г.А. Занимательное программирование:Delphi. – М.: АСТ-Пресс Книга; Издательство «Развитие», 2003. – 368 с.
  4.  Кен Хендерсон. Руководство Разработчика баз данных в Delphi 2. – К. Диалектика, 1997, - 543 с.

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

  1.  Що називають підпрограмою?
  2.  Які види підпрограму мові Pascal Ви знаєте?
  3.  Які види параметрів Ви знаєте?
  4.  Які види змінних Ви знаєте?
  5.  Що називають моделем?
  6.  Яка структура модуля?
  7.  Як організувати модуль у Delphi?

Теоретичні відомості.

Підпрограма - це певним чином оформлена група операторів, що може бути викликана будь-яка кількість разів з будь-якої точки основної програми. Підпрограми підрозділяються на процедури і функції. Процедури і функції можуть бути використані як формальні параметри підпрограм. Для цього визначається тип:

Type <ім'я>= function ([список формальних параметрів] ):<тип результату>;

або

Type <ім'я>= procedure ([список формальних параметрів]);

У мову Object Pascal убудований ряд найбільше часто уживаних процедур і функцій, що є частиною мови і викликаються без попереднього визначення в розділі описів.

Модуль - програмна одиниця, що автономно компілюється та включає в себе процедури, функції, а також різні компоненти розділу описів.

Хід виконання роботи.

Завдання: написати програму виведення на екран таблиці функцій, які оформити у видгляді процедури. Як функцію використовувати на вибір Tg(x), Ch(x) і sin (x).

Створення модуля: Створюючи модуль, варто звернути увагу на те, що він не повинний мати своєї форми. Система DELPHI при початковому завантаженні автоматично створює шаблон програми, що має у своєму  складі форму, файл проекту і т.д. Тому що модуль складається тільки з одного файлу, то необхідно перед його створенням знищити заготовок файлу проекту і форму. Для цього в меню File вибрати Close All, файл проекту не зберігати.

Для створення модуля в меню File вибрати File New, і потім у репозиторії – піктограму. У результаті буде створений файл із заголовком Unit Unit1. Ім'я модуля можна перемінити на інше, що відповідає внутрішньому змістові модуля, наприклад Unit Matfu;. Потім необхідно зберегти файл з ім'ям, що збігається з ім'ям заголовка модуля: Matfu.pas. Варто звернути увагу на те, що ім'я файлу повинне збігатися з ім'ям модуля, інакше DELPHI не зможе підключити його до іншої програми.

Підключення модуля: Для того щоб підключити модуль до проекту, необхідно в меню Project вибрати опцію Add to Project і вибрати файл, що містить модуль. Після цього в розділі Uses додати ім'я модуля, що підключається - MatFu. Тепер у проекті можна використовувати функції, що утримуються в модулі.

Панель діалогу буде мати вигляд, показаний на мал.8.1.

Рис.9..1

Тексти модуля і програми, що його викликає, приведені нижче.

Текст модуля:

Unit Matfu;

Interface

 Function Tg(x: extended) : extended;

//Функція для обчислення тангенса 

 Function Ch(x: extended) : extended; 

//Функція для обчислення гіперболічного синуса

Function Sin2(x: extended) : extended;

//функція для обчислення квадрата синуса

Implementation

 Function Tg;

begin

 Result := sin(x)/cos(x);

end;

 Function Ch;

 begin

   Result := (exp(x)-exp(-x))/2;

 end;

 Function Sin2;

 begin

   Result := sqr(sin(x));

 end;

end.

Текст зухвалої програми:

Unit Unit1;

Interface

Uses

 Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, Buttons, ExtCtrls, MatFunc;

type

 TForm1 = class(TForm)

   Label1: TLabel;

   Label2: TLabel;

   Label3: TLabel;

   Edit1: TEdit;

   Edit2: TEdit;

   Edit3: TEdit;

   Memo1: TMemo;

   Button1: TButton;

   Button2: TButton;

   RadioGroup1: TRadioGroup;

   Procedure FormCreate(Sender: TObject);

   Procedure Button1Click(Sender: TObject);

   Procedure Button2Click(Sender: TObject);

 private

   { Private declarations }

 public

   { Public declarations }

 end;

type

 func = function(x:extended) : extended;

var

 Form1: TForm1;

implementation

{$R *.DFM}

procedure TForm1.FormCreate(Sender: TObject);

begin

 Edit1.Text := '0';

 Edit2.Text := '2';

 Edit3.Text := '0.2';

 Memo1.Clear;

 RadioGroup1.ItemIndex := 0;

end;

procedure Tabl(f: func; xn, xk, h: extended);

var

 x, y : extended;

begin

 x := xn;

 Repeat

   y := f(x);

   Form1.Memo1.Lines.Add('x=' + FloatToStrF(x,fffixed, 8,2)+

                       '  y=' + FloatToStrF(y,fffixed, 8,2));

   x := x + h;

 Until (x > xk);

end;

procedure TForm1.Button1Click(Sender: TObject);

var

 xn, xk, h : extended;

begin

 xn := StrToFloat(Edit1.Text);

 xk := StrToFloat(Edit2.Text);

 h  := StrToFloat(Edit3.Text);

 Case RadioGroup1.ItemIndex of

   0 : Tabl(tg, xn, xk, h);

   1 : Tabl(ch, xn, xk, h);

 end;

end;

procedure TForm1.Button2Click(Sender: TObject);

begin

 Halt

end;

end.

Індивідуальні завдання.

Виберіть варіант задачі з завдань, приведених у роботі 4. Передбачите можливість вибору функції, для якої буде розраховуватися таблиця. Функції помістіть в окремий модуль. Викликати обрану функцію повинна процедура, що використовує як вхідний параметр ім'я відповідної функції.


 

А также другие работы, которые могут Вас заинтересовать

75557. Тарас Шевченко — великий український поет 90 KB
  Підготувати учнів до самостійного висловлювання за запропонованою ситуацією на основі змісту прочитаного тексту. Наука і культура. Дозвілля. Science and Culture. Free Time.
75558. Книги в нашому житті, Контроль позакласного читання 21.98 KB
  Обладнання: підручник Reding Preferences НО1 текст It is interesting to red different kinds of booksrdquo;. Т: We re going to discuss the topic Books in our life . By the end of the lesson you should be ble: to prticipte in common converstionl exchnges bout books in your life; to identify detils from the given text; to discuss tsk 3 of your Home Reding.Т: Do you like reding Do you spend much time reding Not counting mgzines for teengers how much do you red out of school One book week One fortnight month One now nd gin Wht kind...
75559. Канада. Перші українці в Канаді, План-конспект уроку з англійської мови для учнів 9-х класів 56.5 KB
  Мета: Перевірити рівень навчальних досягнень учнів за вивченими темами: Cnd. The first Ukrinins in Cnd . Т: We\'ve got test tody to check your skills in communictive writing bout Cnd nd the first Ukrinins in Cnd. By the end of the lesson you will be ble: to mtch the English words word combintions nd sentences with their Ukrinin equivlents Level 1 2; to put the questions to show your bility of operting fcts bout Cnd nd the first Ukrinins in Cnd Level 3; to write bout Cnd nd the first Ukrinins in Cnd to check your skills in communictive...
75560. Об’єднане Королівство Великобританії та Північної Ірландії. Географічне положення 59.5 KB
  Explin how you understnd these syings Wht is the min sense of them б Т: Listening to joke Fthers nd sons . Wht is the resemblnce between Kyiv Ottw nd London They re the cpitls of the countries. Blck Red White Yellow wht word not colour cn be dded to ech of these to put them ll in the sme group Se Wht countries mke up Gret Britin Englnd Scotlnd nd Wles. Wht nother nme does the English Chnnel hve L Mnche Is the UK n Europen country Yes it is.
75561. Економічний розвиток Великобританії, План-конспект уроку з англійської мови для учнів 9-х класів 61 KB
  Tody we re going to tlk bout the economicl development of Gret Britin. Jigsw sentences: The crds re mixed Gret Britin in the world one of the leding countries is fmous Gret Britin for its woolen industry hs got highly developed industry Gret Britin II. Активізація ЛО теми The industry of Gret Britin nd Northern Irelnd .T: Gret Britin is fmous for.
75562. Україна та Великобританія, План-конспект уроку з англійської мови для учнів 9-х класів 61.5 KB
  Обладнання: підручник географічні карти Великобританії та України Odd One Out на дошці Red the questions bout Ukrine HO1 Fill in the missing informtion H02 Pick up the sentences Ho3. Т: Tody we re going to tlk bout the geogrphicl position nd the climte of Ukrine nd Gret Britin. By the end of the lesson you should be ble: to understnd the gist nd detils of the text for listening; to give comprtive chrcteristics of the geogrphicl position nd climte of Ukrine nd Gret Britin; to discuss Tsk 4 of your Home Reding. Аудіювання тексту...
75563. Великобританія. Осінь в Англії. Минулий доконаний час 65.5 KB
  Обладнання: підручник граматична таблиця Pst Perfect Tense Exmple Sitution HO1 висловлювання P. We hve to revise the grmmr mteril the Pst Perfect Tense. Drw on the bord Noughts nd crosses grid with nine ctegories like this: Pst Perfect I hd done. Повторення та активізація граматичного матеріалу: Pst Perfect Tense.
75564. Великобританія. Уельс, Контроль позакласного читання 76 KB
  Обладнання: підручник текст для аудіювання rthur Conn Doyle HO1 True or Flse H02 H04 Put the events in the order H03 Interesting fcts bout Wles H05. Wles. Предявлення тексту для читання Wles вир.Т: Wht do you think Why do the English like to spend their holidys in Wles Wles is known s lnd of songs why 2 WhileReding ctivities.
75565. Лондон — столиця Великобританії 74.5 KB
  Ввести та активізувати у мові учнів ЛО теми «Лондон — столиця Великобританії». Практикувати учнів у читанні тексту з метою отримання загального уявлення (skimming) та максимально повного й точного розуміння всієї інформації, що міститься в тексті (scanning). Підготувати учнів до самостійного висловлювання про Лондон на основі змісту прочитаного тексту,