Поняття про структурне програмування. Підпрограма. Типи підпрограм. Алгоритми функцій та їх використання



Скачати 46.25 Kb.
Дата конвертації02.01.2017
Розмір46.25 Kb.
Урок №1 за темою процедури та функції.

Тема: Поняття про структурне програмування. Підпрограма. Типи підпрограм. Алгоритми – функцій та їх використання.

Урок-лекція

Мета: ознайомлення з поняттям допоміжних алгоритмів, поняттям формальних та фактичних параметрів, області дії змінних; формування навичок оформлення підпрограм мовою Паскаль, виховання інформаційної культури.

Хід уроку

І.Теоретичний матеріал.

Підпрограма – іменована, логічно закінчена група операторів яку можна викликати для виконання будь-яку кількість разів із різних місць програми.

У мові Паскаль є два види підпрограм



1. Підпрограми –процедури – це незалежна пойменована частина програми, призначена для виконання певних дій. Вона складається з тіла і заголовка. Ім’я процедури не може входити до виразів як операнд.

2. Підпрограми –функції - це незалежна пойменована частина програми, призначена для виконання певних дій, передає в точку виклику результат своєї роботи, ім’я функції може входити до виразів як операнд.


Опис підпрограми функції

Function <назва>: <тип функції>;



<Розділ описів функції>

Begin


<Розділ команд серед яких є така:

Назва:=вираз>

End;

Особливості функції

Вона повертає в точку виклику один результат – значення функції. Цей результат присвоюється назві функції. Тобто назва функції є змінною. У функції всі параметри це вхідні дані . Тому у списку формальних параметрів слово var не використовується.



Підпрограми – функції використовують з метою спрощення головної програми, для звертання до групи команд, які часто повторюються, для використання в інших програмах чи іншими користувачами, якщо результатом є одне значення.
Назву процедурі та функції дає користувач

ІІ. Використання підпрограм –функцій.

1. Побудуємо функцію, яка переводити долари в гривні.

Function gruvni(dolar:integer):real;

Begin

Gruvni:=5.05* dolar



End;

2. Обчислити n!, де n – невід’ємне число.( n!=1*2*3...*n)



Function factorial(n:integer):integer;

Var p,d :integer;

Begin

d:=1;

If n>0 then

For p:=1 to n do

d:=p*d;

factorial:=d

end;

2. Протабулювати функцію у=х²sin(2x) на проміжку[0;pi] з кроком h=0,1. Задану функцію описати як підпрограму функцію



Program NoName;

Var x,b,h : real;

Function y(x:real):real;

Begin

y:=x*x*sin(2*x)

end;

Begin

x:=0; b:=pi; h:=0.1;

WriteLn( 'x','y(x)' );

While x<=b+h/2 do

begin

writeln (x:4:1,y(x):6:2);

x:=x+h

end;

end.

3. Складіть програму для визначення скількома способами можна призначити будь-яких трьох учнів у вашому класі черговими. (Застосуйте формулу С=n!/(m!(n-m)!), використаєте підпрограму –функцію для обчислення факторіалів).

Загальний вигляд підпрограми-процедури.

Procedure <назва процедури>

<розділ описів і оголошень процедури>

begin

<розділ команд процедури>

end;

Процедури записують у розділі описів головної програми.

Загальний вигляд головної програми:

Program <назва головної програми>



<Роздiл описів і оголошень>

<Процедура 1>;

<Процедура 2>;

........


Begin

<Розділ команд , який містить

Виклик процедури 1

Виклик процедури 2>

........


End;

Розділ команд головної програми складається в основному з викликів процедур. Виклик процедурце команда , яка збігається з назвою процедури.

В процедурах змінні є локальні і глобальні

Локальна змінна діє лише в процедурі, в якій вона описана

Глобальна змінна – діє в усіх процедурах вони описані в головній програмі.

Формальні і фактичні параметри використовують для обміну даними між процедурами і головною програмою

Список формальних параметрів записують у круглих дужках після назви процедури

Procedure<назва>(<список формальних параметрів>);



Команда виклику процедури має такий загальний вигляд

<назва>(<список фактичних параметрів>);

  1. Дія команди виклику процедури.

  2. Активізується процедура з заданою назвою.

  3. Значення фактичних параметрів (вхідні дані) надаються відповідним формальним параметром процедури.

  4. Виконується процедура. Результати виконання процедури присвоюються фактичним параметрам у команді виклику. Після цього виконуватиметься наступна команда, що йде за командою виклику.

Створені користувачем підпрограми можна використовувати в інших програмах, для цього створюються бібліотеки підпрограм.

Файл бібліотечних програм має розширення tpl, наприклад zadaha.thl. підпрограми можуть бути об’єднані в модулі – файли з розширенням tpl. Модуль який створює користувач має такий загальний вигляд:

Unit<назва модуля>;

Interface



<розділ описів>

Implementation



<тексти підпрограм користувача>

Begin


<блок додаткових команд, що виконується першим>

End.


ІІ. Розв’язання задач.

Розглянемо приклади написання програм:

Що буде виконувати така програма

Program a;

Procedure stars(n:integer);

Var i: integer;

Begin

For i:=1 to n do write(‘*’); writeln



End;

Begin stars(5); stars(10); stars(15);

End.

(*****


**********

***************)



Розв’язування програм з збірника

ІІІ. Запитання для перевірки засвоєння знань.

  1. Що таке підпрограма?

  2. Що таке процедура?

  3. Хто дає назву процедурі?

  4. Де записують процедури?

  5. Загальний вигляд підпрограми-процедури?

  6. Що таке бібліотека підпрограм?

ІV. Домашнє завдання: вивчити конспект, написати що з’явиться в разі виконання програми

Program a;

Procedure в;

Var i: integer;

Begin

For i:=1 to 3 do write(‘МНВК’);



End;

Begin в;


End.


База даних захищена авторським правом ©lecture.in.ua 2016
звернутися до адміністрації

    Головна сторінка