문제
숫자가 1 + (-2) + 3 + (-4) + 5 + ... + n 형태로 더해진다. (n은 값이 정해지지 않았음)
sum = 1 + (-2) + 3 + (-4) + 5 + ... + n 의 값이 100 이상으로 넘어갔을 때의 n의 값과 sum의 값을 출력
접근 방법
1. n과 sum의 값이 구해질 때까지 반복되어야 된다.
2. 홀수와 짝수가 더해져야 된다.
3. 2의 배수일 때마다 -로 변환시켜야 한다.
4. sum의 값이 100 이상 일 때 반복문이 종료되도록 하며 값을 출력한다.
public class Main {
public static void main(String[] args) {
// 1. n과 sum의 값이 구해질 때까지 반복되어야 된다.
int sum = 0;
int n = 1; // 1부터 더해지므로
while (true) {
// 2. 홀수와 짝수가 더해져야 된다.
// 3. 짝수일 때 음수로 변환시켜야 한다.
if (n % 2 == 0) { // 짝수일 경우
sum -= n; // 값을 음수로 변환시켜 더한다.
} else { // 홀수인 경우
sum += n; // 값을 더한다.
}
// 4. sum의 값이 100 이상 일 때 반복문이 종료되도록 하며 값을 출력한다.
if (sum >= 100) { // sum의 값이 100이상일 경우
break; // break로 반복문을 종료시킨다.
}
}
n++;// 다음 값을 더하기 위해 1씩 증가시켜준다.
}
System.out.println("n의 값은 " + n + " sum의 값은 " + sum);
}
}