728x90
반응형
2020년 3회 정보처리기사 실기 기출문제
문제
다음은 Java 코드이다. 출력 결과를 쓰시오.
public class good {
public static void main(String[] args) {
int i = 0;
int sum = 0;
while (i < 10) {
i++;
if (i % 2 == 1)
continue;
sum += i;
}
System.out.println(sum);
}
}
정답
30
반응형
해설
주어진 자바 프로그램은 1부터 10까지의 정수 중 짝수만 합산하는 로직을 포함하고 있습니다.
이를 단계별로 분석하겠습니다.
1️⃣ 변수 초기화
int i = 0;
int sum = 0;
- i: 현재 반복문에서 사용할 정수 값을 나타냄. while 루프에서 1씩 증가합니다.
- sum: 짝수만 더해서 최종적으로 합계를 저장하는 변수입니다.
2️⃣ while 반복문
while (i < 10) {
i++;
if (i % 2 == 1)
continue;
sum += i;
}
📌 while (i < 10)
- i가 10보다 작을 때 반복을 수행합니다.
- 반복 종료 조건: i가 10 이상이 되면 루프 종료.
📌 i++;
- i를 1 증가시킵니다. (각 반복마다 1씩 증가)
📌 if (i % 2 == 1)
- i가 홀수인지 확인합니다.
- i % 2는 숫자 i를 2로나눈 나머지를 계산합니다.
- i % 2 == 1 → 홀수(1, 3, 5, 7, 9)
- i % 2 == 0 → 짝수(2, 4, 6, 8, 10)
📌 continue
- continue는 현재 반복을 건너뛰고 다음 반복으로 넘어가는 명령입니다.
- 이 조건에서, 홀수인 경우 continue에 의해 sum += i; 부분이 실행되지 않고 바로 다음 반복으로 넘어갑니다.
📌 sum += i;
- 짝수만 이 라인에 도달하여 sum에 더해집니다.
728x90
3️⃣ 출력
System.out.println(sum);
- 변수 sum의 값을 출력하므로 최종 결과는 30입니다.
🔎 continue와 break의 차이점
📌 continue
for (int i = 1; i <= 5; i++) {
if (i == 3)
continue; // i가 3일 때 해당 반복 건너뜀
System.out.println(i);
}
// 실행결과
// 1
// 2
// 4
// 5
- 특정 조건에서 반복문의 현재 반복만 건너뛰고, 다음 반복으로 넘어가게 합니다.
- 반복문을 종료하지 않고 계속 진행합니다.
- i == 3일 때 continue가 실행되어 System.out.println(i)는 건너뛰고 바로 다음 반복으로 넘어갑니다.
📌 break
for (int i = 1; i <= 5; i++) {
if (i == 3)
break; // i가 3일 때 반복문 종료
System.out.println(i);
}
// 실행 결과
// 1
// 2
- 특정 조건에서 반복문을 즉시 종료합니다.
- 반복문을 더 이상 진행하지 않고, 반복문 밖으로 빠져나옵니다.
- i == 3일 때 break가 실행되어 반복문이 즉시 종료되고, 이후의 반복은 진행되지 않습니다.
"이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다."
728x90
반응형
'코딩일기 > 자격증' 카테고리의 다른 글
[정보처리기사] 데이터베이스 장애와 회복 기법 | 정보처리사 실기 기출 (0) | 2024.12.02 |
---|---|
[정보처리기사]| 생성자(Constructor) | 2020년 3회 정보처리기사 실기 기출문제 (0) | 2024.11.25 |
[정보처리기사] [ Java ] 자바 객체지향 : 오버로딩, 오버라이딩 | 정보처리기사 실기 기출문제 (0) | 2024.11.21 |
[정보처리기사] 스키마 (Schema) | 내부스키마, 개념스키마, 외부스키마 | 정보처리기사 기출문제 (0) | 2024.11.19 |
[정보처리기사] [ C ] 함수 호출과 반환값 | 2020년 3회 정보처리기사 기출문제 (0) | 2024.11.16 |