基于Qt的计算器设计.doc

基于Qt的计算器设计.doc

ID:50477330

大小:215.00 KB

页数:10页

时间:2020-03-09

基于Qt的计算器设计.doc_第1页
基于Qt的计算器设计.doc_第2页
基于Qt的计算器设计.doc_第3页
基于Qt的计算器设计.doc_第4页
基于Qt的计算器设计.doc_第5页
资源描述:

《基于Qt的计算器设计.doc》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、基于Qt的计算器设计摘要当今社会是信息社会,科技经济高速发展的社会,为了更方便人们的工作生活和加速人们处理信息的速度,计算器应运而生。然而,电脑已经成为当代人生活的必需品,运行在电脑上的计算器成为了人们的生活学习绝佳伴侣。本设计是用C++编写的,基于Qt图形用户界面应用程序框架的计算器。设计出两个电脑端和安卓手机端两个应用程序,并实现了一定的计算功能。关键字:QtC++计算器android一.任务概述:1.目标:基于Qt用C++编写计算器程序,实现加减乘除,平方,倒数,开方,阶乘,sin,cos,tan,In,x的y次幂,e的x次幂运算。并

2、使用不同的构建套件构建出.exe的电脑端程序和.apk的安卓手机端程序。2.运行环境:编写环境:Qt5.2.0windows32位Exe运行:windows7Apk运行:android4.1.23.功能描述:a.基于Qt设计计算器的ui界面。b.编写的应用程序实现如下功能:(1)加减乘除,平方,倒数,开方,阶乘,sin,cos,tan,In,x的y次幂,e的x次幂运算(2)实现清屏,退格,退出应用程序的功能c.应用程序包含exe和apk两个二.设计过程:1.工程建立:文件->新建文件和工程->QtwidgetsApplication包含ca

3、lculator.prodialog.hdialog.cppmain.cppdialog.ui2.ui界面设计:在QT设计器中布置好计算器界面,所有按键采用的pushButton控件,显示计算结果采用的是lineEdit控件。完成的界面如下图所示:clear:清屏<-:退格exit:退出数字键:1,2,3,4,5,6,7,8,9,0运算键:+-*/加减乘除exp:e的x次幂√:开方x^y:x的y次等3.程序编写:Dialog.h:(1)在classDialog:publicQDialog中定义privateslots:voidon_push

4、Button_5_clicked();voidon_pushButton_9_clicked();voidon_pushButton_13_clicked();voidon_pushButton_2_clicked();voidon_pushButton_8_clicked();voidon_pushButton_12_clicked();............................(2)定义cal函数:private:voidcal(void);Dialog.cpp:Math函数的调用和IP宏变量的定义:#include

5、th.h>//调用math函数#definePI3.1415926;//定义宏变量PI操作数的定义:QStringa,a1;//定义操作数inta2;数字键的定义:以数字“1”为例voidDialog::on_pushButton_5_clicked()//数字键的定义{a=a.append('1');ui->lineEdit->setText(a);}加减乘除的定义:减法为例voidDialog::on_pushButton_17_clicked()//减号定义{a1=a;a='';a2=1;QStringstr;str=str.appe

6、nd('-');ui->lineEdit->setText(str);}三角函数的定义:以sin函数为例voidDialog::on_pushButton_25_clicked()//sin函数定义{QStringstr;str=a;doublec=str.toDouble();doublex;x=(c/180)*PI;//角度转换为弧度x=sin(x);str=str.setNum(x);ui->lineEdit->setText(str);a=str;}二元函数运算的等号处理函数cal()的定义:voidDialog::cal(void

7、)//二元函数运算的等号处理函数{QStringstr1,str2;str1=a;str2=a1;doubles1=str1.toDouble();doubles2=str2.toDouble();switch(a2){case0:s2=s2+s1;ui->lineEdit->setText(QString::number(s2));break;case1:s2=s2-s1;ui->lineEdit->setText(QString::number(s2));break;case2:s2=s2*s1;ui->lineEdit->setTex

8、t(QString::number(s2));break;case3:s2=s2/s1;ui->lineEdit->setText(QString::number(s2));br

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。