Please Enable JavaScript!
Gon[ Enable JavaScript ]

자바(Java) while 반복문 사용하기

자바(JAVA)
반응형

“while” 반복문은 특정 조건이 만족되는 동안 코드 블록을 반복적으로 실행하는 제어 구조입니다. 조건이 거짓으로 평가될 때까지 반복 실행되며, 조건이 참인 동안 계속해서 코드 블록을 수행합니다.

 


  

◎ 구문

 

while (조건) {
    // 코드 블록
}
 
l  조건”: 반복 여부를 결정하는 논리 표현식입니다.
l  코드 블록”: 반복적으로 실행될 문장들의 집합입니다.

 

 

◎ 예제 1. 숫자 1부터 10까지 출력하기

 

“counter” 변수는 1부터 시작하여 1씩 증가하며, 10보다 작거나 같을 때까지 반복합니다. “System.out.println(counter)”: “counter” 변수의 현재 값을 출력합니다. 

int counter = 1;
while (counter <= 10) {
    System.out.println(counter);
    counter++;
}
 
[출력]
“1
2
3
...
9
10”

 

 

◎ 예제 2. 사용자 입력값이 0이 될 때까지 숫자를 더하기

 

“while (true)”무한 루프를 돌면서 사용자 입력을 반복적으로 받습니다. 그리고 사용자가 0을 입력하면 break 를 이용해서 루프를 벗어납니다. “Integer.parseInt(System.console().readLine())”는 사용자가 입력한 문자열을 정수형으로 변환해서 숫자를 누적하는데 사용합니다. 

int sum = 0;
int number;
 
while (true) {
    System.out.print("숫자를 입력하세요 (0 to quit): ");
    number = Integer.parseInt(System.console().readLine());
 
    if (number == 0) {
        break;
    }
 
    sum += number;
}
 
System.out.println("합계: " + sum);
 
[출력]
“숫자를 입력하세요 (0 to quit): 5
숫자를 입력하세요 (0 to quit): 10
숫자를 입력하세요 (0 to quit): 0
합계: 15”

 

 

◎ 예제 3. 랜덤 숫자 게임

 

Math.random() 함수를 이용해 1부터 100 사이의 랜덤 숫자를 만듭니다. 그리고 사용자 입력을 맞아서 랜덤으로 만들어진 숫자를 맞출 때까지 “while (guess != randomNumber)”코드를 이용해 반복합니다. 

int randomNumber = (int) (Math.random() * 100) + 1;
int guess;
int tries = 0;
 
while (guess != randomNumber) {
    System.out.print("1부터 100 사이의 숫자를 추측하세요: ");
    guess = Integer.parseInt(System.console().readLine());
    tries++;
 
    if (guess > randomNumber) {
        System.out.println("더 작은 숫자입니다.");
    } else if (guess < randomNumber) {
        System.out.println("더 큰 숫자입니다.");
    }
}
 
System.out.println("축하합니다! " + tries + "번 만에 맞췄습니다.");

 

 

while 반복문을 사용할 때 주의할 점

 

자바에서 “while” 반복문을 사용할 때 주의할 점은 다음과 같습니다. 아래의 주의사항을 지키면서 “while” 반복문을 사용하면 안전하고 효율적으로 프로그램을 작성할 수 있습니다.

 

 

1. 루프 탈출 조건 설정

- “while” 반복문을 사용할 때는 항상 루프를 탈출할 조건을 명확하게 설정해야 합니다. 그렇지 않으면 무한 루프에 빠질 수 있습니다. 

int i = 0;
while (i < 5) {
    System.out.println(i);
    i++; // 루프 탈출을 위한 증가문 필요
}

 

 

2. 무한 루프 주의

- 조건을 올바르게 설정하지 않으면 무한 루프에 빠질 수 있습니다. 무한 루프에 빠지면 프로그램이 더 이상 실행되지 않습니다. 

while (true) {
    // 무한 루프
}

 

 

3. 루프 변수 업데이트

- 루프 변수를 업데이트하여 루프가 종료되도록 해야 합니다. 그렇지 않으면 루프가 영원히 실행됩니다. 

int i = 0;
while (i < 5) {
    System.out.println(i);
    // i를 업데이트하는 코드가 없으면 루프가 종료되지 않음
}

 

 

4. 무한 반복 방지를 위한 타임아웃

- 무한 루프에 빠질 가능성이 있는 경우 무한 반복을 방지하기 위해 타임아웃을 설정하는 것이 좋습니다. 

long startTime = System.currentTimeMillis();
while (조건) {
    // 루프 내용
    if (System.currentTimeMillis() - startTime > TIMEOUT) {
        break; // 타임아웃 발생 시 루프 종료
    }
}

 

 

5. 변수 초기화

- 루프 변수를 초기화하여 루프가 예상대로 동작하도록 해야 합니다. 

int i = 0;
while (i < 5) {
    // 루프 내용
    i++;
}

 

반응형
Posted by 녹두장군1
,