Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Interface

Begin

Вкладена процедура з фактичними параметрами

Begin

Процедура користувача

 

Розробимо сигнатуру процедури розрахунку об’єму (за рисунком 2.1). Вважатимемо що і об’єм і довжина ребра величини дійсного типу. Тоді у списку формальних параметрів процедури Value матимемо два параметри: V (значення об’єму) і L (довжина грані). У процедур розрізняють параметри-аргументи (інакше параметри-значення) – це вхідні дані для процедури і параметри-результати (інший термін параметри-змінні). Завдяки параметрам – результатам у програму повертають результати роботи процедури. Перед списком параметрів результатів записують слово var. Оскільки у формулі обчислення об’єму куба аргументом є довжина гран L і, а від неї залежить власне змінна - V об’єм куба, то сигнатура виглядатиме так:

 

Value(var V: real; L: real);

 

У тілі процедури треба розмістити функціональну залежність параметра-змінної від параметра – аргумента: V:=L*L*L;

Тож у цілому процедура у розділі реалізації виглядатиме так:

 

procedure Value(var V: real; L: real);

V:=L*L*L;

end;

 

 

Робота із вкладеною процедурою є аналогчіна до роботи із вкладеною функцією. Наприклад, якщо потрібно створити прикладну програму для обчислення об’єму куба, то слід оголосити два ідентифікатори дійсного типу: с, d. Добре б їх оголосити, як локальні змінні у процедури включення кнопки розрахунку Button1. Дані довжини вноситимуться через вікноце Edit1, а Edit2 служитиме для виводу значення об’єму V.

 

procedure TForm3.Button1Click(Sender: TObject);

var c,d,cd:integer;

s1: string;

Val(Edit1.Text,d,cd);

value (c,d);

str (c,s1);

Edit2.Text:=s1;

end;

 

На рисунку 2.20 візуалізація прикладної програми розрахунку об’єму куба.

Можна не прописувати процедуру Value у іншому модулі, а задекларувати і прописати прямо у модулі де прописана форма Form3. Тоді не потрібно нічого долучати до списку використаних модулів (рисунок 2.19).

 

 

 

Рисунок 2.19 Модуль коду прикладної програми розрахунку об’єму куба.

 

Рисунок 2.20 Візуалізація прикладної програми розрахунку об’єму куба.

 

Котрольні питання та задачі до теми лекції

1. Виберіть серед перелічених нижче відповідей, ті котрі на Вашу думку можуть вірно охарактеризувати термін Round:

- Процедура

- Стандартна процедура

- Функція користувача

- Властивість форми

- Стандартна властивість форми

- Стандартна функція

2. Виберіть серед перелічених нижче відповідей, ті котрі на Вашу думку можуть якнайповніше охарактеризувати термін Show:

- Властивість форми

- Стандарна функція

- Функція користувача

- Процедура, яка належить об’єкту

- Стандартна процедура форми

3. Знайдіть повний перелік помилок, які допущені у даному програмному фрагменті:

Procedure T(a:real; var f: integer): Boolean;

Uses unit2;

a) Зарезервовані слова, слід писати з малої буки.

Розділ uses повинен передувати слову interface;

b) Розділ uses повинен передувати слову interface; процедура Т не може бути типу Boolean;

c) процедура Т не може бути типу Boolean; параметр f не може бути цілочисельним;Розділ Uses повинен бути відразу після слова Interface.

d) Розділ Uses повинен бути відразу після слова Interface;

Процедура має бути без типу.

 

4. Визначіть до якого типу відноситься параметр - змінна у наступному програмному фрагменті:

 

Function F(var h:Integer; y: real): real;

 

a) параметр – змінна цілочисельного типу;

b) параметр – змінна дійсного типу;

c) параметр – змінна не має типу;

d) параметр – змінна не повинен бути присутній у цій сигнатурі;

e) параметр – змінна не може визначатися ідентифікатором з пробілом попереду;

5. Виберіть найбільш повну відповідь про програмний код val(edit2.text,a,cod) у наступному програмному фрагменті:

 

procedure TForm3.Button1Click(Sender: TObject);

var у,о,cd:integer;

s1: string;

<== предыдущая лекция | следующая лекция ==>
Процедура | Процедура insert
Поделиться с друзьями:


Дата добавления: 2014-01-07; Просмотров: 288; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.017 сек.