基于MATLAB 的计算器设计
2021-03-23赵海君赵青云
赵海君 赵青云
(山西师范大学 物理与信息工程学院,山西 临汾041004)
大数据时代,时时刻刻都在和数据打交道。为了解决人们在学习、生活以及工作中遇到的一些常见的数据计算问题,利用MATLAB 设计出一款实用的、简单的计算器。该计算器的操作过程很简单,只需使用者按下相应按钮,便能轻松解决以下问题:四则运算、对数运算、指数运算、开平方运算等。
1 MATLAB GUI 简介
MATLAB GUI 是指采用图形方式显示的计算机操作用户界面,是MATLAB 用户可视化交互式的工具,运用GUI 生成的操作界面,避免了用户浏览繁冗的代码进行操作。实现了基于MATLAB GUI 的计算器功能的设计。
2 计算器的设计过程及功能验证
2.1 计算器设计流程
设计计算器,首先用MATLAB GUI 设计一个计算器界面,这个界面要包括加减乘除、三角函数、对数等按钮,然后编辑程序实现相应的功能,最后进行功能验证。流程如图1 所示。
图1 计算器设计流程图
2.2 计算器界面设计
在MATLAB 中新建一个GUI 界面,在GUI 界面上绘制一个面板,面板上绘制一个静态文本框用来显示输入和输出,再绘制30 个按钮,每个按钮代表一种功能,双击按钮调出按钮的属性检查器,将按钮代表的功能标注在按钮上,最后调整按钮的大小和颜色、面板的颜色以及整体的布局使计算器看起来更美观,界面如图2 所示:
图2 计算器界面
图3 输入数据
2.3 计算器功能实现及验证
实现计算功能,首先要实现每个按钮的功能,通过查看界面上每个按钮的回调函数,编辑程序实现每个按钮的功能,并进行运行和调试。此计算器可以实现四则运算、平方开方、三角函数、以10 为底的对数、e 指数以及清除退位功能。以sin(π/2)=1 为例,首先点击“sin”按钮,在输入框中会看到“sin(”,再输入π/2,注意在此处还需在输入右半个括号,与左半个括号构成一个完整的括号功能,最终输入的式子如图3 所示,最后按等于键得到计算结果,如图4 所示。
图4 计算结果
对于计算结果是除不尽的数时,计算器自动保留6 位有效数字,例如,圆周率π 是无限不循环小数,在日常生活中我们用3.14 代表圆周率去近似计算,在此计算器中圆周率取值为3.14159(如图5 所示)足以应对平常的计算。
图5 π 的取值
又如,e2的计算结果中有除不尽的小数,若用科学计算器计算得到的结果小数点后有数十位,如图6 所示;若用此计算器计算,首先点击“e”按钮,然后再点击“2”按钮和“)”按钮便可在输入框中看到“exp(2)”,最后按“=”按钮得到结果,结果如图7 所示。
对于一般的计算我们并不需要那么精确,通常情况下,只保留小数点后两到三位,所以计算器保留六位有效数字足以。通过上面的验证,我们发现此计算器使用方便、计算结果准确且简洁,能够满足人们的基本需要,是一款实用的计算产品。
图6 e2 的计算结果
图7 e2 的取值
3 结论
计算器在我们的生活中发挥着重要的作用,利用MATLAB中的GUI 设计一个实用的计算器,简化了复杂的计算过程。