일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- 싱글톤
- bootstrap
- boxing
- 빌드
- 클래스
- dependency
- 스프링
- 무한
- 언박싱
- Short
- Scanner
- 제네릭
- 인텔리제이
- 자동형변환
- 제너릭
- suvlet
- 내장객체
- wrapper
- start.spring.io
- 콜렉션
- 메소드
- 루프
- Java
- 컬렉션
- 싱글턴
- Jenkins
- maven
- https://start.spring.io
- 박싱
- unboxing
Archives
- Today
- Total
Developer Gonie
[2주차] 33. 재귀함수 작성하는 법(factorial 등의 예시) 본문
* 재귀함수란?
자기가 자기 자신을 호출하는 것을 말함.
또한 함수는 return을 만나거나 마지막 괄호를 만나야 종료가 된다는 것을 고려하여 작성하면 좋음.
부메랑에 비유하면 부메랑이 돌아오려면 위와 같은 상황이 충족되어야 돌아올 수 있음.
코드
public class Ex05_08_재귀호출 {
public static void main(String[] args) {
show(3);
}
static void show(int cnt) {
System.out.println("Hi~" + cnt);
if(cnt == 1)
return;
show(--cnt);
}
}
실행결과
Hi~3
Hi~2
Hi~1
코드
public class Ex05_09_재귀호출 {
public static void main(String[] args) {
System.out.println("4 factorial ="
+ " " + factorial(4));// 4! = 4*3*2*1
}
static int factorial(int n) {
if(n==1)
return 1;
else
return n*factorial(n-1);
}
}
/*
4 * f(3)
3 * f(2)
2 * f(1)
1
*/
실행결과
4 factorial = 24
'K-DigitalTraining 강의 > 1. Java' 카테고리의 다른 글
[2주차] 35. 메서드 오버로딩* (0) | 2022.05.24 |
---|---|
[2주차] 34. Java API 에서 클래스 찾는 방법 (0) | 2022.05.24 |
[2주차] 32. 멤버함수의 매개변수로 배열 넘기기 (0) | 2022.05.23 |
[2주차] 31. static멤버변수(=클래스변수) 사용시 주의할 점* (0) | 2022.05.23 |
[2주차] 30. static 멤버함수 정의시 주의할 점* (0) | 2022.05.23 |
Comments