제어문과 제어키워드 - 2. 반복제어문

1. for 제어문

 - 원하는 횟수만큼 반복

 - 특정한 횟수만큼 반복 실행을 하는 경우에 자주 사용

    ※ Interation : 반복

// 기본 문법 구조
for (초기식; 조건식; 증감식) {
	실행내용;			// 조건식이 true인 동안 실행
}
// 초기식 : for문이 시작될 때 딱 1번 실행
// 조건식 : for문 안으로 들어가는 유일한 출입구 (true인 경우 진입, false이면 for문 종료)
// 증감식 : for문의 닫힌 괄호 '}' 이후에 실행

// Example1
for (int i = 1; i <= 10; i++) {
	System.out.printf("%d회 : 아름다운 무지개 \n", i);
}
// 결과 :
// 1회 : 아름다운 무지개
// 2회 : 아름다운 무지개
// 3회 : 아름다운 무지개
// 4회 : 아름다운 무지개
// 5회 : 아름다운 무지개
// 6회 : 아름다운 무지개
// 7회 : 아름다운 무지개
// 8회 : 아름다운 무지개
// 9회 : 아름다운 무지개
// 10회 : 아름다운 무지개

    ※ 조건식을 생략하면, 컴파일러는 자동으로 true를 입력(무한루프)

 

// Example2
// 1이상 100미만의 정수 중에서 7의 배수와 9의 배수를 출력하는 프로그램을 작성해보자
// (단, 7의 배수이면서 동시에 9의 배수인 정수는 한 번만 출력해야 한다.

for(int i = 1; i < 100; i++) {
	if(i % 7 == 0 || i % 9 == 0) {
		System.out.println(i);	// 7의 배수와 9의 배수가 출력됨
	}
}

 

2. while 제어문

 - 조건이 참일 동안 반복(while문 안에 조건문이 false일 때, while문을 멈춤)

 - 언제 어떻게 될 지 모르는 경우에 자주 사용

    ※ while문과 for문은 상호변환 가능

// 기본 문법 구조
초기식;
while(조건식) {
	실행내용;
	증감식;
}

// Example
int number = 0;
while (number < 3) {
	System.out.println("반복 실행중");
	number++;
}
// 결과 :
// 반복 실행중
// 반복 실행중
// 반복 실행중

 

3. do-while 제어문

 - while 제어문과 달리 조건이 달라도 최초 1회는 무조건 실행

// 기본 문법 구조
초기식;
do {
	실행내용;
	증감식;
} while (조건식);

// Example
int interation = 10;
do {
	System.out.print(interation);
	System.out.println(" : 무조건 최초 1회 실행");
	interation--;
} while (interation != 0); // 문법 구조상 중괄호가 없기 때문에 세미콜론(;)으로 끝남

 

 

4. 제어문의 중복

 - if문의 중법 (겹침 횟수 제한 없음)

// Example
int price = 45000;
int size = 105;
char grade = 'A';
if (price <= 50000) {
	if (size == 105) {
		if (grade == 'A') {
			System.out.println("중첩 반복");
		}
	}
}

// 연습문제
// 홀수 짝수 출력
for (int i = 1; i <= 10; i++) {
	if (i % 2 == 1) {
	System.out.println("홀수네요");
	} else {
		System.out.println("짝수네요");
	}
}