先来给大家介绍一下MATLAB:
MATLAB是matrix&laboratory两个词的组合,意为矩阵工厂。MATLAB 是美国MathWorks公司出品的商业数学软件,用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境 。它在数学数值计算方面那是响当当的。所以用MATLAB实现计算器功能是必备的的一项技能。
下面来看一下我用MATLAB实现的UI界面:
按键0~9的功能函数:(这里只列举按键0的功能函数,其他9个按键只需将函数名 pushbutton1_Callback和‘0’依次换成各自的函数名和相应的值即可)
function pushbutton1_Callback(hObject, eventdata, handles)
textString = get(handles.text1,'String');
textString =strcat(textString,'0');
set(handles.text1,'String',textString);
符号键+,-,*,.,/,的功能函数:(这里只列举按键+的功能函数,其他4个按键只需将函数名pushbutton11_Callback 和‘+’依次换成各自的函数名和相应的值即可)
function pushbutton11_Callback(hObject, eventdata, handles)
textString = get(handles.text1,'String');
textString =strcat(textString,'+');%strcat的作用是将两个字符串连接起来,就是在已输入的存储数据textString后添加“+”进行运算。
set(handles.text1,'String',textString)
平方函数:^2
function pushbutton17_Callback(hObject, eventdata, handles)
textString = get(handles.text1,'String');
textString =strcat(textString,'^2');
set(handles.text1,'String',textString)
back功能函数:
function pushbutton18_Callback(hObject, eventdata, handles)
textString = get(handles.text1,'String');
set(handles.text1,'String','') ;
ss=char(textString);
n=length(textString);
textString=ss(1:w-1);%将w个字符串转成w-1个,即删除了末位字符
set(handles.text1,'String',textString)
清零功能函数:
function pushbutton19_Callback(hObject, eventdata, handles)
set(handles.text1,'String','') %把静态文本框的字符清空,返回一个空格
"="功能函数:
function pushbutton16_Callback(hObject, eventdata, handles)
textString = get(handles.text1,'String');
ans =eval(textString);%eval的作用是将符号表达式转换成数值表达式
set(handles.text1,'String',ans);%将运算结果ans显示
退出功能函数:
function pushbutton20_Callback(hObject, eventdata, handles)
close(gcf);%关闭计算器
MATALB中数据的存储形式:
使用句柄handles指向对象text1,并以字符串形式来存储数据文本框text1的内容。
小结一下:
通过MATLAB的GUI程序设计较为简单,在GUI设计中主要用到两种控件,显示框用到文本编辑框(edit text),说明框用到静态文本框(Static text),数字以及运算等按钮用到命令按钮(push button)。然后在通过各个按钮的回调函数(Callback),实现简单的计算功能。
更多控件功能请戳下面链接:
更多MATLAB图形界面控件
以上就是用MATLAB实现计算器的基本操作了,下节请听分享:用javascript实现计算器(可以将两者比较一下)。
喜欢记得点赞哦。