ImageVerifierCode 换一换
格式:DOCX , 页数:14 ,大小:269.75KB ,
资源ID:7929532      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/7929532.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(MATLAB编写矩阵计算器.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

MATLAB编写矩阵计算器.docx

1、MATLAB编写矩阵计算器MATLAB大作业矩阵计算器设计制作班级:021231学号:02123066作者:王鹏一、GUI开发环境简介MATLAB提供了一套可视化的创建图形窗口的工具,使用用户界面开发环境可方便的创建GUI应用程序,它可以根据用户设计的GUI布局,自动生成M文件的框架,用户使用这一框架编制自己的应用程序。图形用户界面(GraphicalUserInterfaces,GUI)则是由窗口、光标、按键、菜单、文字说明等对象(Objects)构成的一个用户界面。用户通过一定的方法(如鼠标或键盘)选择、激活这些图形对象,使计算机产生某种动作或变化,比如实现计算、绘图等。二、矩阵计算器介绍

2、2.1 程序使用的控件在矩阵计算器设计中主要用到三种控件,文本编辑框(edittext),静态文本框(Statictext),命令按钮(pushbutton),边框(panel)。然后在通过各个按钮的回调函数,实现简单的计算功能。2.2 程序功能介绍(1)具有用户图形界面。实现矩阵的加、减、乘、左除、右除等简单计算。 (2)有清空键,能清除操作。2.3 矩阵计算器界面及主要控件功能注释:text1文本编辑框控件功能:输出要计算公式。如12 45;78 56+659 238;79 56MatA文本编辑框功能:输入参与计算矩阵AMatB文本编辑框功能:输入参与计算矩阵BMatC静态文本框功能:输出

3、计算结果矩阵C三、部分计算操作结果(1) 加法+(2) 求逆(3) 转置(4) 群运算.*四、部分模块功能算法的实现(1)按键加法+响应:a=get(handles.matA,string);textString=strcat(a,+);b=get(handles.matB,string);textString=strcat(textString,b);set(handles.text1,String,textString);(2)按键转置响应a=get(handles.matA,string);textString=strcat(a,);set(handles.text1,String,te

4、xtString);(3)按键计算响应textString=get(handles.text1,String);f=eval(textString);set(handles.matC,string,num2str(f,%15.5g)(5) 按键清空响应set(handles.text1,String,)set(handles.matA,String,)set(handles.matB,String,)set(handles.matC,String,)注释:其余模块功能算法与以上代码较为相似,不在一一举例。五、其余传参方法 本程序通过文本编辑框(edit text)达到传参的目的,下面介绍两种常

5、用的其他传参方式。(1)运用global定义全局变量传递参数这种方法适用于gui内控件间以及不同gui间,是最简单的方式。使用方法:gloal xxxx在每一个要到该全局变量的地方,都要添一句gloal xxxx。缺点:全局变量破坏了程序的封装性,所以,全局变量是能少用尽量少用。(2)运用UserData传递参数 直接通过对象的userdata属性进行各个callback之间的数据存取操作。首先必须将数据存储到一个特定的对象中,假设对象的句柄值为handles.text1,需要存储的值为value,则输入以下程序即可: set( handles.text1,UserData,Value); 此

6、时,value数据就存在句柄值为ui_handle的对象内,在执行的过程中若要取回变量可以通过以下方式在任意callback中获取该数据值 :value=get( handles.text1,UserData);缺点:每个对象仅能存取一个变量值,因此当同一对象存储两次变量时 ,先前的变量值就会被覆盖掉,因此都用UserData存储简单与单一的数据。六、心得 这次作业在MATLAB GUI编程中是较为简单的,虽然老师当天布置的作业我当天完成,但是这期间还是遇到一些困难,比如起初我的程序计算结果矩阵C用文本编辑框(edit text),我的代码是正确的,但是却得不到结果。最后通过上网查资料,解决了

7、该问题。同时我对MATLAB有了新的认识。1、通过MATLAB矩阵计算器的设计,初步了解了关于MATLAB图形用户界面的部分控件的使用方法。2、MATLAB的GUI提供的很多实用的控件,方便用于设计属于自己的图形界面。3、Matlab具有强大、丰富的内置函数和工具箱,界面设计时更加简洁、快捷与直观。七、详细代码function varargout = untitled1(varargin)gui_Singleton = 1;gui_State = struct(gui_Name, mfilename, . gui_Singleton, gui_Singleton, . gui_OpeningF

8、cn, untitled1_OpeningFcn, . gui_OutputFcn, untitled1_OutputFcn, . gui_LayoutFcn, , . gui_Callback, );if nargin & ischar(varargin1) gui_State.gui_Callback = str2func(varargin1);endif nargout varargout1:nargout = gui_mainfcn(gui_State, varargin:);else gui_mainfcn(gui_State, varargin:);endfunction unti

9、tled1_OpeningFcn(hObject, eventdata, handles, varargin)handles.output = hObject;guidata(hObject, handles);function varargout = untitled1_OutputFcn(hObject, eventdata, handles)varargout1 = handles.output;function calculate_Callback(hObject, eventdata, handles)textString=get(handles.text1,String);f=ev

10、al(textString);set(handles.matC,string,num2str(f,%15.5g);function button1_Callback(hObject, eventdata, handles)a=get(handles.matA,string);textString=strcat(a,+);b=get(handles.matB,string);textString=strcat(textString,b);set(handles.text1,String,textString);function button2_Callback(hObject, eventdat

11、a, handles)a=get(handles.matA,string);textString=strcat(a,-);b=get(handles.matB,string);textString=strcat(textString,b);set(handles.text1,String,textString);function button3_Callback(hObject, eventdata, handles)a=get(handles.matA,string);textString=strcat(a,*);b=get(handles.matB,string);textString=s

12、trcat(textString,b);set(handles.text1,String,textString);function button4_Callback(hObject, eventdata, handles)a=get(handles.matA,string);textString=strcat(a,);b=get(handles.matB,string);textString=strcat(textString,b);set(handles.text1,String,textString);function button5_Callback(hObject, eventdata

13、, handles)a=get(handles.matA,string);textString=strcat(a,/);b=get(handles.matB,string);textString=strcat(textString,b);set(handles.text1,String,textString);function button6_Callback(hObject, eventdata, handles)a=get(handles.matA,string);textString=strcat(a,-1);set(handles.text1,String,textString);fu

14、nction button7_Callback(hObject, eventdata, handles)a=get(handles.matA,string);textString=strcat(a,);set(handles.text1,String,textString);function matA_CreateFcn(hObject, eventdata, handles)if ispc & isequal(get(hObject,BackgroundColor), get(0,defaultUicontrolBackgroundColor) set(hObject,BackgroundC

15、olor,white);endfunction matB_CreateFcn(hObject, eventdata, handles)if ispc & isequal(get(hObject,BackgroundColor), get(0,defaultUicontrolBackgroundColor) set(hObject,BackgroundColor,white);endfunction matC_CreateFcn(hObject, eventdata, handles)if ispc & isequal(get(hObject,BackgroundColor), get(0,de

16、faultUicontrolBackgroundColor) set(hObject,BackgroundColor,white);endfunction text10_CreateFcn(hObject, eventdata, handles)if ispc & isequal(get(hObject,BackgroundColor), get(0,defaultUicontrolBackgroundColor) set(hObject,BackgroundColor,white);endfunction text1_CreateFcn(hObject, eventdata, handles

17、)if ispc & isequal(get(hObject,BackgroundColor), get(0,defaultUicontrolBackgroundColor) set(hObject,BackgroundColor,white);endfunction pushbutton11_Callback(hObject, eventdata, handles)set(handles.text1,String,);set(handles.matA,String,);set(handles.matB,String,);set(handles.matC,String,);function p

18、ushbutton20_Callback(hObject, eventdata, handles)a=get(handles.matA,string);textString=strcat(a,.*);b=get(handles.matB,string);textString=strcat(textString,b);set(handles.text1,String,textString);function pushbutton21_Callback(hObject, eventdata, handles)a=get(handles.matA,string);textString=strcat(

19、a,./);b=get(handles.matB,string);textString=strcat(textString,b);set(handles.text1,String,textString);function pushbutton22_Callback(hObject, eventdata, handles)a=get(handles.matA,string);textString=strcat(a,.);b=get(handles.matB,string);textString=strcat(textString,b);set(handles.text1,String,textS

20、tring);function pushbutton23_Callback(hObject, eventdata, handles)a=get(handles.matA,string);textString=strcat(a,.);b=get(handles.matB,string);textString=strcat(textString,b);set(handles.text1,String,textString);function pushbutton24_Callback(hObject, eventdata, handles)a=get(handles.matA,string);textString=strcat(a,.);set(handles.text1,String,textString);

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1