rekuzivna funkcia, SURNE

Programovacie jazyky, rady, poradňa...
Bender8
Amateur
Amateur
Príspevky: 22
Registrovaný: 14 okt 2009, 1:51

rekuzivna funkcia, SURNE

Príspevok od používateľa Bender8 »

Nazdar, potreboval by som previest rekurzivnu funkciu na klasicku, bez rekurzie a neviem ako na to...

Kód: Vybrať všetko

f(0) = -10
f(n+1) = 3*f(n)+20n+26
potrebujem to do zajtra inak mi to bude uz na nic... :cry:

ide mi oto,ze mam vyriesit jeden dokaz kde mi treba odcitat tuto funkciu od tohto :

Kód: Vybrať všetko

8*(3^n) - 2009
Vopred diky za vsetky rady...
audiotrack
VIP
VIP
Používateľov profilový obrázok
Príspevky: 25958
Registrovaný: 09 sep 2005, 18:39
Kontaktovať používateľa:

Príspevok od používateľa audiotrack »

Kód: Vybrať všetko

double funkcia(int n){
   double vysledok = 3*(-10)+26;
   for(int i = 1; i<n; i++) vysledok = 3*vysledok+20*i+26;
   return vysledok;
}
Bender8
Amateur
Amateur
Príspevky: 22
Registrovaný: 14 okt 2009, 1:51

Príspevok od používateľa Bender8 »

diky za reakciu, ale tu mas zasa pouzitu rekurziu... :(
audiotrack napísal:

Kód: Vybrať všetko

vysledok = 3*vysledok+20*i+26;
mne treba tu funkciu proste previest na tvar:

Kód: Vybrať všetko

f(n) = nieco
pricom v tom nieco nesmie byt opat ta funkcia, len vyraz s n-kami a cislami...
audiotrack
VIP
VIP
Používateľov profilový obrázok
Príspevky: 25958
Registrovaný: 09 sep 2005, 18:39
Kontaktovať používateľa:

Príspevok od používateľa audiotrack »

nemám tam rekurziu, vysledok je totiž pomocná premenná a nie volanie funkcie. Ak to potrebuješ ako jeden výraz, rozviň si to pre nejaké n a rekurzívne vetvy univerzálne zapíš cez súčiny (značka velkého pi). Keby tu mám skener tak to aj má cenu písať, ale vo worde sa mi s tým nechce babrať. Takýto zápis ti ale stále bude komplikovať rátanie, ak potrebuješ iba odrátať ten výraz tak si to sprav v nejakom jazyku. Koniec-koncov, keď je to v programovaní neviem prečo tu riešiš matiku a nie algoritmické zápisy :)
Bender8
Amateur
Amateur
Príspevky: 22
Registrovaný: 14 okt 2009, 1:51

Príspevok od používateľa Bender8 »

Aha...tak potom nic :(
Tak potom sa opytam nieco ine:

viem ze po dosadeni akehokolvek prirodz. cisla do oboch funkcii (do tej rekurzivnej a toho polynomu 8*3^n - 2009) a odcitani vysledkov rekurzivnej od polynomu mi vyjde cislo ktore je o 10 vacsie ako po dosadeni n-1 (a zas odcitani vysledkov)...len ako to mam dokazat ked neviem vseobecne odcitat rekurzivnu od toho polynomu? :cry:

musi to nejak ist...


EDIT: Ja som si to v funkc. jazyku Haskell aj naprogramoval, lenze potrebujem to zapisat na papier a zajtra to mam odovzdat :(
EDIT2: a nahodou opacne by to neslo? zapisat ten polynom rekurzivne a odcitat to?
Napísať odpoveď