MATLAB:[1]纯代码实现简单计算器

2025-04-16 10:26:56

下面这个例子是一个简单计算器的实现过程,完全用代码实现,只用了一个.m文件。这个计算啊可以实现加减乘除功能。

计算器实现过程

1、所有的代码如下,最后的界面如图所示:%简单计算器 hf=figure('Color',[0,1,1],'Position&#泌驾台佐39;,[100,200,400,200],... 'Name','简单计算器','NumberTitle','off','MenuBar','none'); %文本1 用于输入数1 ht1=uicontrol(hf,'Style','Text','Position',[0.1,0.8,0.2,0.1],... 'Units','normalized','String','数1'); %文本2 用于输入数2 ht2=uicontrol(hf,'Style','Text','Position',[0.4,0.8,0.2,0.1],... 'Units','normalized','String','数2'); %文本3 用于输入数2 ht3=uicontrol(hf,'Style','Text','Position',[0.7,0.8,0.2,0.1],... 'Units','normalized','String','结果'); %编辑框1 用于输入数1 he1=uicontrol(hf,'Style','Edit','Position',[0.1,0.6,0.2,0.1],... 'Units','normalized','Back',[0,1,0]); %编辑框2 用于输入数2 he2=uicontrol(hf,'Style','Edit','Position',[0.4,0.6,0.2,0.1],... 'Units','normalized','Back',[0,1,0]); %编辑框2 用于输入数2 he3=uicontrol(hf,'Style','Edit','Position',[0.7,0.6,0.2,0.1],... 'Units','normalized','Back',[0,1,0]); %下面这段代码用于实现数1加数2,并把结果显示到编辑框3 ADD=['n1=str2num(get(he1,''String''));','n2=str2num(get(he2,''String''));',... 'res=n1+n2;','set(he3,''string'',res);']; %下面这段代码用于实现数1减数2,并把结果显示到编辑框3 SUB=['n1=str2num(get(he1,''String''));','n2=str2num(get(he2,''String''));',... 'res=n1-n2;','set(he3,''string'',res);']; %下面这段代码用于实现数1乘数2,并把结果显示到编辑框3 MUL=['n1=str2num(get(he1,''String''));','n2=str2num(get(he2,''String''));',... 'res=n1*n2;','set(he3,''string'',res);']; %下面这段代码用于实现数1除数2,并把结果显示到编辑框3 DIV=['n1=str2num(get(he1,''String''));','n2=str2num(get(he2,''String''));',... 'res=n1/n2;','set(he3,''string'',res);']; %加法按钮 uicontrol(hf,'Style','Push','Position',[0.1,0.3,0.2,0.12],... 'String','+','Units','normalized','Call',ADD); %减法按钮 uicontrol(hf,'Style','Push','Position',[0.3,0.3,0.2,0.12],... 'String','-','Units','normalized','Call',SUB); %乘法按钮 uicontrol(hf,'Style','Push','Position',[0.5,0.3,0.2,0.12],... 'String','*','Units','normalized','Call',MUL); %除法按钮 uicontrol(hf,'Style','Push','Position',[0.7,0.3,0.2,0.12],... 'String','/','Units','normalized','Call',DIV);

MATLAB:[1]纯代码实现简单计算器

2、静态文本的实现用了三行代码,用于显示文字数1、数2和结果: %文本1 用于输入数1 ht1=uicontrol(hf,'Style','Text','Position',[0.1,0.8,0.2,0.1],... 'Units','normalized','String','数1'); %文本2 用于输入数2 ht2=uicontrol(hf,'Style','Text','Position',[0.4,0.8,0.2,0.1],... 'Units','normalized','String','数2'); %文本3 用于输入数2 ht3=uicontrol(hf,'Style','Text','Position',[0.7,0.8,0.2,0.1],... 'Units','normalized','String','结果');

MATLAB:[1]纯代码实现简单计算器

3、数1、数2和结果:用了编辑框来实现:he1=uicontrol(hf,'Style','Edit','Position',[0.1,0.6,0.2,0.1],... 'Units','normalized','Back',[0,1,0]); %编辑框2 用于输入数2 he2=uicontrol(hf,'Style','Edit','Position',[0.4,0.6,0.2,0.1],... 'Units','normalized','Back',[0,1,0]); %编辑框2 用于输入数2 he3=uicontrol(hf,'Style','Edit','Position',[0.7,0.6,0.2,0.1],... 'Units','normalized','Back',[0,1,0]);

MATLAB:[1]纯代码实现简单计算器

4、加减乘除的算法实现放在四个代码块中: %下面这段代码用于实现数1加墙绅褡孛数2,并把结果显示到编辑框3 A肛舀辨乔DD=['n1=str2num(get(he1,''String''));','n2=str2num(get(he2,''String''));',... 'res=n1+n2;','set(he3,''string'',res);']; %下面这段代码用于实现数1减数2,并把结果显示到编辑框3 SUB=['n1=str2num(get(he1,''String''));','n2=str2num(get(he2,''String''));',... 'res=n1-n2;','set(he3,''string'',res);']; %下面这段代码用于实现数1乘数2,并把结果显示到编辑框3 MUL=['n1=str2num(get(he1,''String''));','n2=str2num(get(he2,''String''));',... 'res=n1*n2;','set(he3,''string'',res);']; %下面这段代码用于实现数1除数2,并把结果显示到编辑框3 DIV=['n1=str2num(get(he1,''String''));','n2=str2num(get(he2,''String''));',... 'res=n1/n2;','set(he3,''string'',res);'];

MATLAB:[1]纯代码实现简单计算器

5、下面的代码实现了四个按钮的显示和回调方法的设置: %加法按钮 uicontrol(hf,'Style','Push','Position',[0.1,0.3,0.2,0.12],... 'String','+','Units','normalized','Call',ADD); %减法按钮 uicontrol(hf,'Style','Push','Position',[0.3,0.3,0.2,0.12],... 'String','-','Units','normalized','Call',SUB); %乘法按钮 uicontrol(hf,'Style','Push','Position',[0.5,0.3,0.2,0.12],... 'String','*','Units','normalized','Call',MUL); %除法按钮 uicontrol(hf,'Style','Push','Position',[0.7,0.3,0.2,0.12],... 'String','/','Units','normalized','Call',DIV);

MATLAB:[1]纯代码实现简单计算器

6、运算效果如图所示,所有功能正常。

MATLAB:[1]纯代码实现简单计算器
声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢