Keresés


Toplista

Toplista
  • betöltés...

Magántanár kereső

Ha szívesen korrepetálnál, hozd létre magántanár profilodat itt.
Ha diák vagy és korrepetálásra van szükséged, akkor regisztrálj be és írd meg itt, hogy milyen tantárgyban!

Rekurzió c++

379
Valaki el tudná magyarázná mit ír ki és miért ezt az alprogram az az f('B') meghívására?
Jelenleg 1 felhasználó nézi ezt a kérdést.
0
Középiskola / Informatika

Válaszok

1
Ez amúgy olyan feladat, amit le is programozhatsz és, akkor látod az eredményt.

Szóval `f16('B')` esetén a `c = B`-vel.
Az első `if` igaz lesz, mivel a `B` nagyobb, mint `A`, ezért meghívjuk `c-1`-re az `f16()`-t. A `c-1`, az egyenlő `A`-val, mivel a `c = B`.
Tehát a függvény lefut `A`-ra, mivel `A` nem kisebb `A`-nál, ezért további függvény hívás itt nem lesz, csak kiírja, hogy `A`.
Majd folytatódik a függvény hívásunk `B`-vel. A `cout` csak kiírja, hogy `B`.
És az utolsó `if`-nél az történik, mint az elsőnél, mivel a `B` nagyobb, mint az `A`, ezért meghívjuk a függvényt `c-1`-re. Az `A`-ra ez a függvény csak annyit csinál, hogy kiírja, hogy `A`.

Vagyis az output egyben annyi lesz, hogy `ABA`.
1