运算器的设计.doc_第1页
运算器的设计.doc_第2页
运算器的设计.doc_第3页
运算器的设计.doc_第4页
运算器的设计.doc_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

运 算 器 设 计 Matlab课程设计作业班 级:姓 名:号:指导老师:内容摘要: 本题目通过MATLAB的gui程序设计较为简单,在gui设计中主要用到三种控件,显示框用到文本编辑框(edit text),说明框用到静态文本框(Static text),数字以及运算函数等按钮用到命令按钮(push button)。然后在通过各个按钮的回调函数,实现简单的计算功能。关键词: 文本编辑框、静态文本框、命令按钮Content abstract: this topic through the MATLAB GUI design is relatively simple, mainly used in GUI design three kinds of controls, use text edit box, display box (edit text), shows that using Static text box box (Static text), digital and operation buttons used command button (push button). And then through the callback function of each button, achieve the function of simple calculation.Key words: the text edit box, static text box, a command button 运 算 器 设 计 目 录1.设计目的.32.题目分析.33.总体设计.34.具体设计.45.设计结果.86.心得体会.107.参考书目.101、设计目的: 运用MATLAB实现MATLAB的GUI程序设计。2、题目分析: 2.1课程设计的基本要求: A. 熟悉和掌握MATLAB 程序设计方法。 B. 掌握MATLAB GUI 程序设计。 2.2课程设计的内容: 要求利用MATLAB GUI设计实现一个图形用户界面的计算器程序, 要求实现: A.具有友好的用户图形界面。可实现十进制数的加、减、乘、 除 、乘方等简单计算。 B.科学计算函数,包括开方、指数等函数。 C.有清除键,能清除操作。 2.3题目分析本题目通过MATLAB的gui程序设计较为简单,在gui设计中主要用到三种控件,显示框用到文本编辑框(edit text),说明框用到静态文本框(Static text),数字以及运算等按钮用到命令按钮(push button)。然后在通过各个按钮的回调函数,实现简单的计算功能。3、总体设计首先用MATLAB GUI功能,在绘制一个静态文本框和一个文本编辑框,以及28个命令按钮,调整好各控件大小、颜色,整体布局如图所示:然后通过双击个按钮来改写其属性,在m文件中编写其回调函数,最后在运行调试。4、具体设计 4.1 各功能界面设计 GUI设计界面:4.2 各功能模块实现算法设计:(1)数字键设计:09以及小数点函数都一样,只是参数不同:例 如按键“2” :通过get函数获得输入的字符,函数strca获得 字符2,并用set函数进行显示输出:textString = get(handles.edit1,String);if(strcmp(textString,0)=1) set(handles.edit1,String,2) ;elsetextString =strcat(textString,2);set(handles.edit1,String,textString)End(2)四则运算函数也都一样(+ - * / .):例如按键“+” :通过get函数获得输入的字符,函数strcat 获得字符+,并用set函数进行显示输出:textString = get(handles.edit1,String);ss=char(textString);l=length(textString);if(ss(l)=+|ss(l)=-|ss(l)=*|ss(l)=/|ss(l)=.) textString=ss(1:l-1);endtextString =strcat(textString,+);set(handles.edit1,String,textString)(3)按键“+/-” :通过get函数获得输入的字符,函数strcat 获得字符+/-,并用set函数进行显示输出if(strcmp(textString,0)=1) set(handles.edit1,String,0) ;elsea = strread(textString, %f);a=0-a;set(handles.edit1,String,a)End(4)清屏“C”键函数:将所有的字符置为0 set(handles.edit1,String,0) ;(5)按键“sin和cos” :通过get函数获得输入的字符,函数strread 获得输入字符,并用sin函数计算结果,set函数进行显示输出 textString = get(handles.edit1,String); a = strread(textString, %f); a=sin(a); set(handles.edit1,String,a)(6)按键“tan和cot”:通过get函数获得输入的字符,函数strread 获得输入字符,并用tan函数计算结果,set函数进行显示输出textString = get(handles.edit1,String);if(strcmp(textString,1.57)=1)|(strcmp(textString,-1.57)=1) set(handles.edit1,String,inf);elsea = strread(textString, %f);a=tan(a);set(handles.edit1,String,a)End(7)按键“x2” :通过get函数获得输入字符,函数strread 获得输入字符,并用语句a=a*a计算结果,set函数进行显示输出 textString = get(handles.edit1,String); a = strread(textString, %f); a=a*a; set(handles.edit1,String,a)(8)“=”的实现:通过get函数获得输入的字符,并用eval函数 计算结果,set函数进行显示输出 a=get(handles.edit1,string) b=eval(a) set(handles.edit1,string,num2str(b)(9)按键“sqrt”:通过get函数获得输入字符,函数strread 获得输入字符,并用sqrt函数计算结果,set函数进行显示输出: textString = get(handles.edit1,String); if(strcmp(textString,0)=1) set(handles.edit1,String,0) ; else a = strread(textString, %f); a=sqrt(a); set(handles.edit1,String,a) end(10)退格键:通过取屏幕值,计算出其字符长度,然后取其前N-1 项的值来实现退格: textString = get(handles.edit1,String); if(strcmp(textString,0)=1)&(jj=0) set(handles.edit1,String,0) ; else ss=char(textString); l=length(textString); textString=ss(1:l-1); set(handles.edit1,String,textString)(11)退出键:close5、各模块实现结果: (1)数字键: (2)四则运算健:计算12+36=48 (3)X2健:计算122(4)sqrt健:计算888的sqrt: (5)cos函数健:计算cos0:(6)tan函数健:计算tan8:(7)()健:计算(12+34)*15:6、 心得体会: 通过本次

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论