Cafe Binary Notation
[백준 알고리즘 8393번] 합 (자바) 본문
단계별로 풀기: 3단계-9
문제:
n이 주어졌을 때, 1부터 n까지 합을 구하는 프로그램을 작성하시오.
입력:
첫째 줄에 N (1<=N<=100)이 주어진다.
출력:
1부터 n까지 합을 출력한다.
나의 답안:
첫번째 오답
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | import java.util.*; public class Main { public static void main(String[] args){ Scanner scan = new Scanner(System.in); int num = scan.nextInt(); for(int i=1; i<=num; i++) { num += i; } System.out.println(num); } } | cs |
두번째 정답:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | import java.util.*; public class Main { public static void main(String[] args){ Scanner scan = new Scanner(System.in); int num = scan.nextInt(); int sum = 0; for(int i=1; i<=num; i++) { sum += i; } System.out.println(sum); } } | cs |
문제 보는순간, '발가락으로 풀겠군' 했는데
틀.렸.다..
그리고 심지어 왜 틀렸는지 한참동안 몰랐다고 한다
num에다가 i를 계속 더해나가니까
출력했을때 -213248458 이런 숫자들이 나왔다
nextInt()로 숫자를 받아서 num에 들어가니까
num에는 이미 입력받은 숫자가 들어있는거 아닌가?
그 숫자에서부터 i를 더해나가는건데 왜 -28954389 같은 숫자가 나오는지 아직도 모르겠다
어쨌든 직감적으로 뭔가 sum이 필요할거같아서
새롭게 sum을 정의하고 했더니 잘 됨.
'Java > 알고리즘' 카테고리의 다른 글
[백준 알고리즘 11720번] 숫자의 합 (자바) (2) | 2018.02.14 |
---|---|
[백준 알고리즘 1924번] 2007년 (자바) (0) | 2018.02.13 |
[백준 알고리즘 2441번] 별찍기-4 (자바) (2) | 2018.02.08 |
[백준 알고리즘 2440번] 별찍기-3 (자바) (4) | 2018.02.08 |
[백준 알고리즘 2439번] 별찍기-2 (자바) (0) | 2018.02.07 |