안녕하세요 매일코딩입니다~
이번에는 반복문의 종류 중 하나인 while문에 대해서 배워 보도록 하겠습니다. while문은 식을 평가한 값이 true일 때 계속해서 while문을 반복해서 실행합니다. 따라서 아래와 같은 문법으로 사용할 수 있습니다.
while( 조건 ) {
내용
}
조건이 true이면 while문을 계속해서 실행시킵니다.
간단한 코드를 보면서 이해해 보도록 하겠습니다.
출력 값 : 0
1
2
3
4
코드 설명
1. int x에 0을 넣어줍니다.
2. while(x < 5)를 실행합니다. 현재 x는 0이기 때문에 0 < 5(true)를 가지게 됩니다. x를 출력하고 x를 증가시킵니다.
3. x는 현재 1입니다. 1은 5보다 작기 때문에 다시 실행합니다. 1을 출력하고 x의 값을 증가시킵니다.
4..... 이렇게 계속하다 보면 x가 4가 되고 4는 5보다 작기 때문에 위와 같은 결과가 나옵니다. 그리고 x는 5가 되기 때문에 x가 5일 때 5 < 5(false)로 while문을 종료합니다.
왜 5가 출력이 안될까요?
4가 출력된 후에 x는 x++로 인하여 5로 바뀝니다. 5로 바뀐 후에 while(x < 5)에 들어가면 5보다 작지 않으므로 false가 나와서 출력이 되지 않습니다.
방금은 0 에서부터 4까지 증가하는 코드를 짜 봤는데 이번에는 4에서부터 0으로 감소하는 코드를 짜 보겠습니다.
출력 값 : 4
3
2
1
0
코드 설명
1. x는 4를 가지고 있습니다.
2. while문의 조건은 (x >= 0) 이기 때문에 현재 x가 4는 true이기 때문에 while문을 실행합니다. 실행 후 x를 출력하고 x를 1 감소합니다.
3. 이렇게 계속해서 반복되다가 x 가 0일 때 0을 출력하고 x를 감소시켜서 x를 -1로 만듭니다. 그 후 -1 >= 0은 false이기 때문에 while문을 종료합니다.
이번에는 while문을 사용해서 내가 키보드로 입력한 게 양수일 때만 0까지 카운트를 하는 프로그램을 짜 보겠습니다.
출력 값 : 양수를 0까지 카운트합니다.
양수를 입력하세요.-3
양수를 다시 입력하세요.
-3
양수를 다시 입력하세요.
3
3
2
1
코드 설명
1. posnum에 키보드로 받은 숫자를 받습니다.
2. 첫 번째 while문은 posnum이 0보다 작으면 true라면 계속해서 실행하는 while문입니다. 즉 음수일 경우 양수를 입력하라는 문자를 출력하고 다시 posnum을 입력하게 합니다.
3. posnum이 양수로 입력된다면 아래 while문을 실행시켜서 적절한 값을 출력합니다.
이번에는 while문에 대해서 알아보았습니다.
감사합니다~

'자바' 카테고리의 다른 글
자바 while 문 Java 17강+ (0) | 2021.08.18 |
---|---|
자바 do while 문 Java 16강 (0) | 2021.08.14 |
자바 switch문 Java 15강 (0) | 2021.08.13 |
자바 if문 여러가지 문제 Java 14강 (0) | 2021.08.12 |
자바 if문에서 논리곱, 논리합 연산자 Java 13강 (1) | 2021.08.12 |