计算器制作步骤
怎样用scratch制作计算器

怎样用scratch制作计算器Scratch是一款使用者可以不熟悉英文单词,也可以不会使用键盘的〔少儿〔编程〕〕工具。
构成程序的命令和参数通过积木形状的模块来实现。
今天我主要给大家分享怎样用scratch制作计算器,希望对你们有帮助!怎样用scratch制作计算器首先,我们制作一个计算器的面板,ppt是最合适的工具。
第二步,我们必须要定位每一个按键。
冉爸在课堂上引入了"二维数组'的概念,通过行,列定位每一个按键。
其实数组的例子在生活中随处可见,比如体育课上同学们排成三行四列。
初等数学的知识都是从生活中抽象而来的,冉爸尽量把数学概念融入到孩子的世界里。
第三步,通过观察,我们可以把功能相同的按键归为一组。
比如说数字键0~9为一组,当按下数字键时,调用相应函数;运算符+-*/为一组,当按下运算符时,调用相应函数;......第四步,通过这样"总'-"分'的结构,我们就把问题分解了,接下来针对第三步中的分组,分别编写函数。
我们要计算的是"数',可是计算机接受到的,其实是0~9单一的数字,和小数点。
因此,我们先用一个列表来依次存放输入的数字。
举例子,当输入小数点时,计算机完成这样的任务:(由于显示屏宽度的原因,我们限制数字的位数不超过14)第五步,我们必须要把列表里临时存放的各位数转换成被计算的数字,前后输入的数字依次赋值给操作数1和操作数2,然后依据运算符进行运算。
整个分析思路其实是线性的,并不难。
完成这个作业的关键,在于如何进行连续运算,真实的计算器是可以连续运算的。
编程序计算2+3不难,但是计算((2+3) * 4 / 5 + 6) * 7......这就必须要用到一些处理技巧。
关于我们的孩子来说,目前还不必须要思索的这么深入,先梳理分解问题和组织代码的思路,等以后再回头看冉爸处理连续运算的技巧。
低年级的小朋友也不用怕,我们在整个过程中,不仅是学习编程,还有各种工具的使用,比如搜索引擎,ppt,画图;还有作品的制定,这里就包括了色彩的搭配、界面的制定、功能的制定。
c语言制作简单的计算器

c语言制作简单的计算器在计算机编程领域中,C语言是一种广泛使用的编程语言之一。
它具有简单易学的特点,并且能够进行复杂的计算和逻辑处理。
今天,我们就来学习一下如何使用C语言来制作一个简单的计算器。
首先,我们需要明确我们计算器的功能和界面设计。
本次制作的计算器将具有基本的四则运算功能,即加法、减法、乘法和除法。
我们将在控制台中实现计算器的操作,并通过简单的用户界面进行交互。
接下来,我们需要创建一个C语言程序的框架。
首先,我们需要包含头文件,以便在程序中使用各种函数和变量。
我们可以使用"#include" 来引入头文件,例如:```c#include <stdio.h>```然后,我们需要定义主函数 `main()`。
在这个函数中,我们将编写计算器的逻辑代码。
让我们开始编写函数吧!首先,我们需要声明一些变量来存储用户输入的数字和运算符。
我们可以使用 `int` 来定义整数变量,并用 `char` 定义字符变量。
例如:```cint num1, num2, result;char operator;```接下来,我们需要提示用户输入要进行的运算,并读取用户输入的数字和运算符。
我们可以使用 `printf` 和 `scanf` 函数来完成这个任务,例如:```cprintf("请输入第一个数字: ");scanf("%d", &num1);printf("请输入运算符(+, -, *, /): ");scanf(" %c", &operator);printf("请输入第二个数字: ");scanf("%d", &num2);```注意,我们在读取运算符之前添加了空格,这是为了消除输入缓冲区中可能残留的换行符等字符。
接下来,我们需要编写代码来进行实际的计算操作。
简易计算器的制作

简易计算器的制作在本文中,我们将介绍如何使用Visual FoxPro(VFP)制作一个简易计算器。
Visual FoxPro是一种开发工具,可以用于创建数据库应用程序和开发Windows桌面应用程序。
步骤1: 创建新的Visual FoxPro项目首先,打开Visual FoxPro并创建一个新的项目。
在“文件”菜单中选择“新建”,然后选择“项目”。
输入一个项目名称,选择一个合适的位置,然后点击“确定”。
步骤2:创建一个新的表单接下来,我们需要创建一个新的表单来作为计算器的界面。
在项目资源管理器中,右键点击“表单”文件夹,并选择“新建”。
输入一个表单名称,然后点击“确定”。
步骤3:添加控件步骤5:添加按钮事件首先,我们需要声明变量来存储用户输入的数字。
在按钮事件代码中,添加以下代码:```foxproLOCAL num1, num2, result```接下来,我们需要获取用户输入的数字。
在按钮事件代码中,添加以下代码:```foxpronum1 = VAL(Thisform.txtNum1.Value)num2 = VAL(Thisform.txtNum2.Value)```然后,我们可以执行所需的计算操作。
例如,如果我们想要添加两个数字,我们可以使用以下代码:```foxproresult = num1 + num2```最后,我们需要将结果显示在界面上。
在按钮事件代码中,添加以下代码:```foxproThisform.lblResult.Caption = STR(result)```步骤6:运行和测试完成上述步骤后,您可以保存并运行计算器。
在VFP的工具栏中,点击“运行”按钮来启动应用程序。
测试计算器,确保它可以正确执行计算操作并显示结果。
结论通过使用Visual FoxPro,我们可以轻松创建一个简易计算器。
这个计算器可以执行基本的加减乘除等操作,同时提供了一个直观的用户界面。
您可以根据需要进行自定义,添加更多功能和复杂的计算操作。
FLASH计算器制作方法

“FLASH”计算器FLASH计算器的制作可按以下步骤来完成:第一、“按钮”图层的设置。
(1)打开FLASH程序,将图层1重新命名为“按钮”。
(2)执行“插入”→“新建元件”命令,弹出“创建新建元件”对话框。
在此对话框的“名称”框中输入“按钮”,在“行为”选项中选择“按钮”,单击“确定”按钮,进入按钮编辑场景。
(3)执行“窗口”→“公用库”→“按钮”命令,打开“库—按钮”对话框,如图所示。
(4)双击“Key Buttons”文件夹,将其打开;将“Key—labelled button”按钮拖到舞台上。
双击“Key—labelled button”按钮,进入它的编辑场景;选中“arrows”图层将其删除,这时按钮上的文本”A”被删除。
返回到主场景.(5)执行“窗口”→“库”命令,打开库面板;从库面板向舞台拖十九个“Key—labelled button”按钮,并按一定的顺序排好。
第二、“动态文本”图层的设置(1)新增一个图层,并且重新命名为“动态文本”。
(2)选中工具栏中的文本工具,在舞台上方中央位置拖出一个文本域.(3)打开属性面板,设置这个文本域的属性为“动态文本”,实例名称为“结果”,变量名为“Z”,显示线条设置为“多行”,其它采用默认值.第三、“提示文字”图层的设置。
(1)新插入一个图层,重新命名为“提示文字”;(2)选中工具栏中的文本工具,并设置其属性:静态文本,字体颜色:红色,字号:30号,其它采用默认值。
舞台上的每个按钮上分别添加如下静态文本:1、2、3、4、5、6、7、8、9、0、+、-、×、÷、=、.、开始、清零、负;在舞台的右边中央位置添加静态文本“FLASH 计算器”,在动态文本域的左边添加静态文本:显示信息。
添加文本提示后的界面如图所示。
第三、给按钮添加动作脚本。
(1)锁定除按钮图层以外的图层;(2)选中“清零”按钮,单击舞台左下方“动作—按钮”,打开动作面板;在动作面板中给该按钮添加以下动作脚本:on (press) {//按下鼠标左键a = 0;//给变量a赋初值0x =””;//给变量x赋初值空字符串””y =””;//给变量y赋初值空字符串””z = 0;//给变量Z赋初值0m = 0;//给变量m赋初值0}(3)选中”开始”按钮, 单击舞台左下方“动作—按钮”,打开动作面板,在动作面板中添加以下动作脚本:on (press) {//按下鼠标左键m = 0; //给变量m赋初值0x = “”; //给变量x赋初值空字符串“”y = “”; //给变量y赋初值空字符串“”a = 0; //给变量a赋初值0}(4)选中”=”按钮, 单击舞台左下方“动作—按钮”打开开动作面板,在该面板中添加如下动作脚本:on (press) {//按下鼠标左键if (a == 0) {//判断的值是否为0z = Number(x);//若a的值是0,则将变量x由字符串转换为数值赋给变量z} else {//若a的值不是0,则执行下面的动作if (n == 1) {//判断n的值是否为1z = Number(x)+Number(y);// n的值为1,则将变量x 、y由字符串转化为数值相加,将所加结果赋给变量z}if (n == 2) {//判断n的值是否为2z = Number(x)-Number(y);// n的值为2,则将变量x 、y由字符串转化为数值相减,将所减结果赋给变量z}if (n == 3) { //判断n的值是否为3z = Number(x)*Number(y); // n的值为3,则将变量x 、y由字符串转化为数值相乘,将所乘结果赋给变量z}if (n == 4) {//判断n的值是否为4z = Number(x)/Number(y); // n的值为4,则将变量x 、y由字符串转化为数值相除,将相除结果赋给变量z}(n的值作为判断运算类型的条件:n=1进行加法运算;n=2进行减法运算;n=3进行乘法;n=4进行除法运算)a = 0; //给变量a赋初值0m = 1; //给变量m赋值1x = String(z);//将动态文本变量z转换为字符串,赋给变量xy = “”; //给变量y赋初值空字符串“”}}(5)选中按钮”1”然后打开动作面板,在该面板中添加如下动作脚本:on (press) {//在“1”按钮上按下鼠标左键if (m == 0) {//判断m的值是否为0,若m的值为0,则执行下面的动作x = x+String(1);//将数值1转化为字符串,与变量x相加,并将相加结果赋给变量x} else {//若的值不为0,则执行下面的动作y = y+String(1); //将数值1转化为字符串,与变量y相加,并将相加结果赋给变量y}}(6)分别选中“2”、“3”、“4”、“5”、“6”、“7”、“8”、“9”、“0”、“.”、“负”按钮,打开它们的动作面板,然后将按钮“1”的动作脚本复制到各自的动作面板中。
四年级数学学具制作

四年级数学学具制作一、引言数学学具对于学生学习数学非常重要,它能够帮助学生更好地理解数学概念和运算方法。
在四年级数学教学中,学生已经接触到了较为复杂的数学内容,因此制作一些适合四年级学生的数学学具是非常有必要的。
二、计算器计算器是四年级数学学具中必不可少的一种。
我们可以制作简易计算器,使用纸板和按钮电池等材料制作。
首先,将纸板剪成适当的大小,并画上计算器的按钮。
然后,将按钮电池粘贴在纸板上,并连接好电路。
最后,使用胶水将纸板和按钮电池固定在一起,一个简易计算器就制作完成了。
通过使用计算器,学生可以更方便地进行加减乘除等数学运算。
三、数学符号卡片数学符号卡片可以帮助学生记忆和理解各种数学符号的含义。
我们可以使用彩色卡纸制作数学符号卡片。
首先,将彩色卡纸剪成适当的大小,然后使用彩笔在卡片上写上不同的数学符号,如加号、减号、乘号、除号等。
最后,将卡片装订在一起,制作成数学符号卡片的小册子。
通过使用数学符号卡片,学生可以更好地记忆和理解各种数学符号的含义。
四、分数模型在四年级数学教学中,学生需要学习分数的概念和运算方法。
我们可以制作一些分数模型,帮助学生理解分数的概念。
可以使用颜色纸板制作分数模型。
首先,将纸板剪成适当的大小,并使用彩笔将纸板分割成若干等份。
然后,将不同颜色的纸板叠在一起,代表不同数值的分数。
最后,使用胶水将纸板固定在一起,制作成分数模型。
通过使用分数模型,学生可以直观地理解分数的概念和运算方法。
五、量角器量角器是四年级数学学具中的重要工具之一,它可以帮助学生测量和绘制角度。
我们可以使用塑料板和铁钉等材料制作量角器。
首先,将塑料板剪成适当的大小,并在塑料板上标注上角度刻度。
然后,使用铁钉将塑料板固定在一起,形成一个可转动的量角器。
最后,使用胶水将铁钉固定在塑料板上,制作成量角器。
通过使用量角器,学生可以更准确地测量和绘制角度。
六、立体几何模型在四年级数学教学中,学生需要学习立体几何的概念和特征。
《制作简易计算器》课件

本PPT课件将教你如何制作简易计算器。通过简单直观的讲解和演示,你将 学会使用PPT创建一个实用的计算器应用程序。
一、引言
目的和意义
介绍制作计算器PPT的目的和意义,以及为什么学习制作计算器是有益的。
使用场景
简述计算器的使用场景,包括商务、教育、日常生活等各个方面的应用。
二、制作工具
PPT制作工具
介绍使用的PPT制作工具,包括Microsoft PowerPoint和Google Slides等。
使用PPT创作计算器
详细讲解如何使用PPT来创建一个计算器应 用程序的演示,包括界面设计和功能实现。
三、计算器的部件
计算器需要的元素
简述计算器应用程序所需的基本元素,例如 屏幕、按钮、数字键盘等。
1
实现计算器功能
2
通过演示,展示如何在代码中实现计 算器的基本功能,如加法、减法、乘
法、除法等。
计算器代码编写过程
使用步骤演示如何编写计算器应用程 序的代码,从创建项目到实现基本功 能。
六、编写计算器UI
设计计算器界面
指导如何设计计算器应用程序的用户界面,包括 布局、颜色、字体和图标等。
计算器的样式
演示如何选择合适的样式,使计算器的界面更加 美观和易于使用。
七、添加计算器所需功能
1
添加更多功能
介绍如何为计算器应用程序添加更多
演示更高级功能
2
高级功能,如求平方、开平方、百分 比等。
通过演示,向观众展示如何添加和使
用计算器应用程序的更高级功能。
八、总结
总结制作计算器PPT的过程
简要总结制作计算器PPT的整个过程和所涵盖的内容。
3DMAX计算器制作

1.创建一个基础多边形,通过移动(W)、缩放(R)工具,将计算器底部大型制作出来2.通过选择边工具,选择所有的边,对它们进行倒角边处理。
(选择所有边后,长按Shift键,再长按鼠标右键进行选择)3.在模型的侧面,通过多切割工具,按住Ctrl+Shift后,在侧面的正中间添加一条线,再对这条线进行倒角边处理,分段调为2,并将相邻边的间隙分数调的相对较小。
4.双击选择侧边最中间的一整条环线,通过缩放(R)工具,将中间的线向内整体缩放一点,制作出沟线的效果。
5.接下来是制作按键部分的模型。
首先先创建一个基础立方体。
删除底面的边,然后再双击选择底部所有的面,通过缩放(R)工具,整体向外扩大底部的线,是模型侧面呈梯形状。
6.选择按键模型除了底部四条边以外的所有边,对它们进行倒角边处理,然后通过多切割工具,给按键横竖添加两条环线(多切割工具加边时按住Ctrl+Shift)7.选择顶部横向或竖向的点,向下移动一小段,制作出按键顶部凹陷的效果8.按空格键,打开所有视角的视窗,通过移动(W)缩放(R),和复制(Ctrl+D)来将我们需要的按键都排列出来9.制作计算器凹槽部分。
1)通过多切割工具,将大致位置卡好2)选中需要凹陷的面,按Ctrl+E 挤出工具,然后通过缩放工具将挤出的面延上下方向打平。
3)继续使用缩放工具,将挤出的面延如图左右方向收缩一点4)删除两边边缘因挤出产生的这条线5)双击选择以下两条环线通过缩放工具延如图左右方向向内收缩,再通过多切割工具为最外面的两条边分别卡一条线10.制作液晶屏幕部分1)切换至顶视图,通过在空白处长按Shift键+鼠标右键,选择创建多边形工具2)通过鼠标左键的点击,创建多边形,然后再通过移动顶点来对多边形进行造型。
3)因为模型的面只能是三个或四个顶点,我们所创建出来的多边形明显大于这个数,所以我们需要通过多切割工具,将这些点连到其他线段上,是所有面都为四边面。
4)Ctrl+D复制我们创建的多边形,并将它X轴的缩放数字手动改成-15)选择两个模型,对它们进行结合处理(长按Shift+鼠标右键,选择结合,或者再上方菜单栏中选择网格-结合)6)拖拽选择中间所有的点,因为这时候虽然两个模型结合成了一个模型,但是它们中间会有一些重合在一起的两个点,所以我们需要通过合并长按Shift+鼠标右键选择合并顶点-合并顶点如果发现所有点都合并到了一起这需要选择合并顶点工具后的小正方形将阙值手动调小,比如0.001这时候再点击合并,就可以合并一些重合在一起的两个点。
计算器制作方法

计算器制作方法制作计算器的方法有很多种,下面我将介绍一种简单的方法。
1.设计计算器的界面:首先,你需要决定计算器的外观和布局。
可以在纸上或者电脑上绘制你理想中的计算器样式,包括数字键、操作键、显示屏等。
考虑布局的合理性,使得用户可以方便地按键和查看结果。
2.编写HTML和CSS代码:使用HTML和CSS语言创建计算器的界面。
HTML用来构建网页结构,CSS用来对界面进行样式设计,如字体、颜色、大小等。
根据设计好的样式,编写HTML和CSS代码,将计算器的界面布局和样式实现出来。
3.添加JavaScript代码:编写JavaScript代码实现计算器的功能。
JavaScript是一种脚本语言,可以在网页中添加交互和动态效果。
根据计算器的功能需求,编写JavaScript代码实现数字输入、运算操作、结果显示等功能。
你可以使用JavaScript的计算功能和条件判断语句来实现计算器的基本功能。
4.进行测试和调试:完成代码编写后,进行测试和调试。
确保计算器能够正确地接收用户输入、执行运算操作,并且能够正确地显示结果。
测试过程中需要注意输入的边界情况和错误处理,确保计算器的稳定性和可靠性。
5.部署和发布:当计算器的功能完备且稳定后,可以将它部署到服务器或者上传到网页空间,供用户访问和使用。
你可以使用云服务提供商提供的服务器或者自己搭建服务器,将计算器的页面文件和相关资源上传到服务器上。
然后,用户可以通过浏览器访问你的计算器网页并使用它进行计算。
以上就是制作计算器的简单方法。
当然,如果你希望计算器功能更加复杂和完备,可以继续学习和探索相关技术,例如使用JavaScript的高级功能、添加动画效果等。
希望对你有所帮助!。
EXCEL做的超级房贷计算器

EXCEL做的超级房贷计算器超级房贷计算器是一种用Excel来制作的工具,可以帮助人们在购房过程中进行房贷计算。
此计算器可以根据用户输入的房屋价格、首付比例、贷款利率和贷款期限等信息,快速准确地计算出每个月的还款金额、还款总额和利息支出等关键信息。
下面将详细介绍如何制作一个超级房贷计算器。
首先,我们需要在Excel工作表中设置一些输入单元格,以便用户可以输入所需的信息。
可以在一个单元格中让用户输入房屋价格,例如A1单元格。
然后,在另一个单元格中设置一个下拉列表,其中列出了不同的首付比例选项。
用户可以从列表中选择一个首付比例,并在该单元格中显示所选选项。
接下来,我们需要在另外一些单元格中设置贷款利率和贷款期限的输入单元格。
用户可以分别输入所需的贷款利率和贷款期限,例如B1和C1单元格。
然后,在许多其他单元格中设置公式来计算所需的信息。
首先,我们需要计算出首付金额。
我们可以使用一个公式,将房屋价格乘以所选的首付比例,例如D1单元格的公式为`=A1*B1`。
然后,我们可以计算出贷款金额,使用一个公式减去首付金额,例如E1单元格的公式为`=A1-D1`。
接下来,我们可以使用贷款利率、贷款期限和贷款金额来计算每个月的还款金额。
我们可以使用Excel的内置函数PMT来计算这个值。
例如,我们可以在F1单元格中使用`=PMT(B1/12,C1*12,-E1)`公式来计算每个月的还款金额。
PMT函数中的第一个参数是贷款利率除以12(每年的12个月),第二个参数是贷款期限乘以12(贷款的总月数),第三个参数是贷款金额的负值(因为付款是支出)。
然后,我们可以计算出总还款金额和利息支出。
我们可以在G1单元格中使用`=F1*C1*12`公式来计算总还款金额(每月还款金额乘以总月数),在H1单元格中使用`=G1-E1`公式来计算利息支出(总还款金额减去贷款金额)。
最后,我们可以在工作表中添加条件格式,使关键数据以可视化的方式突出显示。
计算器是如何制造的?

计算器是如何制造的?计算器是生活中不可或缺的一块科技令牌,它曾经受到众多学子、科研人员和工程师的崇拜。
那么,计算器到底是如何制造出来的?今天就来深入了解下计算器的制造历程:一、原材料准备计算器制造过程历程中,原材料准备阶段是极为重要的,首先要考察和选定外壳材质,然后准备好碳按键,手指触发开关,显示屏和电池,传感器,芯片和电子元件等。
然后,将所有的原材料和器件根据相关规格和要求组装起来。
二、检测准备制造过程的检测准备阶段非常重要,首先必须进行内部元件的检测,确保内部电路和连接点的质量;其次要进行外壳拼接检测,确保外壳结构安全、正确;此外还要进行电流检测,确保设备可正常运行;最后要进行外观检测,确保无外观质量上的问题。
三、性能测试性能测试的前提是检测工序的有效完成,它可以确保计算器的质量和可靠性。
测试方式通常是制定一系列运算及特定测试,以确定计算器功能是否正确、计算精确、接口是否可稳定运行。
四、质量审查质量审查过程中,会对计算器整体外观、手柄、数字键及显示等审查,确保所有外观配置符合定制要求;另外,还要对屏幕、音量、色彩、字体、亮度及其它参数进行测试,以确保质量绝对的的稳定性。
五、包装定制包装定制是计算器制造的最后一个阶段,一般情况下,要根据客户需求定制贴纸,然后按规定的方式安排、包装计算器;最后,将已完成的计算器发运到指定地点,完成产品制造和发货工作。
从上述流程可以看出,计算器制造历程包括了原材料准备、检测准备、性能测试、质量审查以及包装定制等。
只有把所有步骤都考虑入内,才能保证计算器在最终发售时完美无瑕,从而为广大用户带来极致的使用体验。
二进制简易计算器制作方法

二进制简易计算器制作方法在计算机科学中,二进制是一种基础的数字表示方法,它由0和1组成。
二进制计算器是一种能够执行二进制加法、减法、乘法和除法等基本运算的工具。
本文将介绍如何制作一个简易的二进制计算器。
步骤一,确定功能需求。
首先,我们需要确定我们的二进制计算器要实现的功能。
通常,一个简易的二进制计算器应该能够进行二进制数字的加法和减法运算。
因此,我们的计算器将包括加法器和减法器两个基本功能。
步骤二,设计电路。
接下来,我们需要设计计算器的电路。
对于加法器,我们可以使用全加器电路来实现二进制数字的加法运算。
对于减法器,我们可以使用补码运算来实现二进制数字的减法运算。
可以使用数字集成电路或者程序设计语言来实现这些电路。
步骤三,实现电路。
一旦电路设计完成,就可以开始实现电路了。
如果选择使用数字集成电路,可以使用数字逻辑门、触发器和其他数字电路组件来搭建加法器和减法器。
如果选择使用程序设计语言,可以编写相应的程序来模拟加法和减法运算。
步骤四,测试和调试。
完成电路实现后,需要进行测试和调试。
通过输入不同的二进制数字,验证计算器的加法和减法功能是否正常。
如果发现问题,需要对电路进行调试,直到计算器能够正确执行加法和减法运算。
步骤五,优化和扩展。
一旦基本的加法和减法功能正常,可以考虑对计算器进行优化和扩展。
例如,可以添加乘法和除法功能,或者设计一个更复杂的二进制计算器,实现更多功能。
总结。
通过以上步骤,我们可以制作一个简易的二进制计算器。
这个计算器可以帮助我们理解二进制数字的运算规则,同时也可以作为一个有趣的电子项目来实现。
希望本文能够帮助你了解如何制作一个简易的二进制计算器。
C语言制作简单计算器

C语言制作简单计算器一、项目介绍我们要用c语言做一个简单的计算器,进行加、减、乘、除操作。
本程序涉及的所有数学知识都很简单,但输入过程会增加复杂性。
我们需要检查输入,确保用户没有要求计算机完成不可能的任务。
还必须允许用户一次输入一个计算式,例如:32.4+32 或者9*3.2项目效果图编写这个程序的步骤如下:∙获得用户要求计算机执行计算所需的输入。
∙检查输入,确保输入可以理解。
∙执行计算。
∙显示结果。
三、解决方案1.步骤1获得用户输入是很简单的,可以使用printf()和scanf()。
下面是读取用户输入的程序代码:#include<stdio.h>int main(){double number1=0.0; //定义第一个操作值double number2=0.0; //定义第二个操作值char operation=0; //operation必须是'+''-''*''/'或'%'printf("\nEnter the calculation\n");scanf("%lf%c%lf",&number1,&operation,&number2);return0;}2.步骤2接着,检查输入是否正确。
最明显的检查是要执行的操作是否有效。
有效的操作有+、-、*、/和%,所以需要检查输入的操作是否是其中的一个。
还需要检查第二个数字,如果操作是/或者%,第二个数字就不能是0。
如果右操作数是0,这些操作就是无效的。
这些操作都可以用if语句来完成,switch语句则为此提供了一种更好的方式,因此它比一系列if语句更容易理解。
switch(operation){case'+':printf("=%lf\n",number1+number2);break;case'-':printf("=%lf\n",number1-number2);break;case'*':printf("=%lf\n",number1*number2);break;case'/':if(number2==0)printf("\n\n\aDavision by zero error!\n");elseprintf("=%lf\n",number1/number2);break;if((long)number2==0)printf("\n\n\aDavision by zero error!\n");elseprintf("=%ld\n",(long)number1%(long)number2);break;default:printf("\n\n\aDavision by zero error!\n");break;取余运算符对float或double类型是没有意义的,因为他们可以表示精确的结果。
用CVI制作计算器步骤

---------------------------------------------------------------最新资料推荐------------------------------------------------------用CVI制作计算器步骤1,新建一个面板,设置面板名,并在面板上添加一个 String显示框,若干数字控件、运算符,最后添一个等号,以下是我制作的简易面板 2,数字控件设置如下:其回调函数如下:int CVICALLBACK cmd_4 (int panel, int control, int event, void *callbackData, int eventData1, int eventData2) { char labeltext[2]; switch (event) { case EVENT_COMMIT: GetCtrlAttribute (panelHandle, PANEL_CMD_4, ATTR_LABEL_TEXT, labeltext); SmartRead_Speak(4, 11, 0, -1, -1, 1, ); strcat (str1, labeltext); setvalue (); break; } return 0; } 3,运算符设置如下其回调函数如下:int CVICALLBACK cmd_plus (int panel, int control, int event, void *callbackData, int eventData1, int eventData2) { switch (event) { case EVENT_COMMIT: SmartRead_Speak(加上, 11, 0, -1, -1, 1, ); GetCtrlVal (panelHandle, PANEL_STRING,str1); Fmt (strvalue1, %f%s, str1); str1[0]=‘\0’; SetCtrlVal (panelHandle, PANEL_STRING, ); flag=1; break; } return 0; } 4,等号设置如下:其回调函数如下:int CVICALLBACK cmd_equal (int panel, int control, int1/ 3event, void *callbackData, int eventData1, int eventData2){ switch (event) { case EVENT_COMMIT: SmartRead_Speak(等于, 11, 0, -1, -1, 1, ); Delay (1); GetCtrlVal (panelHandle, PANEL_STRING, str1); Fmt(strvalue2, %f%s, str1); str1[0]=‘\0’; SetCtrlVal (panelHandle, PANEL_STRING, ); switch (flag){ case 1: strvalue3=strvalue1+strvalue2; Fmt(str2, %s%f, strvalue3); SetCtrlVal (panelHandle,PANEL_STRING, str2); SmartRead_Speak(str2, 11, 0, -1, -1,1, ); str2[0]=‘\0’; brea k; case 2: strvalue3=strvalue1-strvalue2; Fmt (str2, %s%f,strvalue3); SetCtrlVal (panelHandle, PANEL_STRING,str2); SmartRead_Speak(str2, 11, 0, -1, -1, 1, );str2[0]=‘\0’; break; case 3: strvalue3=strvalue1*strvalue2; Fmt (str2, %s%f,strvalue3); SetCtrlVal (panelHandle, PANEL_STRING,str2); SmartRead_Speak(str2, 11, 0, -1, -1, 1, );str2[0]=‘\0’; break; case 4: strvalue3=strvalue1/strvalue2; Fmt (str2, %s%f,strvalue3); SetCtrlVal (panelHandle, PANEL_STRING,str2); SmartRead_Speak(str2, 11, 0, -1, -1, 1, );str2[0]=‘\0’; break; default:---------------------------------------------------------------最新资料推荐------------------------------------------------------break; } break; } return 0; } 5,附件 1 中包含以下3 个文件,附件 1 D:\CVI光盘\3\计算器\smartread. 拷到项目的根目录下,再将前面两个文件(smartread4.lib, smartread4.h) 通过 Edit add File to project 方式条件到工程项目中6,在.c 文件中添加以下语句setvalue (void); 7,参考书 Labwindows/cvi 王建新隋美丽著 P49~52 页附件 2D:\CVI光盘\3\计算器\用cvi制作计包含全部代码界面效果,如下备注:以上两个附件,点中右键选复制找一个文件夹, 直接粘贴就好了,如有其他问题,可以百度 Hi 联系我!3/ 3。
制作简单的计算器

制作简单的计算器现代社会中,计算器是我们不可或缺的工具之一、它可以帮助我们进行快速而准确的数学运算,使得我们的工作和生活更加便利。
本篇文章将介绍如何制作一个简单的计算器,帮助你更好地了解计算器的原理和构造。
首先,我们需要明确计算器的基本功能。
一个简单的计算器应该具备加法、减法、乘法和除法的四则运算功能。
此外,我们还可以添加一些其他常用的功能,例如百分比计算、开方和平方等。
接下来,我们将使用Python语言来实现这个计算器。
在Python中,我们可以使用GUI库Tkinter来创建一个简单的图形界面。
首先,我们需要导入Tkinter库,并创建一个主窗口:```pythonfrom tkinter import *root = Tkroot.title("简易计算器")```接下来,我们可以创建显示结果的文本框和按钮,代码如下:```python#创建文本框input_label = Entry(root, justify="right")input_label.grid(row=0, column=0, columnspan=4, padx=10,pady=10)#创建按钮buttons ="7","8","9","/","4","5","6","*","1","2","3","-","0",".","=","+"row_num = 1col_num = 0for button in buttons:Button(root, text=button, padx=10, pady=10).grid(row=row_num, column=col_num)col_num += 1if col_num > 3:col_num = 0row_num += 1```然后,我们可以为按钮添加相应的点击事件,使得点击按钮时可以进行相应的计算操作。
简单计算器的制作

简单计算器的制作引言:计算器是一种用于进行基本数学运算的工具。
它通常具备加法、减法、乘法和除法的功能。
在本文中,我们将介绍如何制作一个简单的计算器,让用户能够输入两个数字并选择进行的运算。
该计算器将使用基本的HTML、CSS和JavaScript技术,以及一些计算逻辑来实现。
准备工作:在开始制作计算器之前,我们需要确保我们具备以下环境和资源:2. 基础的HTML、CSS和JavaScript知识。
3. 可以创建和保存HTML、CSS和JavaScript文件的文件夹。
4.一些布局和样式设计的想法。
步骤一:创建HTML文件步骤二:设计计算器布局1. 在 "calculator-container" `<div>` 内部,创建一个`<input>` 元素,并给它一个独立的id属性,例如 "input1"。
这个输入框将用于输入第一个数字。
2. 在 "calculator-container" `<div>` 内部,创建一个`<input>` 元素,并给它一个独立的id属性,例如 "input2"。
这个输入框将用于输入第二个数字。
3. 在 "calculator-container" `<div>` 内部,创建一个`<select>` 元素,并给它一个独立的id属性,例如 "operator"。
这个下拉菜单将用于选择运算符。
4. 在 "operator" `<select>` 内部,创建四个 `<option>` 元素,分别代表加法、减法、乘法和除法,这些元素的值分别为 "+"、"-"、"*"和"/"。
新基于51单片机的简易计算器

新基于51单片机的简易计算器一、引言计算器是一种广泛应用的电子设备,用于进行常见的数值运算。
在现代社会,计算器是广大人们日常生活和学习中常用的工具之一、本文将介绍一种新基于51单片机的简易计算器的设计和实现,该计算器具有计算基本四则运算的功能,并且操作简便、界面友好。
二、设计实现1.系统硬件设计该计算器的硬件主要由51单片机、LCD显示屏、按键开关、电源等组成。
(1)51单片机:使用51系列单片机作为计算器的核心处理器,它具有处理能力强、易编程等特点,可以快速实现计算功能。
(2)LCD显示屏:采用16*2字符LCD显示屏,用于显示计算结果和用户输入的数字。
(3)按键开关:设置数字键盘开关、运算符键盘开关、等号键开关等,用户通过按下对应的按键输入数字和运算符。
(4)电源:使用直流电源供电,通过稳压电路和滤波电路提供稳定的电压和电流。
2.系统软件设计该计算器的软件主要由嵌入式C语言编写,实现了计算基本四则运算的功能。
(1)初始化:在系统启动时对各个设备进行初始化设置,包括LCD显示屏的初始化、按键开关的初始化等。
(2)用户输入:通过按键开关读取用户输入的数字和运算符,将其保存在缓冲区中。
(3)计算功能:根据用户输入的数字和运算符,通过判断运算符的类型进行相应的数值计算,并将结果保存在特定的寄存器中。
(4)结果显示:将计算结果从寄存器中读取并显示在LCD显示屏上,用户可以直观地看到计算结果。
三、系统特点1.硬件结构简单:该计算器的硬件结构简单,主要由几个常见元件组成,易于制作和调试。
2.操作简便:用户只需通过按键输入数字和运算符,即可完成计算操作,无需进行复杂的设置和调试。
3.界面友好:通过LCD显示屏直观地显示计算结果,用户可以清楚地了解计算过程和结果。
4.功能强大:该计算器可以进行基本的四则运算,满足大多数日常计算需求。
四、应用范围该简易计算器可以广泛应用于日常生活和学习中,包括商品购物计算、数学运算、财务统计等场景。
《动手做》数学教案二:教你制作简易计算器

今天我们来学习如何制作一个简易的计算器。
这个计算器可以进行加、减、乘、除四种基本运算,除此之外还可以进行开方和取模运算。
它的界面简洁、易于操作,是我们日常生活中必不可少的工具。
让我们来了解一下计算器的基本原理。
计算器主要由两个部分组成:输入和输出。
在输入方面,我们需要一个键盘。
而在输出方面,我们需要一个屏幕来显示结果。
同时,我们还需要一个小小的计算机芯片来进行计算工作。
这样,我们就可以把它们连接起来,制作出一款真正的计算器了。
接着,让我们一步步地来制作这个计算器吧。
我们需要准备一块面包板、一些连线、一个电池盒和一个开关。
将电池盒安装在面包板上并与开关连接。
接下来,我们需要把计算机芯片插入面包板的相应位置,并用连线连接好各个引脚。
电路连接完毕后,我们就可以进行软件编程了。
在编程方面,我们可以使用Arduino。
Arduino是一个开源硬件平台,它能够帮助我们轻松实现各种功能。
在这里,我们需要安装Arduino IDE软件,并将我们的计算器代码写入其中。
代码如下:```#include <Keypad.h>const byte ROWS = 4; //使用4行/列输入键const byte COLS = 4;char keys[ROWS][COLS] = { //设定输入键{'1','2','3','+'},{'4','5','6','-'},{'7','8','9','*'},{'C','0','=','/'}};byte rowPins[ROWS] = {9, 8, 7, 6}; //设定输入键的行和列byte colPins[COLS] = {5, 4, 3, 2};Keypad keypad = Keypad(makeKeymap(keys), rowPins, colPins, ROWS, COLS); //生成键盘int num1 = 0;int num2 = 0;char op = ' ';void setup() {Serial.begin(9600);}void loop() {char key = keypad.getKey();if (key){Serial.println(key);if(key >= '0' && key <= '9'){ if(op == ' '){num1 *= 10;num1 += key - '0';} else if(op == '+'){num2 *= 10;num2 += key - '0';} else if(op == '-'){num2 *= 10;num2 += key - '0';} else if(op == '*'){num2 *= 10;num2 += key - '0';} else if(op == '/'){num2 *= 10;num2 += key - '0';}} else if(key == '+'){op = '+';} else if(key == '-'){op = '-';} else if(key == '*'){op = '*';} else if(key == '/'){op = '/';} else if(key == '='){if(op == '+'){Serial.println(num1 + num2);} else if(op == '-'){Serial.println(num1 - num2);} else if(op == '*'){Serial.println(num1 * num2);} else if(op == '/'){Serial.println(num1 / num2);}num1 = 0;num2 = 0;op = ' ';} else if(key == 'C'){num1 = 0;num2 = 0;op = ' ';}}}```通过这段代码,我们可以实现计算器的基本功能。
基于STC89C52单片机的计算器

基于STC89C52单片机的计算器随着科技的不断发展,单片机已经成为现代电子设备中的重要组成部分。
STC89C52单片机作为一种常见的单片机,因其高性价比和良好的性能而广泛应用于各种嵌入式系统中。
本文将介绍如何使用STC89C52单片机制作一个简单的计算器。
一、硬件设计1、电源电路:为单片机提供稳定的电源。
2、时钟电路:为单片机提供时钟信号,确保其正常运行。
3、复位电路:在单片机出现异常时,通过复位电路实现系统重启。
4、输入电路:用于接收用户输入的数字和运算符。
5、输出电路:用于显示计算结果。
二、软件设计1、初始化程序:对单片机的各个寄存器进行初始化。
2、显示程序:根据需要显示的内容,编写相应的显示程序。
3、输入程序:接收用户输入的数字和运算符,并将其存储在相应的变量中。
4、计算程序:根据用户输入的运算符,调用相应的函数进行计算,并将结果显示在输出电路中。
三、调试与测试1、硬件调试:检查电路板上的元器件是否连接正确,确保电源、输入和输出电路的正常工作。
2、软件调试:通过串口调试工具,对程序进行调试和修改,确保程序的正确性。
3、综合测试:在完成硬件和软件的调试后,进行综合测试,确保计算器的正常工作。
四、结论本文介绍了基于STC89C52单片机的计算器的硬件和软件设计。
通过使用单片机,可以实现简单的计算器功能,并且具有成本低、易于维护和升级等优点。
在制作过程中,需要注意硬件和软件的调试与测试,以确保系统的稳定性和可靠性。
stc89c52单片机技术资料标题:STC89C52单片机技术资料一、概述STC89C52单片机是一种广泛应用的微控制器,它由深圳宏晶科技有限公司生产。
这款单片机具有高性能、低功耗、高可靠性等特点,适用于各种嵌入式系统开发。
下面将详细介绍STC89C52单片机的技术特性、引脚配置、寄存器映射以及常用开发工具等。
二、STC89C52单片机特性1、工作频率:STC89C52单片机的时钟频率可达到35MHz,能够满足大多数应用场景的需求。
《计算器》的制作方法

《计算器》的制作方法【实例说明】:本例制作一个计算器动画的效果。
【操作步骤】:〖一〗、新建文档1.单击“文件”/“新建”命令,创建一个新文档;2.单击“修改”/“文档”命令;在“文档属性”对话框中设置“尺寸”为200×250,背景色为白色;单击“确定”按钮。
〖二〗、制作“背景层”1.双击“图层1”;然后将其命名为“背景层”;2.然后选择工具栏上的矩形工具随意在舞台上绘制一个矩形背景;可参照下面的背景图形:〖三〗、制作“按钮层”1.单击时间轴上的“添加新图层”按钮,再添加一个新“图层2”;然后双击“图层2”将其命名为“按钮层”2.单击“窗口”/“公用库”/“按钮”命令,双击按钮文件夹并从中选择一种按钮;然后拖放到舞台上面即可;3.双击按钮进入按钮编辑状态;选中“text”图层;单击图层下面的“删除图层”按钮,删除该文字图层;4.按“Ctrl+L”组合键打开库面板,从中将按钮拖放20个到舞台上(共拖放20次即可)可参照下面的图形;5.单击“窗口”/“对齐”命令,打开对齐面板,把这些按钮按照下面的图形样式对齐好;放置好的图形如下:〖四〗、制作“按钮文字层”1.单击时间轴上的添加新图层按钮,再添加一个新“图层3”;然后双击“图层3”将其命名为“按钮文字层”;2.选择工具栏上的文本工具;然后输入以下文本信息(文本信息包括:“M+”、“M-”、“MRC”、“C”、“7”、“8”、“9”、“4”、“5”、“6”、“1”、“2”、“3”、“0”、“。
”、“+”、“-”、“×”、“÷”);参照下图:1.单击“窗口”/“对齐”命令,打开对齐面板,把这些按钮文字按照上面的图形样式对齐好;〖五〗、创建文本框1、单击时间轴上的添加新图层按钮,再添加一个新“图层4”;然后双击“图层4”将其命名为“文本框”;2、制作矩形框选中工具栏上的矩形工具,在第1帧的“YANG计算器”下面拖出一个填充色为白色的矩形框;3、绘制上面图中的输入文本框选中工具栏上的文本工具,打开属性面板;选择“输入文本”、字体颜色选黑色;然后在“YANG 计算器”后面的矩形框上面拖出一个大小相同的输入文本框;然后选中该输入文本框,在变量名中命名为“display”;参见下图:〖六〗、创建“Action层”1.单击时间轴上的“添加新图层”按钮,再添加一个新“图层5”;然后双击“图层5”将其命名为“Action”2.选中“代码层”的第1帧,添加如下代码:stop();memory = 0;display = "0";function PressNum(num) {if (clear) {clear = false;dot = false;display = "0";}if (display == "0" and num != ".") {display = num;} else {display = display+num;}}function PressOper(oper) {if (operator == "+") {display = Number(opernum)+Number(display);}if (operator == "-") {display = Number(opernum)-Number(display);}if (operator == "*") {display = Number(opernum)*Number(display);}if (operator == "/") {display = Number(opernum)/Number(display);}clear = true;dot = false;operator = oper;opernum = display;if (oper != "=") {display = oper;}}//在按数字和小数点键时调用PressNum函数,在按"+"、“-”、“*”、“/”键时调用PressOper 函数。
划线乘法计算器

位,即 2+1=3,乘 用单片机实现电子屏的划线乘法计算器,表示
积的千位要向万位进位,即 6+1=7,所以,222× 更大的划线乘法数据,使应用更加广泛。
24
游 戏 棒 ,121 加,乘积的千位有进位,要向万 位进 位,即
由左到右竖向 6+1=7,所以 320×220=70400。
摆放游戏棒,
8.个位数和十位数是零的乘法,如 30×203。
交点数有六部
一个
分。按两位数 乘 数 个 位
乘两位数的计 没数,一个
算方法,最后乘积的个位、十位、百位、千位数分 乘 数 十 位
别是 1、4、5、2,所以 21×121=2541。
没数,都视
5.两个三位数相乘,如 222×123。
为 0,把 区
交点数有 9 域 内 的 交
部分,把区域内 点数相加,
的交 点数相 加, 所以,30×203=6090。
有进位的要进
四、改进设想
位,即乘积的十
本仪器目前只能运算数目较小和位数较少
位 要 向 千 位 进 的乘法,对较大数目有一定限制。在今后,可利
创 造天地
划线乘法计算器
文 河北省唐山市第四十九中学 徐 莉
划线乘法是通过用横向线条表示乘数、纵
向线条表示被乘数,用横向线条与纵向线条的
. All R交i点gh数t或s斜R向es交e点rv数e相d加. 之和表示乘积数位的
数学运算。
划线乘法计算器是一种基于划线乘法的计
算仪器,有利于儿童从图形的变化中学习数学
表示个位与个位的乘积,是最后乘积的个位数; 结 果 中 的 相 应 数 位 , 由 左 向 右 排 数 字
右上与左下的交点数分别是 3 和 4,表示相乘的 2,0,8,0,6,所以,202×103=20806。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
简易计算器制作步骤:1、创建基于对话框的MFC(EXE)应用程序Calculator;2、在对话框窗体上顺序创建0到9十个数字按钮,并设置其标识符分别为IDC_0到IDC_9,其它按钮按下表设置属性:3、按表2添加各运算按钮的消息处理函数4、为使0到9十个数字按钮响应相同的消息处理函数,定义宏ON_COMMAND_RANGE(1) // CalculatorDlg.h//{{AFX_MSG(CCalculatorDlg)virtual BOOL OnInitDialog();afx_msg void OnSysCommand(UINT nID, LPARAM lParam);afx_msg void OnPaint();afx_msg HCURSOR OnQueryDragIcon();afx_msg void OnAdd();afx_msg void OnMinus();afx_msg void OnMutiply();afx_msg void OnDivid();afx_msg void OnClear();afx_msg void OnSign();afx_msg void OnPoint();afx_msg void OnEqual();afx_msg void OnSqrt();afx_msg void OnRecip();afx_msg void OnOperandInput(UINT iID);//注意先向类中添加protected 型成员函数OnOperandInput,然后再屏蔽掉类中的该函数声明,在此位置添加此说明//}}AFX_MSG(2)//CalculatorDlg.cppBEGIN_MESSAGE_MAP(CCalculatorDlg, CDialog)//{{AFX_MSG_MAP(CCalculatorDlg)ON_WM_SYSCOMMAND()ON_WM_PAINT()ON_WM_QUERYDRAGICON()ON_BN_CLICKED(IDC_ADD, OnAdd)ON_BN_CLICKED(IDC_MINUS, OnMinus)ON_BN_CLICKED(IDC_MUTIPLY, OnMutiply)ON_BN_CLICKED(IDC_DIVID, OnDivid)ON_BN_CLICKED(IDC_CLEAR, OnClear)ON_BN_CLICKED(IDC_SIGN, OnSign)ON_BN_CLICKED(IDC_POINT, OnPoint)ON_BN_CLICKED(IDC_EQUAL, OnEqual)ON_BN_CLICKED(IDC_SQRT, OnSqrt)ON_BN_CLICKED(IDC_RECIP, OnRecip)ON_COMMAND_RANGE(IDC_0,IDC_9,OnOperandInput)//使用一个消息函数来处理对某个ID范围内所有控件的命令响应//}}AFX_MSG_MAPEND_MESSAGE_MAP()5、在头文件CalculatorDlg.h中添加类型、成员变量及成员函数(1)自定义类型(定义在类外)enum Operator { OpNone,OpAdd,OpSubtract,OpMultiply,OpDivide};enum CalcError { ErrNone,ErrDivideByZero};enum Func { FuncSin, FuncTan, FuncCos, FuncSqrt, FuncSqre, FuncLn, FuncLog, FuncN, FuncRec, FuncExp, FuncNone};(2)成员变量及函数(此处应定义为类CalculatorDlg的公有成员)float m_operand; //存储当前输入的操作数float m_accum; //存储当前的计算结果BOOL m_bCoff; //标识当前输入是否是小数float m_coff; //小数输入时的系数Operator m_operator; //enum型变量用以标识当前运算符CalcError m_errorState; //enum型变量用以标识当前运算状态Func m_func; //enum型变量用以标识当前运算函数类型BOOL m_bOperandAvail; //标识当前输入是否为新输入数字void Calculate(); //处理普通计算(用类向导,公有成员)void UpdateDisplay(); //处理显示(用类向导,公有成员)void Run_Func(); //处理函数运算(用类向导,公有成员)(3)为编辑框添加Cstring 变量m_result6、部分变量的初始化CCalculatorDlg::CCalculatorDlg(CWnd* pParent /*=NULL*/): CDialog(CCalculatorDlg::IDD, pParent){//{{AFX_DATA_INIT(CCalculatorDlg)m_result = _T("");//}}AFX_DATA_INIT// Note that LoadIcon does not require a subsequent DestroyIcon in Win32 m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);m_coff=0.1;m_bCoff=0;m_errorState = ErrNone;m_bOperandAvail=FALSE;m_operator=OpNone;}另:在文件CalculatorDlg.cpp中添加#include "math.h"7、添加各功能代码(1)数字输入消息处理函数void CCalculatorDlg::OnOperandInput(UINT iID){ASSERT(iID >= IDC_0 && iID <= IDC_9);if(m_errorState!=ErrNone)return;if(!m_bOperandAvail)m_operand=0;if(!m_bCoff)m_operand=m_operand*10+(iID-IDC_0);else{m_operand=m_operand+(iID-IDC_0)*m_coff;m_coff*=0.1;}m_bOperandAvail=TRUE;UpdateDisplay();}(2)运算符消息处理函数void CCalculatorDlg::OnAdd() //加{// TODO: Add your control notification handler code here Calculate();m_operator=OpAdd;}void CCalculatorDlg::OnMinus()//减{// TODO: Add your control notification handler code here Calculate();m_operator=OpSubtract;void CCalculatorDlg::OnMutiply()//乘{// TODO: Add your control notification handler code here Calculate();m_operator=OpMultiply;}void CCalculatorDlg::OnDivid()//除{// TODO: Add your control notification handler code here Calculate();m_operator=OpDivide;}void CCalculatorDlg::OnSign() //处理正负号{// TODO: Add your control notification handler code here m_operand*=-1;UpdateDisplay();}void CCalculatorDlg::OnEqual()//处理等号{// TODO: Add your control notification handler code here Calculate();m_operator=OpNone;}void CCalculatorDlg::OnSqrt()//处理开根号{// TODO: Add your control notification handler code here m_func=FuncSqrt;Run_Func();}void CCalculatorDlg::OnRecip() //求倒数1/x{// TODO: Add your control notification handler code here m_func=FuncRec;Run_Func();}void CCalculatorDlg::OnPoint()//处理小数点// TODO: Add your control notification handler code herem_bCoff=1;UpdateDisplay();}void CCalculatorDlg::Calculate()//处理计算,注意用类向导先添加此成员函数{if(m_errorState!=ErrNone)return;if(m_bOperandAvail){if(m_operator==OpNone)m_accum=m_operand;else if(m_operator==OpMultiply)m_accum*=m_operand;else if(m_operator==OpDivide){if(m_operand==0)m_errorState=ErrDivideByZero;elsem_accum/=m_operand;}else if(m_operator==OpAdd)m_accum+=m_operand;else if(m_operator==OpSubtract)m_accum-=m_operand;}m_bOperandAvail=FALSE;m_bCoff=0;m_coff=0.1;UpdateDisplay();}void CCalculatorDlg::Run_Func()//处理求根和求倒{if (m_errorState != ErrNone)return;if (m_bOperandAvail){if(m_func==FuncSqrt)m_operand=sqrt(m_operand);if(m_func==FuncRec)m_operand=1/m_operand;}UpdateDisplay();}void CCalculatorDlg::UpdateDisplay()//处理显示{if(GetSafeHwnd()==NULL)return;if(m_errorState!=ErrNone)m_result="除数不能为零";else{float lval=(m_bOperandAvail)?m_operand:m_accum;m_result.Format(_T("%f"),lval);int i=m_result.GetLength();while(m_result.GetAt(i-1)=='0'){m_result.Delete(i-1,1);i-=1;}}UpdateData(FALSE);}void CCalculatorDlg::OnClear() //处理清空{// TODO: Add your control notification handler code here m_operator = OpNone;m_operand = 0;m_accum = 0;m_bOperandAvail = FALSE;m_errorState = ErrNone;m_coff=0.1;m_bCoff=0;UpdateDisplay();}void CCalculatorDlg::Run_Func()//处理函数运算{if (m_errorState != ErrNone)return;if (m_bOperandAvail){if(m_func==FuncSqrt)m_operand=sqrt(m_operand);if(m_func==FuncRec)m_operand=1/m_operand;}UpdateDisplay();}。