Java : while문

김선미·2022년 8월 4일
0

while 문

  • for 문 : while 문의 변형 / 반복 횟수를 알 때
  • while 문 : 반복 횟수를 모를 때
  • do-while 문 : while 문의 변형
//while 문의 형태

int a = 0; //변수 초기화
while (true) { //조건식
    실행할 문장
    a++; //변수 증감식
}

//for 문의 형태

for (i=0; i<=10, i++) { //변수 초기화,조건식,변수 증감식
    실행할 문장
}
  • for문과 while문은 100% 서로 호환 가능하다. (변경하여 사용 가능)
    • if문과 switch문의 경우는 항상 호환되는 것은 아님.

while문 예제

  • while문에 반복할 횟수를 지정하기
int i = 5
while (i--!=0) {
    실행할 구문
}
  • i를 1씩 증가시키며 sum에 증가한 i를 계속 더하기
int sum = 0;
int i = 0;

while(sum=<100){
    sum += ++i;
}

do-while문

  • 처음 한번은 무조건 실행된다.
    • 사용자의 입력을 반드시 받아야 하는 경우 유용하다.
do {
    조건식이 참일 경우 수행할 문장
} while (조건식);

do-while문 예제

  • do-while문을 사용하지 않는 경우
int input = 0, answer = 0;

answer = (int)(Math.random()*100) + 1;

Scanner scannner = new Scanner(System.in);
System.out.println("1~100 사이의 정수를 입력하세요");
input = scanner.nextInt();

while(input!=answer){

    if (input > answer) {
        System.out.println("더 작은 수로 시도하세요");
    } else if (input < answer) {
        System.out.println("더 큰 수로 시도하세요");
    }

    System.out.println("1~100 사이의 정수를 입력하세요"); //코드 중복 일어남
    input = scanner.nextInt();
}
System.out.println("정답입니다");
  • do-while문을 사용하는 경우
int input = 0, answer = 0;

answer = (int)(Math.random()*100) + 1;

Scanner scannner = new Scanner(System.in);

do {
    System.out.println("1~100 사이의 정수를 입력하세요");
    input = scanner.nextInt();

    if (input > answer) {
        System.out.println("더 작은 수로 시도하세요");
    } else if (input < answer) {
        System.out.println("더 큰 수로 시도하세요");
    }   
} while(input!=answer);
System.out.println("정답입니다");
profile
백엔드 개발 공부

0개의 댓글