matlab计算器设计流程图_MATLAB设计科学计算器GUI操作界面

该博客详细介绍了如何使用MATLAB设计一个科学计算器的图形用户界面(GUI)。通过函数`calculator`,实现了包括二进制与十进制转换、三角函数、对数、平方根、乘方等常见计算功能,并提供了清空输入、括号和基本运算符的支持。
摘要由CSDN通过智能技术生成

function varargout = calculator(varargin)

% CALCULATOR MATLAB code for calculator.fig

%  CALCULATOR, by itself, creates a new CALCULATOR

or raises the existing

%  singleton*.

%

%  H =

CALCULATOR returns the handle to a new CALCULATOR or the handle

to

%  the

existing singleton*.

%

%  CALCULATOR('CALLBACK',hObject,eventData,handles,...)

calls the local

%  function named CALLBACK in CALCULATOR.M with the

given input arguments.

%

%  CALCULATOR('Property','Value',...) creates a new

CALCULATOR or raises the

%  existing singleton*.  Starting

from the left, property value pairs are

%  applied to the GUI before calculator_OpeningFcn

gets called.  An

%  unrecognized property name or invalid value makes

property application

%  stop.  All inputs are passed to

calculator_OpeningFcn via varargin.

%

%  *See

GUI Options on GUIDE's 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

calculator

% Last Modified by GUIDE v2.5 28-Sep-2016 21:27:55

% Begin initialization code - DO NOT EDIT

gui_Singleton = 1;

gui_State = struct('gui_Name',  mfilename, ...

'gui_Singleton',  gui_Singleton,

...

'gui_OpeningFcn', @calculator_OpeningFcn,

...

'gui_OutputFcn',

@calculator_OutputFcn, ...

'gui_LayoutFcn',  [] , ...

'gui_Callback',  []);

if nargin && ischar(varargin{1})

gui_State.gui_Callback =

str2func(varargin{1});

end

if nargout

[varargout{1:nargout}] =

gui_mainfcn(gui_State, varargin{:});

else

gui_mainfcn(gui_State,

varargin{:});

end

% End initialization code - DO NOT EDIT

% --- Executes just before calculator is made visible.

function calculator_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  command line arguments to

calculator (see VARARGIN)

% Choose default command line output for calculator

handles.output = hObject;

% Update handles structure

guidata(hObject, handles);

% UIWAIT makes calculator wait for user response (see

UIRESUME)

% uiwait(handles.figure1);

% --- Outputs from this function are returned to the command

line.

function varargout = calculator_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 structure

varargout{1} = 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)

textString=get(handles.text1,'String');

e=bin2dec(textString);

set(handles.text1,'String',e);%按键“二进制转十进制”

% --- 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)

textString=get(handles.text1,'String');

e=dec2bin(textString);

set(handles.text1,'String',e);%按键“十进制转二进制”

% --- 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)

textString=get(handles.text1,'String');

textString=strcat(textString,'sin');

set(handles.text1,'String',textString);%设置符号“sin”

% --- 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)

textString=get(handles.text1,'String');

textString=strcat(textString,'cos');

set(handles.text1,'String',textString);%设置符号“cos”

% --- 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)

textString=get(handles.text1,'String');

if

((strcmp(textString,'1.57')==1)||(strcmp(textString,'-1.57')==1))

set(handles.edit1,'String','inf');

else

textString=strcat(textString,'tan');

set(handles.text1,'String',textString);%设置符号“tan”

end

% --- 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)

textString=get(handles.text1,'String');

textString=strcat(textString,'pi');

set(handles.text1,'String',textString);%设置符号“π”

% --- 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)

textString=get(handles.text1,'String');

if (strcmp(textString,'0')==1)

set(handles.text1,'String','error');

else

a=strread(textString,'%f');

a=log2(a);

set(handles.text1,'String',a);

end  %设置符号“log2”

% --- 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)

set(handles.text1,'String','');%按键“清空”

% --- 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)

textString=get(handles.text1,'String');

textString=strcat(textString,'asin');

set(handles.text1,'String',textString);%设置符号“arcsin”

% --- 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)

textString=get(handles.text1,'String');

textString=strcat(textString,'acos');

set(handles.text1,'String',textString);%设置符号“arccos”

% --- 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)

textString=get(handles.text1,'String');

textString=strcat(textString,'atan');

set(handles.text1,'String',textString);%设置符号“arctan”

% --- 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)

textString=get(handles.text1,'String');

textString=strcat(textString,'(');

set(handles.text1,'String',textString);%设置符号“(”

% --- 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)

textString=get(handles.text1,'String');

textString=strcat(textString,')');

set(handles.text1,'String',textString);%设置符号“)”

% --- 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)

close(gcf);%按键“退出”

% --- 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)

textString=get(handles.text1,'String');

textString=strcat(textString,'1');

set(handles.text1,'String',textString);%上面三句设置数字“1”,对其存储并输出

% --- 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)

textString=get(handles.text1,'String');

textString=strcat(textString,'4');

set(handles.text1,'String',textString);%上面三句设置数字“4”,对其存储并输出

% --- 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)

textString=get(handles.text1,'String');

textString=strcat(textString,'7');

set(handles.text1,'String',textString);%上面三句设置数字“7”,对其存储并输出

% --- 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)

textString=get(handles.text1,'String');

textString=strcat(textString,'2');

set(handles.text1,'String',textString);%上面三句设置数字“2”,对其存储并输出

% --- 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');

textString=strcat(textString,'5');

set(handles.text1,'String',textString);%上面三句设置数字“5”,对其存储并输出

% --- 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 GUIDATA)

textString=get(handles.text1,'String');

textString=strcat(textString,'8');

set(handles.text1,'String',textString);%上面三句设置数字“8”,对其存储并输出

% --- Executes on button press in pushbutton21.

function pushbutton21_Callback(hObject, eventdata,

handles)

% hObject  handle to

pushbutton21 (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');

textString=strcat(textString,'3');

set(handles.text1,'String',textString);%上面三句设置数字“3”,对其存储并输出

% --- Executes on button press in pushbutton22.

function pushbutton22_Callback(hObject, eventdata,

handles)

% hObject  handle to

pushbutton22 (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');

textString=strcat(textString,'6');

set(handles.text1,'String',textString);%上面三句设置数字“6”,对其存储并输出

% --- Executes on button press in pushbutton23.

function pushbutton23_Callback(hObject, eventdata,

handles)

% hObject  handle to

pushbutton23 (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');

textString=strcat(textString,'9');

set(handles.text1,'String',textString);%上面三句设置数字“9”,对其存储并输出

% --- Executes on button press in pushbutton24.

function pushbutton24_Callback(hObject, eventdata,

handles)

% hObject  handle to

pushbutton24 (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');

textString=strcat(textString,'0');

set(handles.text1,'String',textString);%上面三句设置数字“0”,对其存储并输出

% --- Executes on button press in pushbutton25.

function pushbutton25_Callback(hObject, eventdata,

handles)

% hObject  handle to

pushbutton25 (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');

w=length(textString);

t=char(textString);

textString=t(1:w-1);%将w个字符串转成w-1个,即删除了末位字符

set(handles.text1,'String',textString);%按键“back”

% --- Executes on button press in pushbutton26.

function pushbutton26_Callback(hObject, eventdata,

handles)

% hObject  handle to

pushbutton26 (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');

textString=strcat(textString,'.');

set(handles.text1,'String',textString);%上面三句设置符号“.”,对其存储并输出

% --- Executes on button press in pushbutton27.

function pushbutton27_Callback(hObject, eventdata,

handles)

% hObject  handle to

pushbutton27 (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');

textString=strcat(textString,'+');

set(handles.text1,'String',textString);%上面三句设置符号“+”,对其存储并输出

% --- Executes on button press in pushbutton28.

function pushbutton28_Callback(hObject, eventdata,

handles)

% hObject  handle to

pushbutton28 (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');

textString=strcat(textString,'-');

set(handles.text1,'String',textString);%上面三句设置符号“-”,对其存储并输出

% --- Executes on button press in pushbutton29.

function pushbutton29_Callback(hObject, eventdata,

handles)

% hObject  handle to

pushbutton29 (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');

textString=strcat(textString,'*');

set(handles.text1,'String',textString);%上面三句设置符号“*”,对其存储并输出

% --- Executes on button press in pushbutton30.

function pushbutton30_Callback(hObject, eventdata,

handles)

% hObject  handle to

pushbutton30 (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');

textString=strcat(textString,'/');

set(handles.text1,'String',textString);%上面三句设置符号“÷”,对其存储并输出

% --- Executes on button press in pushbutton31.

function pushbutton31_Callback(hObject, eventdata,

handles)

% hObject  handle to

pushbutton31 (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');

s=eval_r(textString);

set(handles.text1,'String',s);%上面三句设置符号“=”,对其存储并输出

% --- Executes on button press in pushbutton32.

function pushbutton32_Callback(hObject, eventdata,

handles)

% hObject  handle to

pushbutton32 (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);

else

a=strread(textString,'%f');

a=sqrt(a);

set(handles.text1,'String',a);

end  %设置符号“√”

% --- Executes on button press in pushbutton33.

function pushbutton33_Callback(hObject, eventdata,

handles)

% hObject  handle to

pushbutton33 (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');

textString=strcat(textString,'^2');

set(handles.text1,'String',textString);%设置符号“^2”

% --- Executes on button press in pushbutton34.

function pushbutton34_Callback(hObject, eventdata,

handles)

% hObject  handle to

pushbutton34 (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');

textString=strcat(textString,'^3');

set(handles.text1,'String',textString);%设置符号“^3”

% --- Executes on button press in pushbutton36.

function pushbutton36_Callback(hObject, eventdata,

handles)

% hObject  handle to

pushbutton36 (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');

textString=strcat(textString,'^');

set(handles.text1,'String',textString);%设置符号“^”,n次方

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值