📄 computer.cpp
字号:
#include"computer.h"
/********class cpu的实现******************/
void Ccpu::GetCompany()
{
char *p=new char[6];
if(Intel==company)
{
strcpy(p,"Intel");
// return p;
}
if(AMD==company)
{
strcpy(p,"AMD");
// return p;
}
cout<<"本cpu的生产厂家为:"<<p<<endl;
delete p;
// return NULL;
}
void Ccpu::SetCompany()
{
int m;
cout<<"请选择cpu厂家(1--Intel;2--AMD):";
int i=0;
while(1)
{
cin>>m;
switch(m)
{
case 1: company=Intel;
i=1;
break;
case 2: company=AMD;
i=1;
break;
default: cout<<"输入有误,请重新输入(1--Intel;2--AMD):";
}
if(1==i) break;
}
money=(company*rate*50);
}
void Ccpu::GetMoney()
{
cout<<"本cpu的价格是:"<<money<<endl;
}
void Ccpu::SetRate()
{
cout<<"请输入cpu的主频(1-4):";
int i=0;
int m;
while(1)
{
cin>>m;
switch(m)
{
case 1: rate=1;
i=1;
break;
case 2: rate=2;
i=1;
break;
case 3: rate=3;
i=1;
break;
case 4: rate=4;
i=1;
break;
default: cout<<"输入有误,请重新输入(1-4):";
}
if(1==i) break;
}
money=(company*rate*50);
}
void Ccpu::Show()
{
cout<<"本computer的cpu信息为:"<<endl;
switch(company)
{
case Intel: cout<<"厂家:Intel"<<endl;
break;
case AMD: cout<<"厂家:AMD"<<endl;
break;
default: cout<<"厂家:"<<company<<endl;
}
cout<<"主频:"<<rate<<"GHz"<<endl;
cout<<"价格:"<<money<<"元"<<endl;
}
/**********class CMemory类的实现*************/
void CMemory::GetCompany()
{
char *p=new char[10];
if(Kingston==company)
strcpy(p,"Kingston");
if(Samsung==company)
strcpy(p,"Samsung");
if(Adata==company)
strcpy(p,"Adata");
if(HyunDai==company)
strcpy(p,"HyunDai");
cout<<"本Memory的生产厂家为:"<<p<<endl;
delete p;
}
void CMemory::SetCompany()
{
int m;
cout<<"请选择Memory厂家(1--Kingston;2--Samsung;3--Adata;4--HyunDai):";
int i=0;
while(1)
{
cin>>m;
switch(m)
{
case 1: company=Kingston;
i=1;
break;
case 2: company=Samsung;
i=1;
break;
case 3: company=Adata;
i=1;
break;
case 4: company=HyunDai;
i=1;
break;
default:cout<<"输入有误,请重新输入(1--Kingston;2--Samsung;3--Adata;4--HyunDai):";
}
if(1==i) break;
}
money=(company*content*2);
}
void CMemory::GetMoney()
{
cout<<"本Memory的价格是:"<<money<<endl;
}
void CMemory::SetContent()
{
int m;
cout<<"请设定本Memory的大小(126-2048):";
while(1)
{
cin>>m;
if((m>125)&&(m<2049)) break;
else cout<<"输入有误,请重新输入:";
}
content=m;
money=(company*content*2);
}
void CMemory::Show()
{
cout<<"本computer的Memory信息为:"<<endl;
switch(company)
{
case Kingston: cout<<"厂家:Kingston"<<endl;
break;
case Samsung: cout<<"厂家:Samsung"<<endl;
break;
case Adata: cout<<"厂家:Adata"<<endl;
break;
case HyunDai: cout<<"厂家:HyunDai"<<endl;
break;
default: cout<<"厂家:"<<company<<endl;
}
cout<<"大小:"<<content<<"M"<<endl;
cout<<"价格:"<<money<<"元"<<endl;
}
/*************class MainBoard的实现****************/
void MainBoard::GetCompany()
{
char *p=new char[10];
if(ASUS==company)
strcpy(p,"ASUS");
if(BIOSTAR==company)
strcpy(p,"BIOSTAR");
if(ECS==company)
strcpy(p,"ECS");
if(GIGA==company)
strcpy(p,"GIGA");
cout<<"本MainBoard的生产厂家为:"<<p<<endl;
delete p;
}
void MainBoard::SetComany()
{
int m;
cout<<"请选择MainBorad厂家(1--ASUS;2--BIOSTAR;3--ECS;4--GIGA):";
int i=0;
while(1)
{
cin>>m;
switch(m)
{
case 1: company=ASUS;
i=1;
break;
case 2: company=BIOSTAR;
i=1;
break;
case 3: company=ECS;
i=1;
break;
case 4: company=GIGA;
i=1;
break;
default:cout<<"输入有误,请重新输入(1--ASUS;2--BIOSTAR;3--ECS;4--GIGA):";
}
if(1==i) break;
}
money=(company*200);
}
void MainBoard::GetMoney()
{
if(oo) cout<<"本MainBoard的价格(包含cpu和memory)是:"<<money<<endl;
else cout<<"本MainBoard的价格是:"<<money<<endl;
}
void MainBoard::Show()
{
cout<<"本computer的MainBoard信息为:"<<endl;
switch(company)
{
case ASUS: cout<<"厂家:ASUS"<<endl;
break;
case BIOSTAR: cout<<"厂家:BIOSTAR"<<endl;
break;
case ECS: cout<<"厂家:ECS"<<endl;
break;
case GIGA: cout<<"厂家:GIGA"<<endl;
break;
default: cout<<"厂家:"<<company<<endl;
}
if(oo) cout<<"价格(包含cpu和memory)是:"<<money<<endl;
else cout<<"价格是:"<<money<<endl;
}
void MainBoard::Plug(Ccpu &p,CMemory &q)
{
money=p.money+q.money;
oo=true;
}
bool MainBoard::SelfCheck()
{
if(true==oo) return oo;
else return false;
}
/*************class monitor的实现****************/
void Monitor::GetCompany()
{
char *p=new char[10];
if(SONY==company)
strcpy(p,"SONY");
if(LG==company)
strcpy(p,"LG");
if(viewsonic==company)
strcpy(p,"viewsonic");
if(BENQ==company)
strcpy(p,"BENQ");
cout<<"本MainBoard的生产厂家为:"<<p<<endl;
delete p;
}
void Monitor::SetCompany()
{
int m;
cout<<"请选择Monitor厂家(1--SONY;2--LG;3--viewsonic;4--BENQ):";
int i=0;
while(1)
{
cin>>m;
switch(m)
{
case 1: company=SONY;
i=1;
break;
case 2: company=LG;
i=1;
break;
case 3: company=viewsonic;
i=1;
break;
case 4: company=BENQ;
i=1;
break;
default:cout<<"输入有误,请重新输入(1--SONY;2--LG;3--viewsonic;4--BENQ):";
}
if(1==i) break;
}
money=(company*size*cla);
}
void Monitor::GetMoney()
{
cout<<"本Monitor的价格是:"<<money<<endl;
}
void Monitor::SetCla()
{
int m;
cout<<"请选择MOnitor型号(1--LCD;2--CRT):";
int i=0;
while(1)
{
cin>>m;
switch(m)
{
case 1: cla=LCD;
i=1;
break;
case 2: cla=CRT;
i=1;
break;
default:cout<<"输入有误,请重新输入(1--LCD;2--CRT):";
}
if(1==i) break;
}
money=(company*size*cla);
}
void Monitor::SetSize()
{
cout<<"请输入Monitor的大小(14-19):";
int i=0;
int m;
while(1)
{
cin>>m;
switch(m)
{
case 14: size=14;
i=1;
break;
case 15: size=15;
i=1;
break;
case 16: size=16;
i=1;
break;
case 17: size=17;
i=1;
break;
case 18: size=18;
i=1;
break;
case 19: size=19;
i=1;
break;
default: cout<<"输入有误,请重新输入(14-19):";
}
if(1==i) break;
}
money=(company*size*cla);
}
void Monitor::Show()
{
cout<<"本computer的Monitor信息为:"<<endl;
switch(company)
{
case SONY: cout<<"厂家:SONY"<<endl;
break;
case LG: cout<<"厂家:LG"<<endl;
break;
case viewsonic: cout<<"厂家:viewsonic"<<endl;
break;
case BENQ: cout<<"厂家:BENQ"<<endl;
break;
default: cout<<"厂家:"<<company<<endl;
}
switch(cla)
{
case LCD: cout<<"型号:LCD"<<size<<endl;
break;
case CRT: cout<<"型号:CRT"<<size<<endl;
break;
}
cout<<"价格:"<<money<<"元"<<endl;
}
/****************computer的实现************************/
void Computer::Setcpucompany()
{
cpuname.SetCompany();
}
void Computer::Setcpurate()
{
cpuname.SetRate();
}
void Computer::Setmainboardcompany()
{
boardname.SetComany();
}
void Computer::Setmemorycompany()
{
memname.SetCompany();
}
void Computer::Setmemorysize()
{
memname.SetContent();
}
void Computer::Setmonitorcompany()
{
monname.SetCompany();
}
void Computer::Setmonitorsize()
{
monname.SetSize();
}
void Computer::Displaymoney()
{
getchar();
money=cpuname.money+monname.money;
money=money+memname.money;
money=money+boardname.money;
cout<<"这台computer整机的价格为:"<<money<<"元"<<endl;
getchar();
}
void Computer::Displaycontent()
{
cout<<"这台computer的配置信息为:"<<endl;
cout<<endl;
getchar();
cpuname.Show();
cout<<"**************************"<<endl;
memname.Show();
cout<<"**************************"<<endl;
monname.Show();
cout<<"**************************"<<endl;
boardname.Show();
cout<<"**************************"<<endl;
}
void Computer::Init()
{
cout<<"请选择您喜欢的cpu厂家和主频:"<<endl;
cpuname.SetCompany();
cpuname.SetRate();
cout<<"**************************"<<endl;
cout<<"请选择您喜欢的memory厂家和大小:"<<endl;
memname.SetCompany();
memname.SetContent();
cout<<"将cpu和memory装在MainBoard中......"<<endl;
boardname.Plug(cpuname,memname);
getchar();
}
bool Computer::Start()
{
bool i=false;
cout<<"检测computer是否安装正确...."<<endl;
getchar();
i=boardname.SelfCheck();
if(i) cout<<"computer安装正确,可以使用!"<<endl;
else cout<<"computer安装错误,请重新安装!"<<endl;
getchar();
return i;
}
void Computer::Setmonitorcla()
{
monname.SetCla();
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -