본문 바로가기
스마트인재개발원/자바

[자바]반복문- do-while문/예제

by 죠졍니 2022. 9. 13.
728x90
반응형
SMALL

 

 


 

 do-while

do{

//무조건 한번은 실행이 되는 문장

//만약 조건식이 false라면 한번 실행되고 종료

//만약 조건식이 true라면 계속 실행

실행문장1;

}while(조건식);

 

= do 실행하고 whilefalse가 될 때까지 반복

 

 

->다음 사진과 같이 do는 한번이라도 실행되기 때문에 false면 한번만 출력됨

 

 

 

 

 

 


예제1

; 숫자를 입력받아 숫자 계속 입력받기

 

 

 

0입력하면 프로그램종료 출력

>

>

>

>0

프로그램종료

 

 

 

import java.util.Scanner;

public class Ex04_dowhile1 {

	public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
		int num;
		do {
			//0을 누를 때까지 숫자 입력 가능
			System.out.print("> ");
			num = sc.nextInt();
			
		}while(num!=0);
		
		System.out.println("프로그램 종료");
		
		
		
	}

}

 

 

 

 

※do  안에 int num=sc.nextInt(); -> 불가능

num이 지역변수로 되기 때문에 while문에서 사용이 불가능하여 오류발생

 

 

 

 

 

 

 

 

 


 

현재 몸무게와 목표 몸무게 입력받고, 주차 별 감량 몸무게 입력받기

목표 몸무게 달성하면 축하한다는 문구와 함께 종료

 

 

현재 몸무게 : 75

목표 몸무게 : 62

1주차 감량 몸무게 : 3

2주차 감량 몸무게 : 5

3주차 감량 몸무게 : 9

58kg 달성!! 축하합니다!

 

 

import java.util.Scanner;

public class Ex05_dowhile2 {

	public static void main(String[] args) {

		Scanner sc = new Scanner(System.in);
	
		System.out.print("현재 몸무게: ");
		int pw = sc.nextInt(); //현재 몸무게
		System.out.print("목표 몸무게: ");
		int goal = sc.nextInt(); //목표 몸무게
		
		int mw; //감량한 몸무게
		int num=0; // num+주차 감량 몸무게
			
		do {
			System.out.print(++num +"주차 감량 몸무게: ");
			mw=sc.nextInt();
			pw-=mw;
			
		}while(pw>=goal);
		
		System.out.println(pw + "kg 달성!! 축하합니다!");
		
	}

}

 

 

 

 

728x90
반응형
LIST