본문 바로가기

언어 기초/JAVA

[자바의정석 | Chapter 04 조건문과 반복문] while,do-while문

1. 학습목표

while문과 do-while문을 이해할 수 있다.

continue,break문에 대해 알 수 있다

2.필요 개념 문장정리

출처 - 자바의 정석

while문

  • while문은 조건식이 참인동안, 즉 조건식이 거짓이 될 떄까지 블럭{} 내의 문장을 반복한다.
  • for문과 while문은 완전히 동일하다. 만일 초기화나 증감식이 필요하지 않은 경우라면 while문이 적합하다.
  • while문의 조건식은 생략할 수 없다. 항사 참이 되도록 하려면 반드시 true를 넣어야 한다.

do-while문

  • 조건식과 블럭의 순서를 바꿔놓은 것이다. while문과 반대로 블럭을 먼저 수행한 후에 조건식을 평가한다.
  • 최소한 한번은 수행될 것을 보장한다.

break,continue문

  • break문은 자신이 포함된 가장 가까운 반복문을 벗어난다. 무한반복문에는 조건문과 break문이 항상 같이 사용된다.
  • continue문은 반복이 진행되는 도중에 만나면 반복문의 끝으로 이동하여 다음 반복으로 넘어간다.
  • continue문은 반복문 전체를 벗어나지 않고 다음 반복을 계속 수행한다는 점이 break문과 다르다.

 

 3. 코드작성

1부터 몇까지 더하면 누적합계가 100을 넘지 않는 제일 큰 수가 되는지

class FlowEx26 {
	public static void main(String[] args) {
    	int sum = 0;
        int i = 0;
        
        while((sum += ++i)) <= 100) {
        	System.out.printf("%d - %d%n, i, sum);
        }
    }    
}

조건식

sum += ++i // i값을 1 증가시켜서 sum에 누적

sum <= 100 // sum의 값이 100보다 작거나 같은지 확인

변수 i를 1부터 시작하여 1씩 증가시키면서 누적 합계인 sum에 더하고, 그 값이 100 이하일 때까지 반복합니다. 각 반복에서는 현재의 isum을 출력합니다.

4. 마무리

while문을 이해하고 break문과 continue문을 사용하여 중첩반복문의 적절한 사용을 이해할 수 있었다.