Miten toimii ohjelma, jossa on useampi rekursio?
public class Rekursio { public static void luvut(int luku){ System.out.println(luku); if (luku > 1){ luvut(luku-1); luvut(luku-1); } } public static void main(String[] args){ luvut(5); } }
Mikä siinä on epäselvää? Luulisi tässä vaiheessa jo selvinneen, että koodi (myös funktiokutsut) ajetaan järjestyksessä.
Tästä näet:
public class Rekursio { public static void esimerkki(String kutsut) { System.out.println(kutsut + " alkaa"); if (kutsut.length() < 4) { esimerkki(kutsut + "1"); esimerkki(kutsut + "2"); } System.out.println(kutsut + " loppuu"); } public static void main(String[] args){ esimerkki("-"); } }
Aihe on jo aika vanha, joten et voi enää vastata siihen.