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


 

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

21014. РАСЧЕТ Параметров антенн 51 KB
  ЗАДАНИЕ 1: Из трех параметров антенны известны два : сопротивление излучения R=4360 Ом КНД=310 Определить значение ненормированной характеристики направленности F . Решение D = 120 F2D;jmax RS Тогда Ответ :F=1061289 ЗАДАНИЕ 2: Определить эффективную площадь антенны по заданным частота f =8000 МГц КНД D = 4555 дБ Решение D = 4pSэфф l2 l = с f =00375 м Тогда Ответ:Sэфф =1961819 м2 ЗАДАНИЕ 3: Известны: эффективная площадь антенны Sэфф = 7200 м2 сопротивление излучения R = 4400 Ом Определить действующую длину антенны Lд...
21015. РАСЧЕТ Параметров антенн. Расчет характеристик и параметров антенн 99.5 KB
  Общие сведения Реальные антенны излучают в окружающее пространство в различных направлениях неодинаково. Зависимость напряженности поля излучаемого антенной измеренная на достаточно большом но одинаковом расстоянии от антенны от углов наблюдения D и j называется характеристикой направленности. Коэффициент направленного действия показывает во сколько раз необходимо увеличить мощность излучения при замене направленной антенны ненаправленной для сохранения прежней напряженности поля в точке приема. Эффективной или действующей площадью Sэфф...
21016. РАСЧЕТ Параметров СИММЕТРИЧНОГО И НЕСИММЕТРИЧНОГО ВИБРАТОРОВ 61 KB
  Донецк 2011 год Цель работы: расчет характеристик и параметров симметричного и несимметричного вибраторов Варианты индивидуальных заданий Задание 1.4 м диаметр симметричного вибратора 2r =6 мм Решение =140186м W=276lg  r68 Ом при l = 0. Определить волновое сопротивление если известны: частота F= 1000 кГц длина плеча l =150 м диаметр несимметричного вибратора 2r =2 мм Решение =300м W=138lg  r34 Ом при l = 0.
21017. РАЗРАБОТКА ОТЧЕТОВ В VISUAL FOXPRO 130 KB
  При разработке отчета выполняются следующие основные операции: создание отчета; настройка отчета; создание среды окружения отчета; сохранение отчета; модификация отчета; просмотр отчета; печать отчета. Кроме вышеуказанных операций при разработке отчета производится создание и настройка объектов размещаемых в отчете. Отдельно также рассмотрены просмотр и печать отчета выполняемые программным путем в ходе работы приложения. Разработка отчета Создание отчета В Visual FoxPro для создания отчетов можно использовать следующие...
21018. РАЗРАБОТКА ЭКРАННЫХ ФОРМ В VISUAL FOXPRO 297.5 KB
  Объектная организация пользовательского интерфейса Формы являются основой пользовательского интерфейса обеспечивая ввод просмотр и изменение информации выполнение служебных и вспомогательных функций. В зависимости от организации диалога формы могут запускаться автономно либо иерархически вызываться друг из друга. Использование среды окружения позволяет упростить связывание элементов формы с БД задать специфичные для формы свойства данных изменить связи между таблицами для работы в форме. Содержит объекты формы.
21019. ВЫБОРКА ДАННЫХ В VISUAL FOXPRO 114 KB
  ОПЕРАТОР ВЫБОРКИ SELECTSQL Оператор выборки SELECT предназначен для описания и исполнения запросов к БД. РАБОТА С КОНСТРУКТОРОМ ЗАПРОСОВ Конструктор Запросов предназначен для создания оператора SELECT путем автоматизированного формирования фраз оператора. Открытие Конструктора Запросов Запуск Конструктора Запросов для создания нового запроса может быть выполнен: а нажатием кнопки New окна проекта при выбранной группе Queries. При выполнении указанных действий открывается окно Конструктора Запросов и окно выбора таблиц.
21020. РЕАЛИЗАЦИЯ БАЗЫ ДАННЫХ В VISUAL FOXPRO 149 KB
  idx предназначенными для хранения созданных для таблицы индексов. Каждый индекс указывает последовательность следования записей таблицы в соответствии с заданным для него ключевым выражением. При наличии главного индекса строки таблицы отображаются и обрабатываются в порядке определяемом данным индексом в противном случае – в порядке их физического следования в таблице. Конструктор базы данных позволяет создавать и модифицировать таблицы входящие в базу данных определять для таблиц индексы и требования к данным.
21021. НАЧАЛЬНОЕ ЗНАКОМСТВО С VISUAL FOXPRO 172.5 KB
  ЗАПУСК VISUAL FOXPRO Запуск Visual FoxPro выполняется стандартными для Windows способами. Командная строка используемая при этом может быть дополнена параметрами: а Игнорируются установки записанные в Регистре Windows и имеющийся файл конфигурации C file Определяет имя и путь к файлу конфигурации который должен использоваться при запуске СУБД или приложения Visual FoxPro. D file Определяет имя и путь к файлу библиотеки RunTime DLL L file e Определяет имя и путь к файлу ресурсов R Обновляет информацию в Регистре Windows...
21022. РАЗРАБОТКА МЕНЮ В VISUAL FOXPRO 111 KB
  Виды меню в Visual FoxPro и работа с ними В Visual FoxPro могут быть разработаны 2 основных вида меню: горизонтальное меню и всплывающее меню. Горизонтальное меню может создаваться для главного окна или форм верхнего уровня и представляет собой строку меню размещенную в верхней части окна или формы. Горизонтальное меню главного окна может заменять системное меню Visual FoxPro или сочетаться с ним.