U ovom ćete programu naučiti izračunavati snagu broja pomoću rekurzivne funkcije u Javi.
Da biste razumjeli ovaj primjer, trebali biste imati znanje o sljedećim temama programiranja Java:
- Java metode
- Java rekurzija
Primjer: Program za izračunavanje snage pomoću rekurzije
public class Power ( public static void main(String() args) ( int base = 3, powerRaised = 4; int result = power(base, powerRaised); System.out.printf("%d^%d = %d", base, powerRaised, result); ) public static int power(int base, int powerRaised) ( if (powerRaised != 0) return (base * power(base, powerRaised - 1)); else return 1; ) )
Izlaz
3 4 = 81
U gornjem programu izračunate snagu pomoću rekurzivne funkcije power ().
Jednostavnim riječima, rekurzivna funkcija množi bazu sa sobom za vrijeme porasta snage, a to je:
3 * 3 * 3 * 3 = 81Koraci izvršenja
Iteracija | vlast() | snagaPodignuta | proizlaziti |
---|---|---|---|
1 | snaga (3, 4) | 4 | 3 * rezultat 2 |
2 | snaga (3, 3) | 3 | Rezultat 3 * 3 * 3 |
3 | snaga (3, 2) | 2 | Rezultat 3 * 3 * 3 * 4 |
4 | snaga (3, 1) | 1 | 3 * 3 * 3 * 3 * konačni rezultat |
Konačno | snaga (3, 0) | 0 | 3 * 3 * 3 * 3 * 1 = 81 |