출처 : 종만북 6.2 재귀호출과 완전탐색 : 1부터 n까지의 합을 계산하는 반복함수와 재귀함수
코드설명
재귀함수를 활용하여 1부터 n까지의 합을 계산합니다.
입력예시 1 :
10
결과 예시 1
55
코드
재귀코드를 활용합니다.
재귀코드 작성시 주의할점은, 다음 재귀호출이 종료되고 +N을 더해나간다는 점을 기억합니다. (1부터 n까지의 합이기 때문)
package Main; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.StringTokenizer; public class Main { public static int C, N, M; public static int answer = Integer.MAX_VALUE; public static void main(String[] args) throws IOException{ BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringTokenizer st = new StringTokenizer(br.readLine()); N = Integer.parseInt(st.nextToken()); System.out.print(getSumByRecursive(N)); } public static int getSumByRecursive(int N) { if(N == 1) return 1; return getSumByRecursive(N - 1) + N; } }
for문을 활용합니다.
import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.StringTokenizer; public class Main { public static int C, N, M; public static int answer = Integer.MAX_VALUE; public static void main(String[] args) throws IOException{ BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringTokenizer st = new StringTokenizer(br.readLine()); N = Integer.parseInt(st.nextToken()); System.out.println(getSumByForIterative(N)); } public static int getSumByForIterative(int N) { int sum = 0; for(int i=1;i<=N;i++) { sum += i; } return sum; } }