收藏 分享(赏)

用MATLAB制作简单计算器.doc

上传人:weiwoduzun 文档编号:5698925 上传时间:2019-03-13 格式:DOC 页数:17 大小:180.02KB
下载 相关 举报
用MATLAB制作简单计算器.doc_第1页
第1页 / 共17页
用MATLAB制作简单计算器.doc_第2页
第2页 / 共17页
用MATLAB制作简单计算器.doc_第3页
第3页 / 共17页
用MATLAB制作简单计算器.doc_第4页
第4页 / 共17页
用MATLAB制作简单计算器.doc_第5页
第5页 / 共17页
点击查看更多>>
资源描述

1、 安阳工学院电子信息与电气工程学院MATLAB 编程与应用课程大作业题目:用 MATLAB 制作简单计算器 班级:电子信息工程(专升本)教师成绩由以下评分标准累计得出1、 设计和仿真结果正确,分析清晰合理。 40% 2、 大作业报告重点突出、阐述清晰。 30% 3、 陈述清晰正确、有说服力,能够正确回答问题。 30% 总分 (上述成绩由教师填写)学生自评分值(该表格全部由学生填写)个人贡献分值 (%)姓名 姓名任务 分值(%) 张新建 李国斌1 设计和仿真 50 30 202 报告 50 20 30个人平均分值(%) 50 50大作业总成绩(该表格“姓名”和“学号”由学生填写, “成绩”由教师

2、填写)姓名 张新建 李国斌学号 13020730129 13020730109成绩用 MATLAB 制作简单计算器11.计任务: 1、熟悉 MATLAB 的主要控件使用方法。2、熟悉 MATLAB 的 GUI 设计流程。2.设计方案利用 MATLAB GUI 设计实现一个图形用户界面的计算器程序,要求实现:A.实现十进制数的加、减、乘、除、简单计算。B. 科学计算函数,包括正弦、余弦、正切、(余切、开方、指数等函数运行。C. 能够保存上次历史计算的答案,先是答案存储器中得内容。D. 有清除键,能清除操作。 3.方案实施通过 MATLAB 的 gui 程序设计较为简单,在 gui 设计中主要用到

3、两种控件,显示框用到文本编辑框(edit text) ,说明框用到静态文本框(Static text) ,数字以及运算等按钮用到命令按钮(push button) 。然后在通过各个按钮的回调函数,实现简单的计算功能。4.方案施舍首先用 MATLAB GUI 功能,在绘制一个静态文本框和一个文本编辑框,以及24 个命令按钮,调整好各控件大小、颜色,整体布局如图所示:安阳工学院电子信息与电气工程学院MATLAB 编程与应用课程大作业2图-1 一、布局 GUI1.打开 Matlab,输入 Guide 回车或者在工具栏上点击图标 出现 Guide 窗口:用 MATLAB 制作简单计算器3图22.然后双

4、击“Blank GUI(Default)”出现 GUI 窗口图-3 3.添加按钮安阳工学院电子信息与电气工程学院MATLAB 编程与应用课程大作业4图-4 4.根据按钮的作用及视觉效果做一定的修改把按钮的字符串大小、颜色进行设置,对按钮的位置进行排布,尽量使按钮集中在静态文本框下面。最终设置的静态文本框为白色,其他按钮均为分红色。5.保存、添加功能函数把做好的按钮及静态文本框保存后自动弹出 Editor 的 M 文本,对然后对相应的 pushbutton 添加功能函数。以下是相应按钮的功能函数。(1)数字按键编写。在 function pushbutton1_Callback(hObject,

5、 eventdata, handles)下输入:textString = get(handles.text1,String);textString =strcat(textString,0);set(handles.text1,String,textString)用 MATLAB 制作简单计算器5这是使用句柄 handles 指向对象 text1,并以字符串形式来存储数据文本框text1 的内容,并存储数个“0”,然后由 set(handles.text1,String,textString在 text1 中输出。同理,分别在 function pushbutton210_Callback(h

6、Object, eventdata, handles)下给 19 数字按键下编写此类程序。(2).符号键:function pushbutton12_Callback(hObject, eventdata, handles)textString = get(handles.text1,String);textString =strcat(textString,+);set(handles.text1,String,textString)strcat 的作用是将两个字符串连接起来,就是在已输入的存储数据 textString后添加“+”进行运算。然后执行 set(handles.text1,St

7、ring,textString)。符号键-、*、/与+的运算函数类似。“平方运算”,主要是由“2”功能实现。(3)运算符“=”的编程:textString = get(handles.text1,String);ans =eval(textString);“eval”的作用是将符号表达式转换成数值表达式。再由 set(handles.text1,String,ans)输出。(4)按键“back”编程:即显示一个空字符:set(handles.text1,String,) ;按键“back”编程:textString = get(handles.text1,String);set(handles

8、.text1,String,) ;ss=char(textString);n=length(textString);textString=ss(1:w-1);%将 w 个字符串转成 w-1 个,即删除了末位字符安阳工学院电子信息与电气工程学院MATLAB 编程与应用课程大作业6set(handles.text1,String,textString)(5)按键“清空”:把静态文本框的字符清空,返回一个空格set(handles.text1,String,)(6)三角函数的编辑function cos_Callback(hObject, eventdata, handles)textString=

9、handles.text1;textString=cos(str2num(get(handles.text1,String)*pi/180);set(handles.text1,String,num2str(textString)(get(handles.text1,String)*pi/180 是把角度转换为弧度,这样在编程环境中才能识别,cos 才能起作用。然后执行 set 函数,把结果输出来。同理在sin,tan 的回调函数中夜输入相应的函数,只需把textString=cos(str2num(get(handles.text1,String)*pi/180);中的 cos 改为 sin

10、,tan 即可(7)按键“退出”:关闭计算器close(gcf);用 MATLAB 制作简单计算器7二、计算器的使用加法运算(+):图-5 安阳工学院电子信息与电气工程学院MATLAB 编程与应用课程大作业8按“=”后显示图-6 用 MATLAB 制作简单计算器9平方运算:图-7 安阳工学院电子信息与电气工程学院MATLAB 编程与应用课程大作业10按“=”后显示图-8 用 MATLAB 制作简单计算器115.通过本次实验实现十进制数的加、减、乘、除、简单计算对 Matlab 的操作有了进一步的认识和了解,通过多次的修改调查做出实验,验证了实验的正确性,大大的提高了我们对 Matlab 功能的

11、认识,培养了我们的兴趣。6.任务分工张新建:主要负责设计和仿真;李国斌:主要负责设计和实验报告的撰写。三、附各按键的程序源代码:function pushbutton1_Callback(hObject, eventdata, handles)textString = get(handles.text1,String);textString =strcat(textString,0);set(handles.text1,String,textString)function pushbutton2_Callback(hObject, eventdata, handles)textString =

12、 get(handles.text1,String);textString =strcat(textString,1);set(handles.text1,String,textString)function pushbutton3_Callback(hObject, eventdata, handles)textString = get(handles.text1,String);textString =strcat(textString,2);set(handles.text1,String,textString)function pushbutton4_Callback(hObject,

13、 eventdata, handles)textString = get(handles.text1,String);textString =strcat(textString,3);安阳工学院电子信息与电气工程学院MATLAB 编程与应用课程大作业12set(handles.text1,String,textString)function pushbutton5_Callback(hObject, eventdata, handles)textString = get(handles.text1,String);textString =strcat(textString,4);set(han

14、dles.text1,String,textString)function pushbutton6_Callback(hObject, eventdata, handles)textString = get(handles.text1,String);textString =strcat(textString,5);set(handles.text1,String,textString)function pushbutton7_Callback(hObject, eventdata, handles)textString = get(handles.text1,String);textStri

15、ng =strcat(textString,6);set(handles.text1,String,textString)function pushbutton8_Callback(hObject, eventdata, handles)textString = get(handles.text1,String);textString =strcat(textString,7);set(handles.text1,String,textString)function pushbutton9_Callback(hObject, eventdata, handles)textString = ge

16、t(handles.text1,String);textString =strcat(textString,8);set(handles.text1,String,textString)function pushbutton10_Callback(hObject, eventdata, handles)textString = get(handles.text1,String);用 MATLAB 制作简单计算器13textString =strcat(textString,9);set(handles.text1,String,textString)function pushbutton11_

17、Callback(hObject, eventdata, handles)textString = get(handles.text1,String);textString =strcat(textString,+);set(handles.text1,String,textString)function pushbutton12_Callback(hObject, eventdata, handles)textString = get(handles.text1,String);textString =strcat(textString,-);set(handles.text1,String

18、,textString)function pushbutton13_Callback(hObject, eventdata, handles)textString = get(handles.text1,String);textString =strcat(textString,*);set(handles.text1,String,textString)function pushbutton14_Callback(hObject, eventdata, handles)textString = get(handles.text1,String);textString =strcat(text

19、String,/);set(handles.text1,String,textString)安阳工学院电子信息与电气工程学院MATLAB 编程与应用课程大作业14function pushbutton15_Callback(hObject, eventdata, handles)textString = get(handles.text1,String);textString =strcat(textString,.);set(handles.text1,String,textString)function pushbutton16_Callback(hObject, eventdata, h

20、andles)textString = get(handles.text1,String);ans =eval(textString);set(handles.text1,String,ans)function pushbutton17_Callback(hObject, eventdata, handles)textString = get(handles.text1,String);textString =strcat(textString,2);set(handles.text1,String,textString)function pushbutton18_Callback(hObje

21、ct, eventdata, handles)textString = get(handles.text1,String);set(handles.text1,String,) ;ss=char(textString);n=length(textString);textString=ss(1:w-1);用 MATLAB 制作简单计算器15set(handles.text1,String,textString)function pushbutton19_Callback(hObject, eventdata, handles)set(handles.text1,String,)function pushbutton20_Callback(hObject, eventdata, handles)close(gcf);

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报