언어/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