Tässä ohjelmassa opit etsimään GCD (Greatest Common Divisor) tai HCF käyttämällä Java-rekursiivista toimintoa.
Tämän esimerkin ymmärtämiseksi sinulla on oltava tieto seuraavista Java-ohjelmointiaiheista:
- Java-menetelmät
- Java-rekursio
Tämä ohjelma ottaa kaksi positiivista kokonaislukua ja laskee GCD: n rekursiota käyttämällä.
Tältä sivulta saat tietää, kuinka voit laskea GCD: n silmukoiden avulla.
Esimerkki: Kahden numeron GCD rekursiota käyttämällä
public class GCD ( public static void main(String() args) ( int n1 = 366, n2 = 60; int hcf = hcf(n1, n2); System.out.printf("G.C.D of %d and %d is %d.", n1, n2, hcf); ) public static int hcf(int n1, int n2) ( if (n2 != 0) return hcf(n2, n1 % n2); else return n1; ) )
Tuotos
GCD 366 ja 60 on 6.
Yllä olevassa ohjelmassa rekursiivista funktiota kutsutaan, kunnes n2 on 0. Lopulta n1: n arvo on annettujen kahden luvun GCD tai HCF.
SuoritusvaiheetEi. | Rekursiivinen puhelu | n1 | n2 | n1% n2 |
---|---|---|---|---|
1 | hcf (366, 60) | 366 | 60 | 6 |
2 | hcf (60, 6) | 60 | 6 | 0 |
Lopullinen | hcf (6, 0) | 6 | 0 | - |