- Beranda
- Programmer Forum
Rekursif Java
...
![kodingers](https://s.kaskus.id/user/avatar/2016/09/15/avatar9142188_2.gif)
![Avatar border](https://s.kaskus.id/images/avatarborder/1.gif)
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](https://s.kaskus.id/user/avatar/2020/02/23/avatar10811649_15.gif)
nona212 memberi reputasi
1
1.9K
6
![Guest](https://s.kaskus.id/user/avatar/default.png)
![Avatar border](https://s.kaskus.id/images/avatarborder/1.gif)
Komentar yang asik ya
Mari bergabung, dapatkan informasi dan teman baru!
![Programmer Forum](https://s.kaskus.id/r200x200/ficon/image-176.png)
Programmer Forum![KASKUS Official KASKUS Official](https://s.kaskus.id/kaskus-next/next-assets/images/icon-official-badge.svg)
20.2KThread•4.4KAnggota
Urutkan
Terlama
![Guest](https://s.kaskus.id/user/avatar/default.png)
![Avatar border](https://s.kaskus.id/images/avatarborder/1.gif)
Komentar yang asik ya