power-girl0-0

[ C++ ] TV 본문

언어/C++

[ C++ ] TV

power-girl0-0 2021. 3. 30. 17:21
728x90

 

조건 : 

- 채널 번호는 1번부터 15번까지 있다.

- 채널이 5번일 경우 SBS이고, 채널 7은 KBS2, 채널 9는 KBS1, 채널 11은 MBC, 채널 13은 EBS이며,

  나머지는 홈쇼핑인 tv프로그램을 생성해라.


소스코드 : 

#include <iostream>
using namespace std;

class TV{
private:
	int num;
	int now;
	string ch_now;
public:
	TV();
	TV(int num);
	TV(int num, int ch);
	void input();
	void show();
	string channel( );
	void tv_on();
	void tv_now();
	void ch_up();
	void ch_down(); 
};

TV::TV(int ch){
	now =  ch;
}
TV::TV(){}

string TV::channel( ){
	switch(now){
		case 5 :
			ch_now="SBS";
			break; 
		case 7 :
			ch_now="KBS2";
			break;
		case 9 :
			ch_now="KBS1";
			break;
		case 11 :
			ch_now="MBC";
			break;
		case 13 :
			ch_now="EBS";
			break;
		default :
			ch_now= "홈쇼핑";
			break; 
	}
	return ch_now;
}
void TV::tv_on(){
	cout<<"TV 켰습니다."<<endl;
	cout<<"현재 채널번호는 "<<now<<"번이고, 채널은 "<<channel()<<"입니다."<<endl<<endl;
}
void TV::tv_now(){
	cout<<"현재 채널번호는 "<<now<<"번이고, 채널은 "<<channel()<<"입니다."<<endl<<endl;
	}
void TV::ch_up(){
	now= now+1;
	if(now>15){
		cout<<"현재 채널이 마지막 채널이므로, 1번 채널로 넘어갑니다."<<endl<<endl;
		now=1; 
	}else{	
		cout<<"채널이 올라가서 현재 채널번호는 "<<now<<"번이고, 채널은 "<<channel()<<"입니다."<<endl<<endl;	 
	}	
}
void TV::ch_down(){
	now= now-1;
	if(now<=0){
		cout<<"현재 채널이 마지막 채널이므로, 15번 채널로 넘어갑니다."<<endl<<endl;
		now=15; 
	}else{	
		cout<<"채널이 내려가서 현재 채널번호는 "<<now<<"번이고, 채널은 "<<channel()<<"입니다."<<endl<<endl;	 
	}
}
void TV::show(){
	while(1){
		cout <<endl<<"1. TV켜기	2.현재채널	3.채널 올리기	4.채널 내리기	5.TV끄기";
		cout<<endl<<"번호 입력 : ";
		cin>>num;
		switch(num){
		case 1 :
			tv_on();	 
			break; 
		case 2 :
			tv_now();	 
			break;
		case 3 : 
			ch_up();
			break;
		case 4 :
			ch_down();
			break;
		case 5 :
			cout<<"TV를 껐습니다."<<endl;
			exit(0);	
		default :
			cout<<"올바른 번호를 입력하세요."<<endl;
			break; 
		}
	}	
}


int main(){
	int n;
	int ch;
	
	cout<<"현재 채널 번호 : "; 
	cin>>ch;
	
	if(ch<=0 || ch>15){
		cout<<"채널번호는 1번부터 15번까지입니다."<<endl;
	}else{
		TV ss(ch); 
		ss.show();	
	}
				
}

결과 : 

 

 

 

 

728x90
Comments