13. 중식당의 주문 과정을 C++ 프로그램으로 작성해보자. 다음 실행 결과와 같이 메뉴와 사람 수를 입력받고 이를 출력하면 된다. 잘못된 입력을 가려내는 부분도 코드에 추가하라.

 

...더보기

 

#include <iostream>
using namespace std;
int main() {
	cout << "***** 승리장에 오신 것을 환영합니다. *****" << endl;
	int menu, servings;
	do {
		cout << "짬뽕:1, 짜장:2, 군만두:3, 종료:4>>  ";
		cin >> menu;
        
        //메뉴가 정상 범위 내에 존재하는지 판별하는 if문
        // 4를 포함하지 않음
		if (menu >= 1 && menu < 4) { 
			cout << "몇인분?";
			cin >> servings;
		}
		switch (menu) {
		case 1:
			cout << "짬뽕 " << servings << "인분 나왔습니다" << endl; 
			break;
		case 2:
			cout << "짜장 " << servings << "인분 나왔습니다" << endl; 
			break;
		case 3:
			cout << "군만두 " << servings << "인분 나왔습니다" << endl; 
			break;
		case 4:
			cout << "오늘 영업은 끝났습니다." << endl; 
			break;
		default:
			cout << "다시 주문하세요!!" << endl;
		}
	} while (menu != 4);
}

- if문을 사용한 이유

if문을 넣지 않으면 종료 선택시(menu 4) 몇인분? 이라고 불필요하게 물어보게 됩니다.

case 1: 2: 3: 내부 안에 

 

cout << "몇인분?";
cin >> servings;

 

을 각 case 마다 일일이 집어넣어도 동일한 결과를 가집니다. 

 

+ do while문을 쓰면 종료하기 위해서 별도의 조건문을 추가할 필요가 없습니다

BELATED ARTICLES

more