- Beranda
- Programmer Forum
Rekursif Java
...
TS
kodingers
Rekursif Java
Saya sedang belajar rekursif di java. Saya sudah membuat dua program.
Program pertama membuat faktorial
public class FactorialRecur {
static int factorial(int n){
if (n==1) {
return 1;
}
return factorial(n-1)*n;
}
public static void main(String[] args) {
// TODO Auto-generated method stub
int n=3;
System.out.println(factorial(n));
}
}
Program kedua mencetak angka
public class CetakAngka2 {
public static void main(String[] args) {
// TODO Auto-generated method stub
int i =1;
Angka(i);
}
static int Angka (int i){
if( i<=10) {
System.out.println(i);
}
return Angka(++i);
}
}
Pertanyaan saya mengapa program kedua saat di-run hasilnya seperti ini :
1
2
3
4
5
6
7
8
9
10
Exception in thread "main" java.lang.StackOverflowError
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
........
Kenapa program pertama tidak ada masalah ?
Program pertama membuat faktorial
public class FactorialRecur {
static int factorial(int n){
if (n==1) {
return 1;
}
return factorial(n-1)*n;
}
public static void main(String[] args) {
// TODO Auto-generated method stub
int n=3;
System.out.println(factorial(n));
}
}
Program kedua mencetak angka
public class CetakAngka2 {
public static void main(String[] args) {
// TODO Auto-generated method stub
int i =1;
Angka(i);
}
static int Angka (int i){
if( i<=10) {
System.out.println(i);
}
return Angka(++i);
}
}
Pertanyaan saya mengapa program kedua saat di-run hasilnya seperti ini :
1
2
3
4
5
6
7
8
9
10
Exception in thread "main" java.lang.StackOverflowError
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
at CetakAngka2.Angka(CetakAngka2.java:13)
........
Kenapa program pertama tidak ada masalah ?
nona212 memberi reputasi
1
1.9K
6
Komentar yang asik ya
Mari bergabung, dapatkan informasi dan teman baru!
Programmer Forum
20.2KThread•4.4KAnggota
Urutkan
Terlama
Komentar yang asik ya