본문 바로가기

재귀호출

[Java] 덧셈의 결과가 짝수면 출력 - 재귀 함수 x와 y를 입력받고 둘의 합을 출력하되, 짝수면은 그대로 출력하고  홀수면은 x랑 y를 다시 입력받는 프로그램을 짜보도록 하겠습니다.  import java.util.Scanner; public class FMain3 { public static int getX() { Scanner sc = new Scanner(System.in); System.out.println("x : "); int x = sc.nextInt(); return x; } public static int getY() { Scanner sc = new Scanner(System.in); System.out.println("y : "); int y = sc.nextInt(); return y; }   먼저 x와 y를 입력받는 함수입니다... 더보기
[Java] Factorial Factorial도 등차수열 공식을 이용하면 쉽게 구할 수 있습니다. 더하기를 곱하기로만 바꾸면 됩니다. public static int add(int n) { return (n == 1 ? 1 : add(n-1) + n); } 기존에 있던 등차수열 코드를  public static int factorial(int n) { return (n == 1 ? 1: factorial(n-1) * n);} 곱하기로만 바꾸면 됩니다.  public static void main(String[] args) { int Inum = Input(); System.out.println(add(Inum)); System.out.println(factorial(Inum));} 출력을 해보면  4를 입력했을 때 24로 잘 구해지.. 더보기
[Java] 재귀적 호출(recursive call) - 등차수열 재귀적 호출(recursive call)이란  함수 속에서 자기 자신(이 함수)을 호출하는 것을 말합니다. 즉 함수를 반복해서 계속 실행하는 것입니다. 함수를 부르는 것은 느린 작업이기 떄문에 반복문인 for을 써서 구현할 수도 있지만 재귀적 호출을 이용해서 기억에서 테스트할 떄 이런 알고르짐을 응용해서 문제를 출제하는 경향이 있기 때문에 작성하는 법을 숙지해야 합니다.   예제로 등차 수열을 구현해보겠습니다. 사용자에게 숫자 하나를 입력받으면 해당 값까지 등차수열을 더한 값을 출력하는 함수입니다. import java.util.Scanner; public class FMain1 {   public static int Input() { System.out.println("값을 하나 입력하세요."); re.. 더보기