Cuprinsul proiectului

Download Report

Transcript Cuprinsul proiectului

Slide 1

urmează …


Slide 2

- Proiect interdisciplinar -


Slide 3

Cuprinsul proiectului:
1.- Prezentarea echipei de lucru
2.Prezentare generala
3. Aplicatii
4. Recursivitatea in matematica
5. Recursivitatea in natura
6. Fractali
7. Recursivitatea in informatica
8. Realizarea autoapelului
9. Executia apelurilor recursive
10. Aplicatii recursive
11. Implementare
12. Concluzii
3


Slide 4

Carpet4all
 Aron Dan
 Carnat Roxana
 Popa Mihai Adrian

 Mosneag Silviu
 Nicoara Vlad
 Hampu Petrica


Slide 5

Cuprinsul proiectului:
1.- Prezentarea echipei de lucru
2.Prezentare generala
3. Aplicatii
4. Recursivitatea in matematica
5. Recursivitatea in natura
6. Fractali
7. Recursivitatea in informatica
8. Realizarea autoapelului
9. Executia apelurilor recursive
10. Aplicatii recursive
11. Implementare
12. Concluzii
5


Slide 6

Prezentare generala
Notiunea de recursivitate din programare deriva
in mod natural din notiunea matematica cunoscuta
sub numele de recurenta.Dar si viata de zi cu zi ofera
nenumarate exemple.Atunci cand ne apucam de facut
temele, deschidem o carte, citim din ea,dar la un
momentdat ne trebuie o alta carte.Intrerupem studiul
din prima carte si citim din cealalta .Este posibil sa
avem nevoie in continuare de alte carti.Va sosi insa si
momentul cand ne intoarcem la ultima carte
intrerupta,continuam (sau nu) sa citim din ea, apoi ne
intoarcem la precedenta si in final la prima.Atunci
cand am terminat tema,o inchidem si pe aceasta.


Slide 7

Cuprinsul proiectului:
1.- Prezentarea echipei de lucru
2.Prezentare generala
3. Aplicatii
4. Recursivitatea in matematica
5. Recursivitatea in natura
6. Fractali
7. Recursivitatea in informatica
8. Realizarea autoapelului
9. Executia apelurilor recursive
10. Aplicatii recursive
11. Implementare
12. Concluzii
7


Slide 8

Aplicaţii
 Corpul uman

-mana umana are 5 degete, fiecare deget avand 3 falange
separate prin 2 incheieturi (numere in secventa). In medie,
dimensiunile falangelor sunt: 2cm, 3cm, 5cm. In
continuarea lor este un os al palmei care are in medie 8 cm.
-Structura plamanilor prezinta un model recursiv


Slide 9

Cuprinsul proiectului:
1.- Prezentarea echipei de lucru
2.Prezentare generala
3. Aplicatii
4. Recursivitatea in matematica
5. Recursivitatea in natura
6. Fractali
7. Recursivitatea in informatica
8. Realizarea autoapelului
9. Executia apelurilor recursive
10. Aplicatii recursive
11. Implementare
12. Concluzii
9


Slide 10

Recursivitatea in matematica
 Enuntul problemei
Problema iepurilor
Se pare că şi pe vremea lui Fibonacci se organizau concursuri de matematică.În Pisa, a
participat şi Fibonacci la un astfel de concurs care a fost condus de însuşi împăratul
Frederik II. Problema propusă concurenţilor suna astfel:
Plecând de la o singură pereche de iepuri şi ştiind că fiecare pereche de iepuri produce în
fiecare lună o nouă pereche de iepuri, care devine "productivă" la vârsta de o lună,
calculaţi câte perechi de iepuri vor fi după n luni.

 Formula de calcul

f1=1,f2=1
fn+1 = fn + fn-1


Slide 11

Cuprinsul proiectului:
1.- Prezentarea echipei de lucru
2.Prezentare generala
3. Aplicatii
4. Recursivitatea in matematica
5. Recursivitatea in natura
6. Fractali
7. Recursivitatea in informatica
8. Realizarea autoapelului
9. Executia apelurilor recursive
10. Aplicatii recursive
11. Implementare
12. Concluzii
11


Slide 12

Recursivitatea în natură
Recursivitatea in natura o intalnim la:
- fulgii de zapada

- frunza de feriga
- cochilia melcului

- Petalele florilor


Slide 13

Cuprinsul proiectului:
1.- Prezentarea echipei de lucru
2.Prezentare generala
3. Aplicatii
4. Recursivitatea in matematica
5. Recursivitatea in natura
6. Fractali
7. Recursivitatea in informatica
8. Realizarea autoapelului
9. Executia apelurilor recursive
10. Aplicatii recursive
11. Implementare
12. Concluzii
13


Slide 14

Fractali
 un fractal este "o figură geometrică fragmentată sau

frântă care poate fi divizată în părţi, astfel încât fiecare
dintre acestea să fie (cel puţin aproximativ) o copie
miniaturală a întregului".


Slide 15

Cuprinsul proiectului:
1.- Prezentarea echipei de lucru
2.Prezentare generala
3. Aplicatii
4. Recursivitatea in matematica
5. Recursivitatea in natura
6. Fractali
7. Recursivitatea in informatica
8. Realizarea autoapelului
9. Executia apelurilor recursive
10. Aplicatii recursive
11. Implementare
12. Concluzii
15


Slide 16

Recursivitatea in informatica
 Recursivitatea este una din notiunile fundamentale ale

informaticii
 Definitie:
Recursivitatea = un mecanism general de
elaborare a programelor. Ea consta in posibilitatea ca
un subprogram sa se autoapeleze.


Slide 17

Cuprinsul proiectului:
1.- Prezentarea echipei de lucru
2.Prezentare generala
3. Aplicatii
4. Recursivitatea in matematica
5. Recursivitatea in natura
6. Fractali
7. Recursivitatea in informatica
8. Realizarea autoapelului
9. Executia apelurilor recursive
10. Aplicatii recursive
11. Implementare
12. Concluzii
17


Slide 18

Realizarea autoapelului
 In cazul functiilor autoapelul se realizeaza printr-o

operatie de atribuire, operatie prin care numele
funcitiei trebuie sa figureze in partea dreapta a
operatorului de atribuire

autoapelul se realizeaza
prin apelul procedurii respective din
interiorul ei.Apelul se face la fel ca in cazul
in care procedura este apelata din exterior.

 In cazul procedurilor


Slide 19

Cuprinsul proiectului:
1.- Prezentarea echipei de lucru
2.Prezentare generala
3. Aplicatii
4. Recursivitatea in matematica
5. Recursivitatea in natura
6. Fractali
7. Recursivitatea in informatica
8. Realizarea autoapelului
9. Executia apelurilor recursive
10. Aplicatii recursive
11. Implementare
12. Concluzii
19


Slide 20

Execuţia apelurilor recursive
 Are ca efect salvarea pe stiva calculatorului a adresei de

revenire, a valorilor parametrilor transmisi prin valoare
si a adresei parametrilor transmisi prin referinta,
precum si alocarea de spatiu pe stiva pentru variabilele
locale ale suboprogramului.


Slide 21

Cuprinsul proiectului:
1.- Prezentarea echipei de lucru
2.Prezentare generala
3. Aplicatii
4. Recursivitatea in matematica
5. Recursivitatea in natura
6. Fractali
7. Recursivitatea in informatica
8. Realizarea autoapelului
9. Executia apelurilor recursive
10. Aplicatii recursive
11. Implementare
12. Concluzii
21


Slide 22

Aplicatii recursive
 Realizati 2 probleme in Pascal.1 care sa calculeze n! si a

2 a sa calculeze al n-lea termen al sirului lui Fibonacci.


Slide 23

Cuprinsul proiectului:
1.- Prezentarea echipei de lucru
2.Prezentare generala
3. Aplicatii
4. Recursivitatea in matematica
5. Recursivitatea in natura
6. Fractali
7. Recursivitatea in informatica
8. Realizarea autoapelului
9. Executia apelurilor recursive
10. Aplicatii recursive
11. Implementare
12. Concluzii
23


Slide 24

Implementare
 Dati click pe imagine pentru a vedea fisierul Pascal cu

rezolvarea:

Prima problema

A 2-a problema


Slide 25

O alta implementare
 Sa se realizeze un program Pascal desenează covorul

cu unul dintre modelele

 Dati click pe imagine pentru a vedea fisierul Pascal cu

rezolvarea:


Slide 26

Cuprinsul proiectului:
1.- Prezentarea echipei de lucru
2.Prezentare generala
3. Aplicatii
4. Recursivitatea in matematica
5. Recursivitatea in natura
6. Fractali
7. Recursivitatea in informatica
8. Realizarea autoapelului
9. Executia apelurilor recursive
10. Aplicatii recursive
11. Implementare
12. Concluzii
26


Slide 27

CONCLUZII
 Cand utilizam un algoritm recursiv?

Folosim un algoritm recursiv pentru a transcrie formulele matematice
recursive
Avantaje
Merita sa utilizam tehnica recursivitatii atunci cand algoritmul care
urmeaza sa fie implementat descrie o notiune recurenta sau algoritmul in
sine este recursiv.Se evita astfel operatiile mult prea dese de salvare pe
stiva calculatorului, precum si incarcarea acesteia in cazul apelurilor
repetate.
Dezavantaje
O conditie de iesire incorecta din recursivitate va duce cel mai adesea la
depasirea capacitatii de memorare a stivei, caz in care programul se
opreste afisand mesajul:Stack Overflow.
Un autoapel incorect duce la un rezultat incorect sau la umplerea stivei.


Slide 28

Bibliografie
 Manual de informatica clasa a X-a, autor Tudor Sorin
 Internet
 http://ro.wikipedia.org

 Materiale informative furnizate de catre profesor


Slide 29

Asta-i tot…