新建 DOCX 文档

发布时间 2023-10-14 12:07:02作者: qwerty81173

一.项目功能介绍

  1.该计算器需要实现加、减、乘、除、开平方功能。

  2.需要有一个运行的UI界面,可以和电脑自带的计算器相比较。

  3.该界面要有一个文本输入框,用来显示输入的表达式;

  4.若干个按钮,用来用来显示数字以及操作符;

  5.当点击按钮时,按钮上面对应的文本要显示在文本输入框中,并完成计算。

二.使用环境介绍

  MATLAB是一种用于技术计算的高性能语言。它在一个易于使用的环境中集成了计算,可视化和编程,其中问题和解决方案以熟悉的数学符号表示。可以做小游戏,可以进行精确的数学计算(高数,概率,线代方程,尤其擅长矩阵),三维建模画出立体图形,与C++,Python等混合编程。

三.程序流程图

 

IMG_256

 

 

四.详细代码

 

classdef app1 < matlab.apps.AppBase

% Properties that correspond to app components

properties (Access = public)

UIFigure matlab.ui.Figure

genhao matlab.ui.control.Button

Display matlab.ui.control.EditField

Clear matlab.ui.control.Button

Delete matlab.ui.control.Button

Lift matlab.ui.control.Button

Right matlab.ui.control.Button

Divide matlab.ui.control.Button

Multiply matlab.ui.control.Button

Subtract matlab.ui.control.Button

Add matlab.ui.control.Button

Equal matlab.ui.control.Button

Number_3 matlab.ui.control.Button

Number_6 matlab.ui.control.Button

Number_9 matlab.ui.control.Button

Point matlab.ui.control.Button

Number_7 matlab.ui.control.Button

Number_8 matlab.ui.control.Button

Number_5 matlab.ui.control.Button

Number_2 matlab.ui.control.Button

Number_4 matlab.ui.control.Button

Number_1 matlab.ui.control.Button

Number_0 matlab.ui.control.Button

end

% Callbacks that handle component events

methods (Access = private)

% Button pushed function: Number_0

function Number_0ButtonPushed(app, event)

app.Display.Value = app.Display.Value +"0";

end

% Button pushed function: Number_1

function Number_1ButtonPushed(app, event)

app.Display.Value = app.Display.Value +"1";

end

% Button pushed function: Number_4

function Number_4ButtonPushed(app, event)

app.Display.Value = app.Display.Value +"4";

end

% Button pushed function: Number_2

function Number_2ButtonPushed(app, event)

app.Display.Value = app.Display.Value +"2";

end

% Button pushed function: Number_5

function Number_5ButtonPushed(app, event)

app.Display.Value = app.Display.Value +"5";

end

% Button pushed function: Number_8

function Number_8ButtonPushed(app, event)

app.Display.Value = app.Display.Value +"8";

end

% Button pushed function: Number_7

function Number_7ButtonPushed(app, event)

app.Display.Value = app.Display.Value +"7";

end

% Button pushed function: Number_9

function Number_9ButtonPushed(app, event)

app.Display.Value = app.Display.Value +"9";

end

% Button pushed function: Number_6

function Number_6ButtonPushed(app, event)

app.Display.Value = app.Display.Value +"6";

end

% Button pushed function: Number_3

function Number_3ButtonPushed(app, event)

app.Display.Value = app.Display.Value +"3";

end

% Button pushed function: Add

function AddButtonPushed(app, event)

app.Display.Value = app.Display.Value +"+";

end

% Button pushed function: Subtract

function SubtractButtonPushed(app, event)

app.Display.Value = app.Display.Value +"-";

end

% Button pushed function: Multiply

function MultiplyButtonPushed(app, event)

app.Display.Value = app.Display.Value +"*";

end

% Button pushed function: Divide

function DivideButtonPushed(app, event)

app.Display.Value = app.Display.Value +"/";

end

% Button pushed function: Point

function PointButtonPushed(app, event)

app.Display.Value = app.Display.Value +".";

end

% Button pushed function: Lift

function LiftButtonPushed(app, event)

app.Display.Value = app.Display.Value +"(";

end

% Button pushed function: Right

function RightButtonPushed(app, event)

app.Display.Value = app.Display.Value +")";

end

% Button pushed function: Equal

function EqualButtonPushed(app, event)

app.Display.Value = num2str(eval(char(app.Display.Value)));

end

% Button pushed function: Delete

function DeleteButtonPushed(app, event)

str = char(app.Display.Value);

app.Display.Value = str(1:end-1);

end

% Button pushed function: Clear

function ClearButtonPushed(app, event)

app.Display.Value="";

end

% Callback function

function genhaoButtonPushed(app, event)

num = char(get(app.Display.Value,'√'));

app.Display.Value = sqrt((num^2 + 4 * 2) - num^2);

end

% Button pushed function: genhao

function genhaoButtonPushed2(app, event)

num = num2str(eval(char(app.Display.Value)));

app.Display.Value = app.Display.Value +sqrt();

end

end

% Component initialization

methods (Access = private)

% Create UIFigure and components

function createComponents(app)

% Create UIFigure and hide until all components are created

app.UIFigure = uifigure('Visible', 'off');

app.UIFigure.Position = [100 100 720 622];

app.UIFigure.Name = 'MATLAB App';

% Create Number_0

app.Number_0 = uibutton(app.UIFigure, 'push');

app.Number_0.ButtonPushedFcn = createCallbackFcn(app, @Number_0ButtonPushed, true);

app.Number_0.Position = [74 59 100 54];

app.Number_0.Text = '0';

% Create Number_1

app.Number_1 = uibutton(app.UIFigure, 'push');

app.Number_1.ButtonPushedFcn = createCallbackFcn(app, @Number_1ButtonPushed, true);

app.Number_1.Position = [76 132 100 54];

app.Number_1.Text = '1';

% Create Number_4

app.Number_4 = uibutton(app.UIFigure, 'push');

app.Number_4.ButtonPushedFcn = createCallbackFcn(app, @Number_4ButtonPushed, true);

app.Number_4.Position = [77 209 100 54];

app.Number_4.Text = '4';

% Create Number_2

app.Number_2 = uibutton(app.UIFigure, 'push');

app.Number_2.ButtonPushedFcn = createCallbackFcn(app, @Number_2ButtonPushed, true);

app.Number_2.Position = [203 132 100 54];

app.Number_2.Text = '2';

% Create Number_5

app.Number_5 = uibutton(app.UIFigure, 'push');

app.Number_5.ButtonPushedFcn = createCallbackFcn(app, @Number_5ButtonPushed, true);

app.Number_5.Position = [203 209 100 54];

app.Number_5.Text = '5';

% Create Number_8

app.Number_8 = uibutton(app.UIFigure, 'push');

app.Number_8.ButtonPushedFcn = createCallbackFcn(app, @Number_8ButtonPushed, true);

app.Number_8.Position = [203 285 100 54];

app.Number_8.Text = '8';

% Create Number_7

app.Number_7 = uibutton(app.UIFigure, 'push');

app.Number_7.ButtonPushedFcn = createCallbackFcn(app, @Number_7ButtonPushed, true);

app.Number_7.Position = [75 285 100 54];

app.Number_7.Text = '7';

% Create Point

app.Point = uibutton(app.UIFigure, 'push');

app.Point.ButtonPushedFcn = createCallbackFcn(app, @PointButtonPushed, true);

app.Point.Position = [202 59 100 54];

app.Point.Text = '.';

% Create Number_9

app.Number_9 = uibutton(app.UIFigure, 'push');

app.Number_9.ButtonPushedFcn = createCallbackFcn(app, @Number_9ButtonPushed, true);

app.Number_9.Position = [329 285 100 54];

app.Number_9.Text = '9';

% Create Number_6

app.Number_6 = uibutton(app.UIFigure, 'push');

app.Number_6.ButtonPushedFcn = createCallbackFcn(app, @Number_6ButtonPushed, true);

app.Number_6.Position = [329 209 100 54];

app.Number_6.Text = '6';

% Create Number_3

app.Number_3 = uibutton(app.UIFigure, 'push');

app.Number_3.ButtonPushedFcn = createCallbackFcn(app, @Number_3ButtonPushed, true);

app.Number_3.Position = [330 132 100 54];

app.Number_3.Text = '3';

% Create Equal

app.Equal = uibutton(app.UIFigure, 'push');

app.Equal.ButtonPushedFcn = createCallbackFcn(app, @EqualButtonPushed, true);

app.Equal.Position = [330 59 100 54];

app.Equal.Text = '=';

% Create Add

app.Add = uibutton(app.UIFigure, 'push');

app.Add.ButtonPushedFcn = createCallbackFcn(app, @AddButtonPushed, true);

app.Add.Position = [464 285 100 54];

app.Add.Text = '+';

% Create Subtract

app.Subtract = uibutton(app.UIFigure, 'push');

app.Subtract.ButtonPushedFcn = createCallbackFcn(app, @SubtractButtonPushed, true);

app.Subtract.Position = [464 209 100 54];

app.Subtract.Text = '-';

% Create Multiply

app.Multiply = uibutton(app.UIFigure, 'push');

app.Multiply.ButtonPushedFcn = createCallbackFcn(app, @MultiplyButtonPushed, true);

app.Multiply.Position = [465 132 100 54];

app.Multiply.Text = 'x';

% Create Divide

app.Divide = uibutton(app.UIFigure, 'push');

app.Divide.ButtonPushedFcn = createCallbackFcn(app, @DivideButtonPushed, true);

app.Divide.Position = [465 59 100 54];

app.Divide.Text = '/';

% Create Right

app.Right = uibutton(app.UIFigure, 'push');

app.Right.ButtonPushedFcn = createCallbackFcn(app, @RightButtonPushed, true);

app.Right.Position = [464 352 100 54];

app.Right.Text = ')';

% Create Lift

app.Lift = uibutton(app.UIFigure, 'push');

app.Lift.ButtonPushedFcn = createCallbackFcn(app, @LiftButtonPushed, true);

app.Lift.Position = [329 352 100 54];

app.Lift.Text = '(';

% Create Delete

app.Delete = uibutton(app.UIFigure, 'push');

app.Delete.ButtonPushedFcn = createCallbackFcn(app, @DeleteButtonPushed, true);

app.Delete.Position = [203 352 100 54];

app.Delete.Text = 'Del';

% Create Clear

app.Clear = uibutton(app.UIFigure, 'push');

app.Clear.ButtonPushedFcn = createCallbackFcn(app, @ClearButtonPushed, true);

app.Clear.Position = [75 352 100 54];

app.Clear.Text = 'C';

% Create Display

app.Display = uieditfield(app.UIFigure, 'text');

app.Display.Position = [76 428 488 112];

% Create genhao

app.genhao = uibutton(app.UIFigure, 'push');

app.genhao.ButtonPushedFcn = createCallbackFcn(app, @genhaoButtonPushed2, true);

app.genhao.Position = [586 285 95 121];

app.genhao.Text = '√';

% Show the figure after all components are created

app.UIFigure.Visible = 'on';

end

end

% App creation and deletion

methods (Access = public)

% Construct app

function app = app1

% Create UIFigure and components

createComponents(app)

% Register the app with App Designer

registerApp(app, app.UIFigure)

if nargout == 0

clear app

end

end

% Code that executes before app deletion

function delete(app)

% Delete UIFigure when app is deleted

delete(app.UIFigure)

end

end

end

 

  五.功能展示

  5.1加

IMG_257IMG_258

  5.2减

IMG_259IMG_260

       5.3乘

IMG_261IMG_262

     5.4除

IMG_263IMG_264

     5.5开方

IMG_265IMG_266