Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь FAQ Написать работу КАТЕГОРИИ: АрхеологияБиология Генетика География Информатика История Логика Маркетинг Математика Менеджмент Механика Педагогика Религия Социология Технологии Физика Философия Финансы Химия Экология ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Тема роботи: Програмування підпрограм та модулів.↑ ⇐ ПредыдущаяСтр 13 из 13 Содержание книги
Поиск на нашем сайте
Мета роботи: вивчити прийоми створення підпрограм і модулів. Скласти і налагодити програму, що використовує зовнішній модуль Unit з підпрограмою. Рекомендована література: 1. Бобровский С. И. Delphi 7. Учебный курс. - С.Пб. Питер, 2004. – 735 с. 2. Я. М. Глинский Інформатика. Алгоритмізація і програмування. Книжка 1. - Львів, 2003. – 198 с. 3. Симонович С.В., Евсеев Г.А. Занимательное программирование:Delphi. – М.: АСТ-Пресс Книга; Издательство «Развитие», 2003. – 368 с. 4. Кен Хендерсон. Руководство Разработчика баз данных в Delphi 2. – К. Диалектика, 1997, - 543 с. Теоретичні відомості. Підпрограма - це певним чином оформлена група операторів, що може бути викликана будь-яка кількість разів з будь-якої точки основної програми. Підпрограми підрозділяються на процедури і функції. Процедури і функції можуть бути використані як формальні параметри підпрограм. Для цього визначається тип:
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. Тепер у проекті можна використовувати функції, що утримуються в модулі. Панель діалогу буде мати вигляд, показаний на мал.14.1.
Рис.14.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. Контрольні запитання: 1. Що називають підпрограмою? 2. Які види підпрограму мові Pascal Ви знаєте? 3. Які види параметрів Ви знаєте? 4. Які види змінних Ви знаєте? 5. Що називають моделем? 6. Яка структура модуля? 7. Як організувати модуль у Delphi? Індивідуальні завдання. Виберіть варіант задачі з завдань, приведених у роботі 12. Передбачите можливість вибору функції, для якої буде розраховуватися таблиця. Функції помістіть в окремий модуль. Викликати обрану функцію повинна процедура, що використовує як вхідний параметр ім'я відповідної функції.
|
||||
Последнее изменение этой страницы: 2016-04-18; просмотров: 164; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.118.37.85 (0.006 с.) |