matlab简易计算器_第1页
matlab简易计算器_第2页
matlab简易计算器_第3页
matlab简易计算器_第4页
matlab简易计算器_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

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

文档简介

电子信息工程系实验报告课程名称:MATLAB 语言 实验项目名称:MATLAB 图形用户界面设计 实验时间:2010-5-8 班级: 姓名: 学号: 实验目的: 1、熟悉 MATLAB 的主要控件使用方法。2、熟悉 MATLAB 的 GUI 设计流程。实验环境:硬件配置( Pentium(R) 4 CPU 2.40GHz,1GB 内存)操作系统(Windows XP)编程软件:MATLAB7.0 实验内容与结果:使用 MATLAB 的 GUI 接口设计一个简单的计算器。效果图:程序源码部分函数及相关注释:%09 数字键及小数点按钮代码范例%全局变量 locaval 用于存储用户输入的多位数值%全局变量 gloval2 用于存储待处理的第二位数值function pushbutton1_Callback(hObject, eventdata, handles)成 绩:指导教师(签名):global locaval;a = get(handles.pushbutton1,String);locaval=strcat(locaval,a);set(handles.text1,String,locaval);global gloval2gloval2=locaval;guidata(hObject, handles);%运算符按钮处理“+、-、*、 ”范例%全局变量 flagnum 存储运算符标志%全局变量 global1 用于储存第一个待处理数值function pushbutton10_Callback(hObject, eventdata, handles)a = get(handles.pushbutton10,String);b = get(handles.text1,String);set(handles.text1,String,a);global flagnumglobal gloval1global locavallocaval= ;flagnum=1;gloval1=b;guidata(hObject, handles);%取相反数按钮“+-”代码%算法实现:用零减去文本框现在的值,再赋值给文本框function pushbutton14_Callback(hObject, eventdata, handles)global locaval;locaval=str2num(locaval);locaval=0-locaval;locaval=num2str(locaval);set(handles.text1,String,locaval);global gloval2gloval2=locaval;guidata(hObject, handles);% 等号按钮运算实现%根据 flagnum 运算标志用 switch 决策语句实现相应计算%需注意相应数据类型的转化function pushbutton17_Callback(hObject, eventdata, handles)global flagnumglobal gloval1global gloval2global locavallocaval= ;gloval1=str2num(gloval1);gloval2=str2num(gloval2);case1=gloval1/gloval2;case2=gloval1*gloval2;case3=gloval1-gloval2;case4=gloval1+gloval2;case1=num2str(case1);case2=num2str(case2);case3=num2str(case3);case4=num2str(case4);switch flagnum;case 1set(handles.text1,String,case1);case 2set(handles.text1,String,case2);case 3set(handles.text1,String,case3);case 4set(handles.text1,String,case4);endguidata(hObject,handles)% BackSpace 按钮函数%算法实现:MATLAB 是用矩阵存储数据的,相应的可以取文本框的前 N-1 实现其功能function pushbutton19_Callback(hObject, eventdata, handles)textString = get(handles.text1,String);if(strcmp(textString,0.)=1)set(handles.text1,String,0.) ;elsess=char(textString);l=length(textString);textString=ss(1:l-1);set(handles.text1,String,textString)endguidata(hObject,handles)%C 清除按钮函数%把全局变量 locaval 清零function pushbutton20_Callback(hObject, eventdata, handles)global locavallocaval= ;set(handles.text1,String,0.);guidata(hObject,handles)%开平方函数function pushbutton22_Callback(hObject, eventdata, handles)textString = get(handles.text1,String);textString=str2num(textString);textString=sqrt(textString);textString=num2str(textString);set(handles.text1,String,textString);locaval= ;guidata(hObject,handles)%取 1/x 函数 function pushbutton24_Callback(hObject, eventdata, handles)global locavallocaval=str2num(locaval);locaval=1/locaval;set(handles.text1,String,locaval);locaval= ;guidata(hObject,handles)实验心得:!、通过 MATLAB 简单计算器的设计,初步了解了关于 MATLAB 图形用户界面的部分控件的使用方法。2、MATLAB 的 GUI 提供的很多实用的控件,方便用于设计属于自己的图形界面。源码:function varargout = bt0(varargin)% BT0 M-file for bt0.fig% BT0, by itself, creates a new BT0 or raises the existing% singleton*.% H = BT0 returns the handle to a new BT0 or the handle to% the existing singleton*.% BT0(Property,Value,.) creates a new BT0 using the% given property value pairs. Unrecognized properties are passed via% varargin to bt0_OpeningFcn. This calling syntax produces a% warning when there is an existing singleton*.% BT0(CALLBACK) and BT0(CALLBACK,hObject,.) call the% local function named CALLBACK in BT0.M with the given input% arguments.% *See GUI Options on GUIDEs Tools menu. Choose “GUI allows only one% instance to run (singleton)“.% See also: GUIDE, GUIDATA, GUIHANDLES% Edit the above text to modify the response to help bt0% Last Modified by GUIDE v2.5 04-May-2010 14:01:00% Begin initialization code - DO NOT EDITglobal gloval1;global gloval2;global flagnum;global locaval;gui_Singleton = 1;gui_State = struct(gui_Name, mfilename, .gui_Singleton, gui_Singleton, .gui_OpeningFcn, bt0_OpeningFcn, .gui_OutputFcn, bt0_OutputFcn, .gui_LayoutFcn, , .gui_Callback, );if nargin endif nargoutvarargout1:nargout = gui_mainfcn(gui_State, varargin:);elsegui_mainfcn(gui_State, varargin:);end% End initialization code - DO NOT EDIT% - Executes just before bt0 is made visible.function bt0_OpeningFcn(hObject, eventdata, handles, varargin)% This function has no output args, see OutputFcn.% hObject handle to figure% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)% varargin unrecognized PropertyName/PropertyValue pairs from the% command line (see VARARGIN)% Choose default command line output for bt0handles.output = hObject;% Update handles structureguidata(hObject, handles);% UIWAIT makes bt0 wait for user response (see UIRESUME)% uiwait(handles.figure1);% - Outputs from this function are returned to the command line.function varargout = bt0_OutputFcn(hObject, eventdata, handles)% varargout cell array for returning output args (see VARARGOUT);% hObject handle to figure% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)% Get default command line output from handles structurevarargout1 = handles.output;% - Executes on button press in pushbutton1.function pushbutton1_Callback(hObject, eventdata, handles)% hObject handle to pushbutton1 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)global locaval;a = get(handles.pushbutton1,String);locaval=strcat(locaval,a);set(handles.text1,String,locaval);global gloval2gloval2=locaval;guidata(hObject, handles);% - Executes on button press in pushbutton2.function pushbutton2_Callback(hObject, eventdata, handles)% hObject handle to pushbutton2 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)global locaval;a = get(handles.pushbutton2,String);locaval=strcat(locaval,a);set(handles.text1,String,locaval);global gloval2gloval2=locaval;guidata(hObject, handles);% - Executes on button press in pushbutton3.function pushbutton3_Callback(hObject, eventdata, handles)% hObject handle to pushbutton3 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)global locavala = get(handles.pushbutton3,String);locaval=strcat(locaval,a);set(handles.text1,String,locaval);global gloval2gloval2=locaval;guidata(hObject, handles);% - Executes on button press in pushbutton4.function pushbutton4_Callback(hObject, eventdata, handles)% hObject handle to pushbutton4 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)global locavala = get(handles.pushbutton4,String);locaval=strcat(locaval,a);set(handles.text1,String,locaval);global gloval2gloval2=locaval;guidata(hObject, handles);% - Executes on button press in pushbutton5.function pushbutton5_Callback(hObject, eventdata, handles)% hObject handle to pushbutton5 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)global locavala = get(handles.pushbutton5,String);locaval=strcat(locaval,a);set(handles.text1,String,locaval);global gloval2gloval2=locaval;guidata(hObject, handles);% - Executes on button press in pushbutton6.function pushbutton6_Callback(hObject, eventdata, handles)% hObject handle to pushbutton6 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)global locavala = get(handles.pushbutton6,String);locaval=strcat(locaval,a);set(handles.text1,String,locaval);global gloval2gloval2=locaval;guidata(hObject, handles);% - Executes on button press in pushbutton7.function pushbutton7_Callback(hObject, eventdata, handles)% hObject handle to pushbutton7 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)global locavala = get(handles.pushbutton7,String);locaval=strcat(locaval,a)set(handles.text1,String,locaval);global gloval2gloval2=locaval;guidata(hObject, handles);% - Executes on button press in pushbutton8.function pushbutton8_Callback(hObject, eventdata, handles)% hObject handle to pushbutton8 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)global locavala = get(handles.pushbutton8,String);locaval=strcat(locaval,a);set(handles.text1,String,locaval);global gloval2gloval2=locaval;guidata(hObject, handles);% - Executes on button press in pushbutton9.function pushbutton9_Callback(hObject, eventdata, handles)% hObject handle to pushbutton9 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)global locavala = get(handles.pushbutton9,String);locaval=strcat(locaval,a);set(handles.text1,String,locaval);global gloval2gloval2=locaval;guidata(hObject, handles);% - Executes on button press in pushbutton10.function pushbutton10_Callback(hObject, eventdata, handles)% hObject handle to pushbutton10 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)a = get(handles.pushbutton10,String);b = get(handles.text1,String);set(handles.text1,String,a);global flagnumglobal gloval1global locavallocaval= ;flagnum=1;gloval1=b;guidata(hObject, handles);% - Executes on button press in pushbutton11.function pushbutton11_Callback(hObject, eventdata, handles)% hObject handle to pushbutton11 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)a = get(handles.pushbutton11,String);b = get(handles.text1,String);set(handles.text1,String,a);global flagnumglobal gloval1global locavallocaval= ;flagnum=2;gloval1=b;guidata(hObject, handles);% - Executes on button press in pushbutton12.function pushbutton12_Callback(hObject, eventdata, handles)% hObject handle to pushbutton12 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)a = get(handles.pushbutton12,String);b = get(handles.text1,String);set(handles.text1,String,a);global flagnumglobal gloval1global locavallocaval= ;flagnum=3;gloval1=b;guidata(hObject, handles);% - If Enable = on, executes on mouse press in 5 pixel border.% - Otherwise, executes on mouse press in 5 pixel border or over pushbutton13.function pushbutton13_ButtonDownFcn(hObject, eventdata, handles)% hObject handle to pushbutton13 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)global locavala = get(handles.pushbutton13,String);locaval=strcat(locaval,a);set(handles.text1,String,locaval);global gloval2gloval2=locaval;guidata(hObject, handles);% - Executes on button press in pushbutton13.function pushbutton13_Callback(hObject, eventdata, handles)% hObject handle to pushbutton13 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)global locavala = get(handles.pushbutton13,String);locaval=strcat(locaval,a);set(handles.text1,String,locaval);global gloval2gloval2=a;guidata(hObject, handles);% - Executes on button press in pushbutton14.function pushbutton14_Callback(hObject, eventdata, handles)% hObject handle to pushbutton14 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)global locaval;locaval=str2num(locaval);locaval=0-locaval;locaval=num2str(locaval);set(handles.text1,String,locaval);global gloval2gloval2=locaval;guidata(hObject, handles);% - Executes on button press in pushbutton15.function pushbutton15_Callback(hObject, eventdata, handles)% hObject handle to pushbutton15 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)a = get(handles.pushbutton15,String);set(handles.text1,String,a);guidata(hObject, handles);% - Executes on button press in pushbutton16.function pushbutton16_Callback(hObject, eventdata, handles)% hObject handle to pushbutton16 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)a = get(handles.pushbutton16,String);b = get(handles.text1,String);set(handles.text1,String,a);global flagnumglobal gloval1global locavallocaval= ;flagnum=4;gloval1=b;guidata(hObject, handles);% - Executes on button press in pushbutton17.function pushbutton17_Callback(hObject, eventdata, handles)% hObject handle to pushbutton17 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)global flagnumglobal gloval1global gloval2global locavallocaval= ;gloval1=str2num(gloval1);gloval2=str2num(gloval2);case1=gloval1/gloval2;case2=gloval1*gloval2;case3=gloval1-gloval2;case4=gloval1+gloval2;case1=num2str(case1);case2=num2str(case2);case3=num2str(case3);case4=num2str(case4);switch flagnum;case 1set(handles.text1,String,case1);case 2set(handles.text1,String,case2);case 3set(handles.text1,String,case3);case 4set(handles.text1,String,case4);endguidata(hObject,handles)% - Executes on button press in pushbutton18.function pushbutton18_Callback(hObject, eventdata, handles)% hObject handle to pushbutton18 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)global locaval;a = get(handles.pushbutton18,String);locaval=strcat(locaval,a);set(handles.text1,String,locaval);global gloval2gloval2=locaval;guidata(hObject, handles);% - Executes on button press in pushbutton19.function pushbutton19_Callback(hObject, eventdata, handles)% hObject handle to pushbutton19 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)textString = get(handles.text1,String);if(strcmp(textString,0.)=1)set(handles.text1,String,0.) ;elsess=char(textString);l=length(textString);textString=ss(1:l-1);set(handles.text1,String,textString)endguidata(hObject,handles)% - Executes on button press in pushbutton20.function pushbutton20_Callback(hObject, eventdata, handles)% hObject handle to pushbutton20 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see G

温馨提示

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

最新文档

评论

0/150

提交评论