好文档 - 专业文书写作范文服务资料分享网站

C++课程设计基于MFC的计算器

天下 分享 时间: 加入收藏 我要投稿 点赞

重庆科技学院 面向对象程序设计课程

switch( flag ) { case 1: result = n1 + n2; break; case 2: result = n1 - n2; break; case 3: result = n1 * n2; break; case 4: if(n2 == 0 ) MessageBox(\除数不能为零!\ result = n1 / n2; break; case 5: result = sin(n1); break; case 6: result = cos(n1); break; case 7: result = tan(n1); break; case 8: result = n1;break; case 9: result = n1;break; case 10:result = n1;break; case 11:result = pow(n1, n2); break; case 12: result = n1; break; case 13: result = n1; break; case 14: result = (int)n1 % (int)n2; break; case 15: result = (int)n1 ^ (int)n2;break; case 16: result = exp(n1);break; case 17: result = (int)n1 || (int)n2;break; case 48: result = (int)n1 && (int)n2;break; case 19: result = n1; break; case 20: result = n1; break; case 21: result = pow( n1, 1/n2 );break; } m_a.Format( \ UpdateData(FALSE); m_a.ReleaseBuffer(0); n1 = atof(m_a); }

void CCalcutorDlg::OnBUTTONjia() //加法 { n = 0; if( flag != 0 ) OnBUTTONdengyu(); else { n1 = atof( m_a ); //UpdateData(FALSE); } m_a.ReleaseBuffer(0); //把缓存区间清除 flag = 1; }

void CCalcutorDlg::OnBUTTONjin() //减法 { n = 0; if(flag != 0) OnBUTTONdengyu();

26

重庆科技学院 面向对象程序设计课程

else n1 = atof( m_a ); m_a.ReleaseBuffer(0); flag = 2; }

void CCalcutorDlg::OnBUTTONcheng() //乘法 { n = 0; n1 = atof( m_a ); m_a.ReleaseBuffer(0); flag = 3; }

void CCalcutorDlg::OnBUTTONchu() //除法 { n = 0; n1 = atof( m_a ); m_a.ReleaseBuffer(0); flag = 4; }

void CCalcutorDlg::OnBUTTONsin() //sin { n = 0; n1 = atof( m_a ); n1 = n1 * PI/180 ; m_a.ReleaseBuffer(0); flag = 5; }

void CCalcutorDlg::OnBUTTONcos() //cos { n = 0; n1 = atof( m_a ); n1 = n1 * PI / 180; m_a.ReleaseBuffer(0); flag = 6; }

void CCalcutorDlg::OnBUTTONtan() //tan { n = 0; n1 = atof( m_a ); if( n1 != 0 && int(n1 * PI / 180) % 90 == 0 && int(n1 * PI / 180) % 90 != 0 ) MessageBox( \定义域错误!\ n1 = n1 * PI / 180; m_a.ReleaseBuffer(0); flag = 7; }

void CCalcutorDlg::OnBUTTONlog() //log以10为底 {

27

重庆科技学院 面向对象程序设计课程

n = 0; n1 = atof( m_a ); if( n1 <= 0 ) MessageBox( \真数必须大于零!\ n1 = log10(n1); m_a.ReleaseBuffer(0); flag = 8; }

void CCalcutorDlg::OnBUTTONln() //ln { n = 0; n1 = atof( m_a ); if( n1 <= 0 ) MessageBox( \真数必须大于零!\ n1 = log(n1); UpdateData(FALSE); flag = 9; }

void CCalcutorDlg::OnBUTTONn() //阶乘 { n = 0; n1 = atof(m_a); double s = 1; for( double i = 1; i < n1+1; i++ ) s *= i; n1 = s; m_a.ReleaseBuffer(0); flag = 10; }

int fun(int n) { if(n == 0) return 1; return n * fun(n-1); }

void CCalcutorDlg::OnBUTTONxy() //x的y次方 { n = 0; n1 = atof( m_a ); m_a.ReleaseBuffer(0); flag = 11; }

void CCalcutorDlg::OnBUTTONxx() //X的2次方 { n = 0; n1 = atof( m_a ); n1 = n1 * n1; m_a.ReleaseBuffer(0); flag = 12; }

28

重庆科技学院 面向对象程序设计课程

void CCalcutorDlg::OnBUTTONxxx() //X的3次方 { n = 0; n1 = atof( m_a ); n1 = n1 * n1 * n1; m_a.ReleaseBuffer(0); flag = 13; }

void CCalcutorDlg::OnBUTTONmod() //求余数mod { n = 0; n1 = atof( m_a ); m_a.ReleaseBuffer(0); flag = 14; }

void CCalcutorDlg::OnButtonXor() //异或 { n = 0; n1 = atof( m_a ); m_a.ReleaseBuffer(0); flag = 15; }

void CCalcutorDlg::OnBUTTONexp() //E的多少次方 { n = 0; n1 = atof( m_a ); m_a.ReleaseBuffer(0); flag = 16; }

void CCalcutorDlg::OnBUTTONor() //或 { n = 0; n1 = atof( m_a ); m_a.ReleaseBuffer(0); flag = 17; }

void CCalcutorDlg::OnBUTTONand() //且 { n = 0; n1 = atof( m_a ); m_a.ReleaseBuffer(0); flag = 18; }

void CCalcutorDlg::OnBUTTONx() // 1 / x { n = 0; n1 = atof( m_a ); if( n1 == 0 )

29

重庆科技学院 面向对象程序设计课程

MessageBox( \分母不能为零!\ n1 = 1 / n1; flag = 19; }

void CCalcutorDlg::OnBUTTONsquareRoot() //开2次根号 { n = 0; n1 = atof( m_a ); if( n1 < 0 ) MessageBox(\错误!\ n1 = pow( n1, 0.5 ); m_a.ReleaseBuffer(0); flag = 20; }

void CCalcutorDlg::OnBUTTONnRoot() //n1开N次根号 { n = 0; n1 = atof( m_a ); m_a.ReleaseBuffer(0); flag = 21; }

30

C++课程设计基于MFC的计算器

重庆科技学院面向对象程序设计课程switch(flag){case1:result=n1+n2;break;case2:result=n1-n2;break;case3:result=
推荐度:
点击下载文档文档为doc格式
1bw0y04iug01k8300wxv0h1ll01eyq01c09
领取福利

微信扫码领取福利

微信扫码分享