Лекция: Програмування з використанням процедур і функцій

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

Часто в програмі виявляються однотипні ділянки, що виконують ті самі обчислення, але з різними даними. Такі частини програми доцільно оформляти у виді підпрограм. У мові Pascal існує два види підпрограм: процедури і функції.

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

Приклад. Знайти суму додатних елементів у масиві.

Етапи рішення задачі:

1. Алгоритм рішення досить простий — у циклі будемо «пробігати» масив, порівнюючи його члени з 0 і додавати, якщо вони більші нуля.

2. Складемо блок-схему програми

Уточнимо з яких блоків складається блок «Додавання додатних елементів»

Зміст цих блоків не є складним, тому не варто їх уточнювати.

3. Напишемо програму мовою Паскаль

program example10; type Tarray = array[1..100] of integer; Var v: Tarray; N,i,s:integer; Procedure vvod_data(var m:Tarray;n:integer); Var i:integer; Begin Writeln('Уведіть ',n,' чисел через пробіл'); For i:= 1 to n do read(m[i]); End; Function summ(m:TArray):integer; Var s:integer; Begin S:=0; For i:= 1 to n do if m[i]>0 then s:= s+m[i]; Summ:=s; End; begin write('Уведіть розмірність масиву N= '); readln(n); vvod_Data(v,n); s:= summ(v); writeln('Сума= ',s); end.

Контрольні питання

1. Для чого потрібні в програмі процедури і функції?

2. У чому відмінність між процедурою і функцією?

3. Чим відрізняються формальні і фактичні параметри?

4. Чим відрізняються параметри-значення і параметрі-змінні?

5. Як описуються глобальні і локальні змінні?

6. Чому при звертанні до процедури, аргумент, переданий параметр-змінної, може бути тільки змінною, а не константою чи виразом?

еще рефераты
Еще работы по информатике