반응형
1. Break 조건에 따라 반복을 중단하기
이 프로그램은 6과 14로 모두 나누어 떨어지는 가장 작은 숫자를 찾는 예제입니다. 코드를 분석해봅시다.
주요 코드 설명:
int num = 1; // 숫자를 1부터 시작
while (true) { // 무한 반복
if (num % 6 == 0 && num % 14 == 0) {
break; // 6과 14로 나누어 떨어지면 반복 종료
}
num += 1; // 조건에 맞지 않으면 num을 1 증가
}
System.out.println(num); // 조건을 만족한 num 출력
실행 흐름:
- num 변수를 1부터 시작합니다.
- while (true)는 무조건 반복이 실행됩니다. (조건이 true이므로 끝나지 않음)
- 매 반복마다 num % 6 == 0 && num % 14 == 0 조건을 확인합니다:
- num % 6 == 0은 6으로 나누어 떨어지는 숫자인지 확인.
- num % 14 == 0은 14로 나누어 떨어지는 숫자인지 확인.
- 두 조건이 모두 참이면 break로 반복을 멈춥니다.
- 결과적으로 조건에 맞는 첫 번째 숫자가 출력됩니다.
요약:
- while (true)를 사용하면 반복 조건 없이 무한히 실행됩니다.
- break는 특정 조건이 참일 때 반복을 종료합니다.
- 출력값: 42 (6과 14의 최소공배수).
2. Continue: 특정 조건에서 반복 건너뛰기
이 프로그램은 1부터 20까지 숫자 중에서 2의 배수와 3의 배수를 제외한 숫자만 출력합니다.
주요 코드 설명:
for (int i = 1; i <= 20; i += 1) { // 1부터 20까지 반복
if (i % 2 == 0 || i % 3 == 0) {
continue; // 2의 배수 또는 3의 배수는 다음 루프로 건너뜀
}
System.out.println(i); // 조건에 맞지 않는 숫자 출력
}
실행 흐름:
- for 루프가 1부터 20까지 실행됩니다.
- 각 숫자에서 i % 2 == 0 또는 i % 3 == 0 조건을 확인:
- i % 2 == 0: 2의 배수인지 확인.
- i % 3 == 0: 3의 배수인지 확인.
- 조건이 참이면 continue가 실행되어 해당 숫자는 건너뜁니다.
- 조건이 거짓인 경우만 System.out.println(i)로 숫자를 출력합니다.
요약:
- continue는 조건이 참일 때 나머지 코드를 건너뛰고 다음 반복으로 이동합니다.
- 출력값: 1, 5, 7, 11, 13, 17, 19 (2와 3의 배수를 제외한 숫자).
3. DoWhile: 사용자 입력 반복 처리
이 프로그램은 사용자가 입력한 정수를 모두 더하고, 0을 입력하면 종료합니다.
주요 코드 설명:
int total = 0, num; // 합계(total)와 입력값(num) 초기화
Scanner scanner = new Scanner(System.in); // 사용자 입력을 위한 스캐너 생성
do {
System.out.print("정수를 입력하세요. 0이면 종료 : "); // 입력 요청
num = scanner.nextInt(); // 사용자가 입력한 정수를 읽음
total += num; // 입력된 값을 합계에 추가
} while (num != 0); // 입력값이 0이 아니면 계속 반복
scanner.close(); // 스캐너 닫기
실행 흐름:
- total 변수를 0으로 초기화합니다. 모든 입력값의 합을 저장하는 변수입니다.
- do { ... } while은 조건을 나중에 확인하는 반복문입니다.
- 사용자 입력을 최소 1회 이상 반드시 실행.
- 반복문 안에서 사용자는 정수를 입력합니다.
- 입력한 값이 0이면 반복이 종료됩니다.
- 반복이 끝나면 합산된 값을 출력합니다.
요약:
- do { ... } while은 조건을 나중에 확인하므로 반드시 한 번 실행됩니다.
- 입력값이 0이면 반복을 종료하고, 합계는 누적된 값으로 계산됩니다.
반응형
'개발 > JAVA' 카테고리의 다른 글
JAVA 기초편 (While문) (5) | 2024.12.28 |
---|---|
JAVA 기초편 4: for, for_loof(별찍기, 구구단, 로또번호) (2) | 2024.12.27 |
Java 기초 배우기: 간단한 계산기 프로그램 (0) | 2024.12.25 |
JAVA 기초편 2 (if else) (3) | 2024.12.24 |
자바(JAVA) 기초편 1 (4) | 2024.12.03 |