顺着实验发下matlab计算器
本文实现了mlapp的简易计算器实现,并打包了app;
% Callbacks that handle component events methods (Access = private) % Button pushed function: Button_0 function Button_0Pushed(app, event) numbers_mat=cell2mat(app.inputTextArea.Value); if(numbers_mat=='0') else app.inputTextArea.Value=strcat(app.inputTextArea.Value,'0'); end end % Button pushed function: Button_1 function Button_1Pushed(app, event) numbers_mat=cell2mat(app.inputTextArea.Value); if(numbers_mat=='0') app.inputTextArea.Value='1'; else app.inputTextArea.Value=strcat(app.inputTextArea.Value,'1'); end end % Button pushed function: Button_2 function Button_2Pushed(app, event) numbers_mat=cell2mat(app.inputTextArea.Value); if(numbers_mat=='0') app.inputTextArea.Value='2'; else app.inputTextArea.Value=strcat(app.inputTextArea.Value,'2'); end end % Button pushed function: Button_3 function Button_3Pushed(app, event) numbers_mat=cell2mat(app.inputTextArea.Value); if(numbers_mat=='0') app.inputTextArea.Value='3'; else app.inputTextArea.Value=strcat(app.inputTextArea.Value,'3'); end end % Button pushed function: Button_4 function Button_4Pushed(app, event) numbers_mat=cell2mat(app.inputTextArea.Value); if(numbers_mat=='0') app.inputTextArea.Value='4'; else app.inputTextArea.Value=strcat(app.inputTextArea.Value,'4'); end end % Button pushed function: Button_5 function Button_5Pushed(app, event) numbers_mat=cell2mat(app.inputTextArea.Value); if(numbers_mat=='0') app.inputTextArea.Value='5'; else app.inputTextArea.Value=strcat(app.inputTextArea.Value,'5'); end end % Button pushed function: Button_6 function Button_6Pushed(app, event) numbers_mat=cell2mat(app.inputTextArea.Value); if(numbers_mat=='0') app.inputTextArea.Value='6'; else app.inputTextArea.Value=strcat(app.inputTextArea.Value,'6'); end end % Button pushed function: Button_7 function Button_7Pushed(app, event) numbers_mat=cell2mat(app.inputTextArea.Value); if(numbers_mat=='0') app.inputTextArea.Value='7'; else app.inputTextArea.Value=strcat(app.inputTextArea.Value,'7'); end end % Button pushed function: Button_8 function Button_8Pushed(app, event) numbers_mat=cell2mat(app.inputTextArea.Value); if(numbers_mat=='0') app.inputTextArea.Value='8'; else app.inputTextArea.Value=strcat(app.inputTextArea.Value,'8'); end end % Button pushed function: Button_9 function Button_9Pushed(app, event) numbers_mat=cell2mat(app.inputTextArea.Value); if(numbers_mat=='0') app.inputTextArea.Value='9'; else app.inputTextArea.Value=strcat(app.inputTextArea.Value,'9'); end end % Button pushed function: Button_pi function Button_piPushed(app, event) numbers_mat=cell2mat(app.inputTextArea.Value); if(numbers_mat=='0') app.inputTextArea.Value='pi'; else app.inputTextArea.Value=strcat(app.inputTextArea.Value,'pi'); end end % Button pushed function: Button_point function Button_pointPushed(app, event) app.inputTextArea.Value=strcat(app.inputTextArea.Value,'.'); end % Button pushed function: Button_add function Button_addPushed(app, event) app.inputTextArea.Value=strcat(app.inputTextArea.Value,'+'); end % Button pushed function: Button_subtract function Button_subtractPushed(app, event) app.inputTextArea.Value=strcat(app.inputTextArea.Value,'-'); end % Button pushed function: Button_multiply function Button_multiplyPushed(app, event) app.inputTextArea.Value=strcat(app.inputTextArea.Value,'*'); end % Button pushed function: Button_devide function Button_devidePushed(app, event) app.inputTextArea.Value=strcat(app.inputTextArea.Value,'/'); end % Button pushed function: Button_left_bracket function Button_left_bracketPushed(app, event) numbers_mat=cell2mat(app.inputTextArea.Value); if(numbers_mat=='0') app.inputTextArea.Value='('; else app.inputTextArea.Value=strcat(app.inputTextArea.Value,'('); end end % Button pushed function: Button_right_bracket function Button_right_bracketPushed(app, event) app.inputTextArea.Value=strcat(app.inputTextArea.Value,')'); end % Button pushed function: Button_equal function Button_equalPushed(app, event) numbers_mat=cell2mat(app.inputTextArea.Value); x=mat2str(numbers_mat); y1=eval(numbers_mat); y=sprintf('%.10f',y1); app.ResultsTextArea.Value=y; app.inputTextArea.Value='0'; end % Button pushed function: CEButton function CEButtonPushed(app, event) app.inputTextArea.Value='0'; end % Button pushed function: Button_plus_or_minus function Button_plus_or_minusPushed(app, event) numbers_mat=cell2mat(app.inputTextArea.Value); numbers_mat_2=strcat('0-',numbers_mat); y1=eval(numbers_mat_2); y=sprintf('%.10f',y1); app.ResultsTextArea.Value=y; app.inputTextArea.Value='0'; end % Button pushed function: Button_per_cent function Button_per_centPushed(app, event) numbers_mat=cell2mat(app.inputTextArea.Value); numbers_mat_2=strcat('100*',numbers_mat); y1=eval(numbers_mat_2); y=sprintf('%.10f',y1); app.ResultsTextArea.Value=strcat(y,'%'); app.inputTextArea.Value='0'; end % Button pushed function: lgButton function lgButtonPushed(app, event) numbers_mat=cell2mat(app.inputTextArea.Value); numbers_mat_2=strcat('log10(',numbers_mat,')'); y1=eval(numbers_mat_2); y=sprintf('%.10f',y1); app.ResultsTextArea.Value=y; app.inputTextArea.Value='0'; end % Button pushed function: sqrtButton function sqrtButtonPushed(app, event) numbers_mat=cell2mat(app.inputTextArea.Value); numbers_mat_2=strcat('sqrt(',numbers_mat,')'); y1=eval(numbers_mat_2); y=sprintf('%.10f',y1); app.ResultsTextArea.Value=y; app.inputTextArea.Value='0'; end % Button pushed function: nButton function nButtonPushed(app, event) numbers_mat=cell2mat(app.inputTextArea.Value); x=str2double(numbers_mat); numbers_mat_2=factorial(x); %y1=eval(numbers_mat_2); y=sprintf('%.10f',numbers_mat_2); app.ResultsTextArea.Value=y; app.inputTextArea.Value='0'; end % Button pushed function: DeleteButton function DeleteButtonPushed(app, event) numbers_mat=cell2mat(app.inputTextArea.Value); numbers_mat(end)=[]; numbers_mat_2=strip(numbers_mat,'right'); app.inputTextArea.Value=numbers_mat_2; end % Button pushed function: x_yButton function x_yButtonPushed(app, event) app.inputTextArea.Value=strcat(app.inputTextArea.Value,'.^'); end end
实现界面:
参考文献:
https://wenku.baidu.com/view/2b3e8644f41fb7360b4c2e3f5727a5e9846a27fa.html
浙公网安备 33010602011771号