✅ 문제
1-2+3-4+...+99-100를 계산하여 답을 출력하시오.
✅ 추론 과정
첫째줄에 1부터 100까지 출력하는데 숫자가 짝수면 마이너스를 붙여서 출력후
줄바꿈하여 둘째 줄에 숫자의 합을 출력
- 1부터 100까지 1씩 증가하며 출력문이 반복됨 (for문)
- 두 가지 경우로 나뉘어 조건(홀수/짝수)에 따라 출력 값이 달라짐 (if문)
홀수면 숫자뒤에 공백 붙여 출력하고 짝수는 앞에 마이너스까지 붙여서 출력
1. 숫자가 1씩 증가하며 출력이 반복 (for)
2. 2로 나눈 나머지가 0 인지 아닌지 (if)
2-1 0이 아니면 홀수: i + " "(공백) 출력
2.2 0이면 짝수 : -i + " "(공백)출력
✅ 코드
public class Main {
public static void main(String[] args) {
int num = 0;
for (int i = 1; i <= 100; i++) {
if (i % 2 == 0) {
System.out.print(-i + " ");
num -= i;
} else if (i % 2 != 0) {
System.out.print(i + " ");
num += i;
}
}
System.out.println();
System.out.println("결과 : " + num);
}
}
정수형변수 num을 맨 위에 선언해주고 1부터 100까지 숫자를 대입해주면 결국 전체 숫자의 합을 구할 수 있다.
숫자의 합을 출력 할 때는 줄바꿈을 해줘야 하므로 System.out.println() 을 이용해서 개행해준다.
주의할 점은 for문 밖에 써야 한다는 것이다.
for문 안에 쓰면 반복 출력되기 때문이다.
'코딩테스트 > JavaFestival(스마트인재개발원)' 카테고리의 다른 글
[자바페스티벌] 6번 - (77*1) + (76*2) + (75*3) + ... + (1*77) 계산해서 결과 출력하기 (0) | 2024.03.20 |
---|---|
[자바페스티벌] 1번 - 몸무게 입력 받고 감량 목표 달성 시 축하 메세지 띄우기 (0) | 2024.03.20 |
[자바페스티벌] 5번 - 별찍기 행 개수를 입력 받아 삼각형출력하기 (1) | 2024.03.20 |
[자바페스티벌] 4번 - 거스름돈을 입력받아 내어줘야 하는 지폐의 개수 출력하기 (0) | 2024.03.20 |
[자바페스티벌] 2번 - 일한 시간을 입력받아 총 임금 계산하는 시급계산기 (0) | 2024.03.15 |