Підпрограми (процедури і функції). Підпрограмою – називається найменована логічно закінчена група вказівок, яку можна викликати для виконання довільну.

Презентация:



Advertisements
Похожие презентации
1 Підпрограми- процедури (Turbo Pascal 7.0) Підпрограми- процедури (Turbo Pascal 7.0)
Advertisements

Програми, модулі 1. Структура програми на ТП 1. Структура програми на ТП 1. Структура програми на ТП 1. Структура програми на ТП 2. Вигляд програми на.
Бройченко А.Г Підпрограми-функції (Turbo Pascal 7.0) Підпрограми-функції (Turbo Pascal 7.0) Інформатика-11 Тема-5.
Структура програми. Вказівки введення, виведення.
Процедури з параметрами ( опис та виклик). Procedure ABC (формальні параметри) ; Var локальні змінні ; текст процедури varглобальні змінні; текст головної.
Ізяславський НВК 2, Гульчак І.В. Підпрограми. Підпрограми-процедури.
Запити в Access Запити в базі даних Запити використовуються для перегляду, зміни й аналізу даних різними способами. Основні операції з використанням.
Програми з розгалуженнями.Команда IF Підготувала Крилік Анастасія 7-Д.
Текстові файли Приклади використання. Текстові файли призначені для зберігання символів Для опису текстової файлової змінної використовується тип Text.
Основи алгоритмізації та програмування Підпрограми.
Рекурсія Програми можуть містити виклик однієї або декількох підпрограм. Підпрограми можуть, в свою чергу, викликати інші підпрограми. А чи може підпрограма.
Основи алгоритмізації та програмування Надання значень величинам. Вказівки присвоєння та введення.
Основи алгоритмізації і програмування. Тема 3. Мови програмування (4 год) Структура програми Елементи мови програму- вання.
Основи алгоритмізації та програмування Вказівка повторення. Цикли.
Оператори. Введення і виведення даних. Оператор присвоювання Оператори це команди програми. Оператор присвоювання є основним оператором мови програмування.
Табличні величини. Масиви. Знайти суму елементів одновимірного масиву. Program Suma; var A:array[1..5] of integer; S,i:integer; begin for i:=1 to 5 do.
Структура програми. Вказівки введення й виведення.
Класи пам'яті даних. Клас пам'яті, час існування та видимість об'єкта Кожен обєкт програми (змінна, функція,...) має свій тип і клас памяті. Тип визначає.
Ізяславський НВК 2, Гульчак І.В. Підпрограми-функції.
Масиви Оголошення, опис та введення масивів Оголошення, опис та введення масивів Оголошення, опис та введення масивів Оголошення, опис та введення масивів.
Транксрипт:

Підпрограми (процедури і функції)

Підпрограмою – називається найменована логічно закінчена група вказівок, яку можна викликати для виконання довільну кількість раз з різних місць програми. Процедура – це незалежна найменована частина програми, призначена для виконання конкретних дій. Процедура складається із заголовка і тіла. Формат запису процедури: Procedure ; ; Використання процедур дає можливість підвищити продуктивність праці, зробити програму більш наочною, спростити розробку програми,...

Так, наприклад, програма знаходження об'єму конуса може містити декілька процедур: procedure InputDate; procedure Vkazivka; procedure OutputDate; procedure InputDate виконує введення даних в програму. procedure Vkazivka виконує вказівки для знаходження об'єму конуса. procedure OutputDate виконує виведення даних на дисплей. Наприклад. Задача. Скласти програму знаходження об'єму конуса. Program Vkonus; Const p=3.14; Var R,H,V:real; procedure InputDate; Begin write(r=); Readln (R); write(h=); Readln (H); end; procedure Vkazivka; Begin V:=p*sqr(R)*H/3; end; procedure OutputDate; Begin writeln (V=,V); end; Begin {Основна програма} InputDate; Vkazivka; OutputDate; End.

У процедурі можна оголошувати константи, змінні, інші процедури та функції. Розділ опису в процедурах має таку саму структуру, як і в основній програмі. Оголошенні всередині процедури змінні називаються локальними по відношенню до даної процедури. Локальні змінні не можуть бути доступні поза межами даної процедури. Змінні, які використовуються в процедурі, але описанні поза нею, називаються глобальними по відношенню до даної процедури. Будь-які зміни глобальних змінних всередині процедури змінюють значення цих змінних поза процедурою. Program Lokalizacia; Var A,B:real; procedure Lokal; Var A,X:char; Begin A:=:; X:=?; B:=B+1; end; Begin {Основна програма} A:=0; B:=100; Lokal; Writeln (a=,A,b+,B); End.

Після заголовка процедури в круглих дужках можуть вказуватись змінні (з допомогою яких в процедуру передаються дані) і їх типи, які називаються параметрами- значеннями. Змінні, які описанні в заголовку процедури є формальними параметрами. Змінні або константи, які описанні у вказівці процедури є фактичними параметрами. Program Perrymetr; Var C,D:integer; procedure PARAM(A,B:integer); Var S:integer; Begin S:=0; S:=A+B; Writeln (s=,S); end; Begin {Основна програма} C:=10; {1-й спосіб} D:=100; PARAM(C,D); PARAM(100,100); {2-й спосіб} End.

Для того, щоб процедура змогла змінювати значення фактичних параметрів, потрібно змінити спосіб передачі параметрів в процедуру. Цей спосіб називається передачею по імені (змінні називаються параметрами-змінними). Задача. Дано дві трійки чисел:A1,B1,C1,A2,B2,C2. Знайти значення сум: S1=min(A1,B1,C1)+min(A2,B2,C2) S2=max(A1,B1,C1)+max(A2,B2,C2) Program Priklad; Var A1,B1,C1,A2,B2,C2,MIN1,MAX1,MIN2,MAX2,S1,S2:real; Procedure MinMax(A,B,C:real; var MIN,MAX:real); Begin MAX:=A; If MAX<B then MAX:=B; If MAX<C then MAX:=C; end; Begin write(A1=); Readln (A1); write(B1=); Readln (B1); write(C1=); Readln (C1); write(A2=); Readln (A2); write(B2=); Readln (B2); write(C2=); Readln (C2); MinMax(A1,B1,C1,MIN1,MAX1); MinMax(A2,B2,C2,MIN2,MAX2); S1:=MIN1+MIN2; S2:=MAX1+MAX2; Writeln (S1=); writeln (S2=); End.

Якщо результатом виконання деякої процедури є одне скалярне значення, то цю процедуру бажано оформити як функцію. Формат опису функції: Function (список формальних параметрів): ; Задача. Знайти значення числа комбінацій n! C=n!/m!(n-m)! Program Kombinacij; Var N,M,C:integer; function FACT(K:integer):integer; Var i,F:integer; Begin F:=1; For i:=1 to K do F:=F+i; FACT:=F; end; Begin {Основна програма} Begin write(n=); Readln (N); write(m=); Readln (M); C:= FACT(N)div(FACT(M)* FACT(N-M)); Writeln(Кількість комбінацій з,n,по,m,=,C); End.