русс | укр

Мови програмуванняВідео уроки php mysqlПаскальСіАсемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование


Linux Unix Алгоритмічні мови Архітектура мікроконтролерів Введення в розробку розподілених інформаційних систем Дискретна математика Інформаційне обслуговування користувачів Інформація та моделювання в управлінні виробництвом Комп'ютерна графіка Лекції


Розробка програм з використанням підпрограм Pascal


Дата додавання: 2014-05-08; переглядів: 1015.


Приклад 1. Для трьох введених цілих чисел знайти їх середнє арифметичне. Знаходження середнього арифметичного оформити у вигляді процедури.

 

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

 

Program PAR; Var a,b: integer; S: real; Procedure avrg(x,y:integer; VAR S:real); Begin S:= (x+y)/2; End;   Begin write (‘введи два числа’); readln (a,b); avrg (a,b,s); writeln (‘середнє арифметичне чисел’, а:5,b:5,’дорівнює’, S:10:2); End.  

       
   
 

 

 


Приклад 2. Для трьох введених цілих чисел знайти їх середнє арифметичне. Знаходження середнього арифметичного оформити у вигляді функції.

 

 

Program PAR; Var a,b: integer; S: real; Function avrg(x,y:integer):real; Begin avrg:= (x+y)/2; End;   Begin write (‘введи два числа’); readln (a,b); avrg (a,b,s); writeln (‘середнє арифметичне чисел’, а:5,b:5,’дорівнює’, avrg (a,b,s):10:2); End.  

 

Приклад 1 і приклад 2 демонструють використання процедури і функції для одного завдання для порівняння. В даному випадку ефективніше використовувати функцію.

 

Приклад 3. Знайти кількість сполучень з використанням функції:

 

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

 

           
   
     
program komb; var c,n,m: word; functiїn fakt (n: word): word; var i: word; f:longint; begin f:= 1; for i:= 1 to n do f:= f*i; fakt:= f; end;   begin writeln (‘введи m,n’); readln (m,n); c:= fakt (n) div (fakt(m) + fakt(n-m)); writeln (‘кількість сполучень ’,n:3,‘по’, m:3,‘=’,c:7); end.  
 

 

 


 

Завдання для самоперевірки.

 

1. Чим вiдрiзняється процедура вiд функцiї

2. Записати заголовок для функцiї, що приймає 2 аргументи цiлого типу i повертає результат дійсного типу

3. Записати заголовок для функцiї, що приймає масив 10 елементiв цiлого типу i повертає результат цілого типу

4. Записати заголовок для функцiї, яка отримує в якостi параметра 2 цiлих значення і повертає значення цілого типу

5. Записати заголовок процедури, яка отримує в якостi параметра 2 цiлих значення і повертає значення цілого типу

6. Перелічити типи формальних параметрiв.

7. Розробити програму, яка формує три масиви різного розміру (але не більше 50 елементів) цілих значень. Знайти середнє арифметичне всіх значень з 3-х масивів.

8. Розробити програму, яка формує два строкових масиви даних різного розміру (але не більше 30 елементів) і знаходить найдовше значення.



<== попередня лекція | наступна лекція ==>
Передача в підпрограму структурованих типів даних Pascal | Модулі Pascal


Онлайн система числення Калькулятор онлайн звичайний Науковий калькулятор онлайн