Conceptul de recursiune

Denumirea lucrării: Conceptul de recursiune. Recurgerea directă și indirectă

Domeniu: Informatică, Cibernetică și Programare

Descriere: Recursivitatea este un mod de organizare a programului atunci când procedura sau funcția în exercitarea operatorilor sale constitutive se numește. Un exemplu de program care utilizează recursul poate fi un program pentru calcularea factorialului unui număr. Programele care utilizează proceduri recursive se disting prin simplitatea prezentării și compactitatea textului. Numărul maxim de proceduri recursive apeluri fără întoarcere, care are loc în timpul execuției programului se numește adâncime recursivitate.







Mărime fișier: 23,5 KB

Lucrarea a fost descărcată: 19 persoane.

Noțiunea de recurență. Recurgerea directă și indirectă.

recursivitate # 150; este o astfel de modalitate de organizare a unui program atunci când o procedură sau o funcție, în timpul executării operatorilor constituenți, se transformă în ea însăși.

Un exemplu de program care utilizează recursul poate fi un program pentru calcularea factorialului unui număr. Factorul poate fi definit recursiv:







n! = (n-1) n * n. unde n = 1, 2, 3, ...

Un exemplu. Un program care cere introducerea unui număr și apoi afișează valoarea factorial din acesta.

Funcția fakt (n: integer): longint;

Dacă n = 1 atunci fact: = 1

Else factt: = fact (n-1) * n;

Writeln (# 145; introduceți numărul # 145;);

Writeln (k, # 145;. = # 145 ;, fact (k));

Programele care utilizează proceduri recursive se disting prin simplitatea, vizibilitatea și compactitatea textului. Dar, în același timp, acestea sunt inferioare celor care nu sunt recursive în ceea ce privește viteza și consumul de memorie.

Numărul maxim de apeluri recursive la o procedură fără returnări care apare în timpul executării programului este numită adâncimea de recurs.

În organizarea procedurii recursiv trebuie efectuată printr-un apel recursiv cu condiția ca, la un anumit nivel de recursie devine fals.

Recurgerea poate fi directă. când funcția se solicită ea însăși (A  A) și indirectă. când funcția A apelează funcția B, care la rândul ei apelează funcția A (A  B  A).

De fiecare dată când suni orice subrutina are loc în datele spațiale de sistem stiva programului, și anume, punctul de întoarcere, valorile parametrilor formale și constantele locale și variabile, adâncimea recursie nu poate fi infinit, pentru că în cele din urmă preaplin sistem stivă.







Articole similare

Trimiteți-le prietenilor: