制作简易计算器

合集下载

C#编写简易计算器(附源代码)超详细

C#编写简易计算器(附源代码)超详细

超详细一、因为计算器设计的控件太多,不便使用控制台应用程序完成,所以这里使用Windows窗体应用程序,并命名为Calc,如下图所示:二、向窗体中拖入需要的控件,如下图所示:(完成效果图)结果显示区(作者博客左边的文本框)是TextBox控件,并修改其name为txtShow ,按键0~9为Button控件,并将其name分别修改为btn_0、btn_1、btn_2、btn_3、btn_4、btn_5、btn_6、btn_7、btn_8、btn_9;按键【负数】的name值修改为btn_sign,按键【.】的name 修改为btn_dot,按键【+ - * /】的name值分别修改为btn_add、btn_sub、btn_mul、btn_div,按键【=】的name值修改为btn_equ,按键【倒数】的name值修改为btn_rev,按键【平方】的name值修改为btn_sqr,按键【开方】的name值修改为btn_sqrt。

右边的计算器图片空间是PictureBox,作者博客控件是LinkLabel,可以不添加,以上所有控件均可按照需求添加,只保留自己需要的按钮控件和textbox控件即可。

三、代码部分(含解释),采用switch多分支语句编写using System;using System.Drawing;using System.Collections;using ponentModel;using System.Windows.Forms;using System.Data;namespace Calc{///<summary>/// QQ:479340056 温柔一刀C#简易计算器的实现///</summary>public class CalcForm : System.Windows.Forms.Form{private System.Windows.Forms.Button btn_0;private System.Windows.Forms.Button btn_1;private System.Windows.Forms.Button btn_2;private System.Windows.Forms.Button btn_3;private System.Windows.Forms.Button btn_4;private System.Windows.Forms.Button btn_5;private System.Windows.Forms.Button btn_6;private System.Windows.Forms.Button btn_7;private System.Windows.Forms.Button btn_8;private System.Windows.Forms.Button btn_9;private System.Windows.Forms.Button btn_add;private System.Windows.Forms.Button btn_sub;private System.Windows.Forms.Button btn_mul;private System.Windows.Forms.Button btn_div;private System.Windows.Forms.Button btn_sqrt;private System.Windows.Forms.Button btn_sign;private System.Windows.Forms.Button btn_equ;private System.Windows.Forms.Button btn_dot;private System.Windows.Forms.Button btn_rev;private System.Windows.Forms.TextBox txtShow;private System.Windows.Forms.Button btn_sqr;private PictureBox pictureBox1;private LinkLabel linkLabel1;///<summary>///必需的设计器变量。

c语言制作简单的计算器

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,我们可以轻松创建一个简易计算器。

这个计算器可以执行基本的加减乘除等操作,同时提供了一个直观的用户界面。

您可以根据需要进行自定义,添加更多功能和复杂的计算操作。

Python之实现一个简易计算器

Python之实现一个简易计算器

Python之实现⼀个简易计算器⾃⼰动⼿写计算器⼀、功能分析 ⽤户输⼊⼀个类似这样 3*( 4+ 50 )-(( 100 + 40 )*5/2- 3*2* 2/4+9)*((( 3 + 4)-4)-4) 这样的表达式,假设表达式⾥⾯除了包含空格、'+'、'-'、'*'、'/'和括号再⽆其他特殊符号,然后⾃⼰动⼿写代码解析其中的表达式,实现加减乘除,最后得出的结果与真实的计算机所算的结果必须⼀致。

⼆、所需的知识点字符串的处理正则表达式的运⽤函数递归三、程序实现流程分析1. ⽤正则表达式处理字符串,只提取其中的数字和运算符,并转换成列表2. 编写⼀个函数,处理没有括号的基本运算的基本表达式3. 再写⼀个函数递归处理带有括号的函数,先计算最内部括号中的表达式, 然后将最内部的括号替换为计算后的结果, 在递归外部⼀层的,最后返回的就是所需的结果四、具体实现过程1.正则表达式处理⽤户输⼊字符串 这⾥我不会讲正则表达式具体的⽤法,要将的话都可以讲⼀本书了,我只讲本⽂⽤到的正则表达式。

根据需求,我们需要提取出⽤户输⼊字符串中的数字和运算符到⼀个列表中,⽽空格将会被忽略掉,假设⽤户输⼊的表达式是 expression,我们可以写出下⾯的代码:1 2 3 4import reexpression='(( 100 + 40 )*5/2- 3*2* 2/4+9)*((( 3 + 4)-4)-4)'l=re.findall('([\d\.]+|/|-|\+|\*)',expression)print(l) #['100', '+', '40', '*', '5', '/', '2', '-', '3', '*', '2', '*', '2', '/', '4', '+', '9', '*', '3', '+', '4', '-', '4', '-', '4'] ⾸先我们先看⼀下 findall 的⽤法,findall可以匹配所有符合规律的内容,返回包含结果的列表。

scratch 计算器 教学设计

scratch 计算器 教学设计

scratch 计算器教学设计标题:通过Scratch制作简易计算器引言:计算器是一种常见的工具,通过Scratch编程,我们可以制作一个简易的计算器。

本文将介绍如何使用Scratch的积木块来创建一个基本的计算器,并提供一些示例代码和使用说明,帮助读者了解如何制作自己的计算器。

1. 创建项目和界面打开Scratch并创建一个新的项目。

然后,我们需要设计计算器的界面。

我们可以使用Scratch提供的图形积木块来绘制按钮和显示屏等元素,使其看起来像一个真实的计算器。

接下来,我们需要为每个按钮和显示屏设置相应的变量和事件。

2. 设置按钮功能为了使计算器能够进行加减乘除等运算,我们需要为每个按钮设置相应的功能。

例如,我们可以为加法按钮设置一个事件,当点击该按钮时,将显示屏上的数字与另一个变量相加,并将结果显示在屏幕上。

同样,我们可以为减法、乘法和除法按钮设置类似的功能。

3. 处理用户输入为了使计算器能够接受用户的输入,我们可以使用Scratch的输入积木块来获取用户输入的数字。

例如,我们可以创建一个文本框,当用户输入数字后,将其存储到一个变量中,以便后续计算使用。

4. 进行计算并显示结果当用户点击运算符按钮后,我们可以使用相应的算术积木块来执行计算,并将结果显示在屏幕上。

例如,当用户点击加法按钮后,我们可以将存储在变量中的数字与显示屏上的数字相加,并将结果显示在屏幕上。

5. 添加功能和优化除了基本的加减乘除功能,我们还可以添加其他功能,如清除按钮、小数点按钮和百分比按钮等。

此外,我们还可以对计算器进行优化,使其更加易用和稳定。

结论:通过Scratch编程,我们可以轻松制作一个简易的计算器。

通过设计界面、设置按钮功能、处理用户输入和进行计算,我们能够实现基本的加减乘除等运算。

通过进一步添加功能和优化,我们可以使计算器更加强大和易用。

希望读者通过本文的介绍和示例代码,能够学会制作自己的计算器,并在Scratch的世界中发挥创造力。

Python简易计算器制作方法代码详解

Python简易计算器制作方法代码详解

Python简易计算器制作⽅法代码详解主要⽤到的⼯具是Python中的Tkinter库⽐较简单直接上图形界⾯和代码引⽤Tkinter库from tkinter import *建⽴主窗⼝对象window=Tk() #设置窗⼝对象window.title('counting machine')window.geometry("350x280")window['bg']='red'建⽴标签框以及标签(将运算字符串显⽰在上⾯)frame=LabelFrame(window,bg='yellow',width=350,height=50)frame.pack()frame.place(x=0,y=0)label=Label(frame,text="1+1=2",height=3,width=50,bg='yellow')label.pack() #显⽰框设置全局变量字符串s,按⼀个按钮,将按钮对应的运算符加到这个字符串s中,最后利⽤eval函数进⾏计算。

global ss=""按钮0-9以及⼩数点的实现(⼤致思路都是⼀样的)#按钮.def figure_dot():global ss=s+"."label.config(text=s)btn0=Button(window,text=".",width=4,command=figure_dot,bg='yellow')btn0.place(x=150,y=220) #按钮.#按钮0def figure_0():global ss=s+"0"label.config(text=s)btn0=Button(window,text="0",width=4,command=figure_0,bg='yellow')btn0.place(x=80,y=220) #按钮0#按钮1def figure_1():global ss=s+"1"label.config(text=s)btn1=Button(window,text="1",width=4,command=figure_1,bg='yellow')btn1.place(x=10,y=80) #按钮1#按钮2def figure_2():global ss=s+"2"label.config(text=s)btn2=Button(window,text="2",width=4,command=figure_2,bg='yellow')btn2.place(x=80,y=80)#按钮2#按钮3def figure_3():global ss=s+"3"label.config(text=s)btn3=Button(window,text="3",width=4,command=figure_3,bg='yellow')btn3.place(x=150,y=80)#按钮3#按钮4def figure_4():global ss=s+"4"label.config(text=s)btn4=Button(window,text="4",width=4,command=figure_4,bg='yellow')btn4.place(x=10,y=130)#按钮4#按钮5def figure_5():global ss=s+"5"label.config(text=s)btn5=Button(window,text="5",width=4,command=figure_5,bg='yellow')btn5.place(x=80,y=130)#按钮5#按钮6def figure_6():global ss=s+"6"label.config(text=s)btn6=Button(window,text="6",width=4,command=figure_6,bg='yellow')btn6.place(x=150,y=130)#按钮6#按钮7def figure_7():global ss=s+"7"label.config(text=s)btn7=Button(window,text="7",width=4,command=figure_7,bg='yellow')btn7.place(x=10,y=180)#按钮7#按钮8def figure_8():global ss=s+"8"label.config(text=s)btn8=Button(window,text="8",width=4,command=figure_8,bg='yellow')btn8.place(x=80,y=180)#按钮8#按钮9def figure_9():global ss=s+"9"label.config(text=s)btn9=Button(window,text="9",width=4,command=figure_9,bg='yellow')btn9.place(x=150,y=180)#按钮9运算符号的实现(±*/)#加法按钮def figure_addition():global ss=s+"+"label.config(text=s)btn_add=Button(window,text="+",width=4,command=figure_addition,bg='yellow') btn_add.place(x=220,y=80)#加法按钮#减法按钮def figure_subtraction():global ss=s+"-"label.config(text=s)btn_sub=Button(window,text="-",width=4,command=figure_subtraction,bg='yellow')btn_sub.place(x=220,y=130)#减法按钮#乘法按钮def figure_multiplication():global ss=s+"*"label.config(text=s)btn_multi=Button(window,text="*",width=4,command=figure_multiplication,bg='yellow')btn_multi.place(x=290,y=80)#乘法按钮#除法按钮def figure_division():global ss=s+"/"label.config(text=s)btn_divi=Button(window,text="/",width=4,command=figure_division,bg='yellow')btn_divi.place(x=290,y=130)#除法按钮清空窗⼝按钮的实现#清空按钮def figure_clear():global ss=""label.config(text=s)btn_clear=Button(window,text="clear",width=4,command=figure_clear,bg='yellow')btn_clear.place(x=220,y=180)#清空按钮结果输出的实现(eval函数)#结果按钮def figure_value():global sx=eval(s)s=str(x)label.config(text=s)btn_value=Button(window,text="=",width=4,command=figure_value,bg='yellow')btn_value.place(x=290,y=180)颜⾊变换的实现(红变粉)def figure_colorchange():window.config(bg="pink")btn_value=Button(window,text="color",width=4,command=figure_colorchange,bg='yellow')btn_value.place(x=10,y=220)#改变颜⾊window.mainloop()变换后这个简易计算器也就实现了,当然也可以加⼊其他的功能,如开⽅,乘幂等功能。

元换万元计算器

元换万元计算器

元换万元计算器元换万元计算器今天,我们在手工课上制作一个计算器。

老师先发给每人一张彩纸、一支铅笔和一盒彩色水笔。

只见老师左手拿着彩纸,右手拿着剪刀,神情专注地剪起来。

过了几分钟,一个精美的计算器就呈现在我眼前。

它有一个长方形的外壳,在外壳的四个面分别画上横线、竖线、斜线和圆圈。

它有一个像小蜜蜂样的三角形按键,按键下是红色的,按键上是黄色的,按键旁边有一个黑色的小键盘,键盘上还有五个数字:“ 00”“ 01”“ 10”“ 12”“ 23”。

看上去既简单又美观。

再瞧瞧里面吧,有七排白色的显示屏,左边一排写着“ 00”“ 01”“ 10”“ 12”“ 23”“……”;右边一排写着“+”“-”“*”“/”;“帮助”下有九个按钮:“ L”代表的是“ L0”;“ M”代表的是“ M0”;“ C”代表的是“ C0”;“ E”代表的是“ E0”;“ H”代表的是“ H0”;“ J”代表的是“ J0”;“ M”代表的是“ M1”;“ S”代表的是“ S1”;“ M”代表的是“ T3”;“ N”代表的是“ N0”;“ D”代表的是“ D0”;“ I”代表的是“ I0”;“ O”代表的是“ O0”;“ P”代表的是“ P0”;“ R”代表的是“ R1”。

我立刻打开计算器,用铅笔点住“+”这个按钮,随后一按,便出现了一条数学公式: 01+10=11+01=10+0=11+0= 22。

这时,我不禁惊讶地说道:“哇!我竟然会这么多知识!”我心想:如果让我算那么多数学题目,肯定比这个还复杂。

我又按住了“-”这个按钮,结果出现了很多数学公式:- 00+10=-10+01=-10+0=-11+0= -22。

我恍然大悟:原来如此。

我立刻打开“帮助”这个按钮,上面写着:“ +”表示加法;“-”表示减法;“*”表示乘法;“/”表示除法;“-”表示负数。

我又按了“ L”这个按钮,出现了“ M”这个按钮,下面的公式可多了:“ M”-0=0;“ M”-1=0;“ M”-2=-1;“ M”-3=0;“ M”-4=-1;“ M”-5=0;“ M”-6=1;“ M”-7=0;“ M”-8=1;“ M”-9=0;“ M”-10=1;“ M”-11=0;“ M”-12=1;“ M”-13=1;“ M”-14=1;“ M”-15=0;“ M”-16=1;“ M”-17=1;“ M”-18=1;“ M”-19=1;“ M”-20=0。

VC6.0制作简易计算器MFC[整理]

VC6.0制作简易计算器MFC[整理]

1、单击File(文件)菜单,选中New(新建),创建新工程。

2、选择工程栏中MFC AppWizard[exe]应用程序,并命名工程名称为calculator.(如图)3、选择MFC应用程序为“基于对话框”类型,其他选项默认。

单击完成(如图)4、修改界面。

经过前3步骤,VC6.0生成的工作界面如图所示。

先将对话框中的“TODO:在这里设置对话控制”静态文字控件和“确定”按钮控件删除,再使用工具箱将界面拖动控件修改为如图所示的界面。

该图所示是使用工具箱的控件拖放制作的计算器初始界面。

由于这些控件都有默认的名字,所以我们要对控件进行改名,右击Button1按钮,选中Properties(属性)选项以修改控件的属性,如图所示。

在弹出的对话框中,将Button1按钮的Caption(标题)属性修改为“+”,此时初始界面同时变成相应的“+”如下图所示。

修改后的界面如图所示,控件的Caption属性就是控件显示出来的值。

按照前文所讲述的方式,将界面上的按钮控件和静态文本控件的Caption属性都做相应的修改,修改后的界面如图所示。

5、为Edit(编辑)控件添加类的成员变量。

首先,右击Edit控件,选择ClassWizard(建立类向导)选项,如下图所示。

在弹出的对话框中,选择上方MemberVariables选项卡,选中DIC_EDIT1,然后单击单击右侧的Add Variable按钮,如图所示。

单击Add Variable按钮后会跳出,如图所示的对话框,该对话框是设置成员变量的命名和数据类型,在此可以命名为m_data1.注意:控件的ID只是标记一个控件,程序中不能直接控制ID,只能通过修改变量来改变控件的状态。

00相应的,再将另外两个Edit控件命名,本项目就将这3个Edit控件命名为:●IDC_EDIT1:m_data1,类型为double.●IDC_EDIT2:m_data2,类型为double.●IDC_EDIT3:m_result,类型为double.6、添加按钮控件的消息处理函数。

四年级数学学具制作

四年级数学学具制作

四年级数学学具制作一、引言数学学具对于学生学习数学非常重要,它能够帮助学生更好地理解数学概念和运算方法。

在四年级数学教学中,学生已经接触到了较为复杂的数学内容,因此制作一些适合四年级学生的数学学具是非常有必要的。

二、计算器计算器是四年级数学学具中必不可少的一种。

我们可以制作简易计算器,使用纸板和按钮电池等材料制作。

首先,将纸板剪成适当的大小,并画上计算器的按钮。

然后,将按钮电池粘贴在纸板上,并连接好电路。

最后,使用胶水将纸板和按钮电池固定在一起,一个简易计算器就制作完成了。

通过使用计算器,学生可以更方便地进行加减乘除等数学运算。

三、数学符号卡片数学符号卡片可以帮助学生记忆和理解各种数学符号的含义。

我们可以使用彩色卡纸制作数学符号卡片。

首先,将彩色卡纸剪成适当的大小,然后使用彩笔在卡片上写上不同的数学符号,如加号、减号、乘号、除号等。

最后,将卡片装订在一起,制作成数学符号卡片的小册子。

通过使用数学符号卡片,学生可以更好地记忆和理解各种数学符号的含义。

四、分数模型在四年级数学教学中,学生需要学习分数的概念和运算方法。

我们可以制作一些分数模型,帮助学生理解分数的概念。

可以使用颜色纸板制作分数模型。

首先,将纸板剪成适当的大小,并使用彩笔将纸板分割成若干等份。

然后,将不同颜色的纸板叠在一起,代表不同数值的分数。

最后,使用胶水将纸板固定在一起,制作成分数模型。

通过使用分数模型,学生可以直观地理解分数的概念和运算方法。

五、量角器量角器是四年级数学学具中的重要工具之一,它可以帮助学生测量和绘制角度。

我们可以使用塑料板和铁钉等材料制作量角器。

首先,将塑料板剪成适当的大小,并在塑料板上标注上角度刻度。

然后,使用铁钉将塑料板固定在一起,形成一个可转动的量角器。

最后,使用胶水将铁钉固定在塑料板上,制作成量角器。

通过使用量角器,学生可以更准确地测量和绘制角度。

六、立体几何模型在四年级数学教学中,学生需要学习立体几何的概念和特征。

轻松制作计算器计算器工具推荐

轻松制作计算器计算器工具推荐

轻松制作计算器计算器工具推荐轻松制作计算器在现代社会,计算器成为了人们日常生活和工作中不可或缺的工具之一。

然而,市场上的计算器种类繁多,功能各异,选择一款适合自己的计算器成为了一项颇具挑战性的任务。

本文将为您介绍几款轻松制作计算器的工具推荐,帮助您找到适合自己使用的计算器。

一、HTML/CSS/JavaScriptHTML、CSS和JavaScript是现代网络开发中最常用的三种语言。

利用这三种语言的组合,我们可以轻松地制作出一个简单而实用的计算器。

首先,在HTML中创建一个包含数字按钮和运算符按钮的界面,然后使用CSS进行样式设计,最后使用JavaScript实现按钮的点击事件和计算逻辑。

通过灵活运用这三种语言的特性,我们可以根据自己的需求对计算器进行定制和扩展,实现各种功能。

二、PythonPython是一种简洁而强大的编程语言,广泛应用于计算科学和数据分析领域。

利用Python的GUI库,比如Tkinter或PyQt,我们可以快速地制作出一个图形界面的计算器。

通过编写相应的代码,我们可以实现按钮、界面布局、逻辑运算等功能。

此外,Python还提供了丰富的数学函数库,如NumPy和SciPy,可以方便地进行各种复杂的数值计算。

三、手机应用开发随着智能手机的普及,手机应用开发成为了一项具有潜力的技能。

通过学习相应的开发语言和平台,如Java和Android Studio、Swift和Xcode,我们可以制作出适用于iOS和Android系统的计算器应用。

这种方式不仅可以提供便捷的计算功能,还可以加入更多实用的功能和个性化的设计,满足用户的各种需求。

四、在线计算器制作工具除了自己编写代码,我们还可以利用一些在线计算器制作工具来快速制作计算器。

这些工具通常提供了可视化的界面编辑器和拖拽式组件,使制作过程更加简单和直观。

根据自己的需求,我们可以选择预设的模板样式或自定义界面风格。

一些常用的在线计算器制作工具包括JotForm、Zoho Creator和Google表单等。

计算器制作方法

计算器制作方法

计算器制作方法制作计算器的方法有很多种,下面我将介绍一种简单的方法。

1.设计计算器的界面:首先,你需要决定计算器的外观和布局。

可以在纸上或者电脑上绘制你理想中的计算器样式,包括数字键、操作键、显示屏等。

考虑布局的合理性,使得用户可以方便地按键和查看结果。

2.编写HTML和CSS代码:使用HTML和CSS语言创建计算器的界面。

HTML用来构建网页结构,CSS用来对界面进行样式设计,如字体、颜色、大小等。

根据设计好的样式,编写HTML和CSS代码,将计算器的界面布局和样式实现出来。

3.添加JavaScript代码:编写JavaScript代码实现计算器的功能。

JavaScript是一种脚本语言,可以在网页中添加交互和动态效果。

根据计算器的功能需求,编写JavaScript代码实现数字输入、运算操作、结果显示等功能。

你可以使用JavaScript的计算功能和条件判断语句来实现计算器的基本功能。

4.进行测试和调试:完成代码编写后,进行测试和调试。

确保计算器能够正确地接收用户输入、执行运算操作,并且能够正确地显示结果。

测试过程中需要注意输入的边界情况和错误处理,确保计算器的稳定性和可靠性。

5.部署和发布:当计算器的功能完备且稳定后,可以将它部署到服务器或者上传到网页空间,供用户访问和使用。

你可以使用云服务提供商提供的服务器或者自己搭建服务器,将计算器的页面文件和相关资源上传到服务器上。

然后,用户可以通过浏览器访问你的计算器网页并使用它进行计算。

以上就是制作计算器的简单方法。

当然,如果你希望计算器功能更加复杂和完备,可以继续学习和探索相关技术,例如使用JavaScript的高级功能、添加动画效果等。

希望对你有所帮助!。

二进制简易计算器制作方法

二进制简易计算器制作方法

二进制简易计算器制作方法在计算机科学中,二进制是一种基础的数字表示方法,它由0和1组成。

二进制计算器是一种能够执行二进制加法、减法、乘法和除法等基本运算的工具。

本文将介绍如何制作一个简易的二进制计算器。

步骤一,确定功能需求。

首先,我们需要确定我们的二进制计算器要实现的功能。

通常,一个简易的二进制计算器应该能够进行二进制数字的加法和减法运算。

因此,我们的计算器将包括加法器和减法器两个基本功能。

步骤二,设计电路。

接下来,我们需要设计计算器的电路。

对于加法器,我们可以使用全加器电路来实现二进制数字的加法运算。

对于减法器,我们可以使用补码运算来实现二进制数字的减法运算。

可以使用数字集成电路或者程序设计语言来实现这些电路。

步骤三,实现电路。

一旦电路设计完成,就可以开始实现电路了。

如果选择使用数字集成电路,可以使用数字逻辑门、触发器和其他数字电路组件来搭建加法器和减法器。

如果选择使用程序设计语言,可以编写相应的程序来模拟加法和减法运算。

步骤四,测试和调试。

完成电路实现后,需要进行测试和调试。

通过输入不同的二进制数字,验证计算器的加法和减法功能是否正常。

如果发现问题,需要对电路进行调试,直到计算器能够正确执行加法和减法运算。

步骤五,优化和扩展。

一旦基本的加法和减法功能正常,可以考虑对计算器进行优化和扩展。

例如,可以添加乘法和除法功能,或者设计一个更复杂的二进制计算器,实现更多功能。

总结。

通过以上步骤,我们可以制作一个简易的二进制计算器。

这个计算器可以帮助我们理解二进制数字的运算规则,同时也可以作为一个有趣的电子项目来实现。

希望本文能够帮助你了解如何制作一个简易的二进制计算器。

制作简单的计算器

制作简单的计算器

制作简单的计算器现代社会中,计算器是我们不可或缺的工具之一、它可以帮助我们进行快速而准确的数学运算,使得我们的工作和生活更加便利。

本篇文章将介绍如何制作一个简单的计算器,帮助你更好地了解计算器的原理和构造。

首先,我们需要明确计算器的基本功能。

一个简单的计算器应该具备加法、减法、乘法和除法的四则运算功能。

此外,我们还可以添加一些其他常用的功能,例如百分比计算、开方和平方等。

接下来,我们将使用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>` 元素,分别代表加法、减法、乘法和除法,这些元素的值分别为 "+"、"-"、"*"和"/"。

C语言简易计算器的实现

C语言简易计算器的实现

C语言简易计算器的实现计算器是一个常见的应用程序,用于执行数学运算。

在C语言中,可以通过使用条件判断、循环和函数来实现一个简易计算器。

下面是一个实现四则运算的简易计算器的示例代码:```c#include <stdio.h>float add(float a, float b)return a + b;float subtract(float a, float b)return a - b;float multiply(float a, float b)return a * b;float divide(float a, float b)return a / b;int maifloat num1, num2;char operator;printf("请输入两个数:");scanf("%f %f", &num1, &num2);printf("请输入操作符:");scanf(" %c", &operator); // 注意空格,以防止读取上一个输入时的换行符float result;switch (operator)case '+':result = add(num1, num2);printf("结果为:%.2f\n", result);break;case '-':result = subtract(num1, num2);printf("结果为:%.2f\n", result);break;case '*':result = multiply(num1, num2);printf("结果为:%.2f\n", result);break;case '/':if (num2 == 0)printf("除数不能为0!\n");} elseresult = divide(num1, num2);printf("结果为:%.2f\n", result);}break;default:printf("操作符无效!\n");break;}return 0;```在这个简易计算器中,使用了四个函数来执行加法、减法、乘法和除法运算,这些函数分别返回运算结果。

简易计算器设计与实现

简易计算器设计与实现

简易计算器设计与实现一、引言计算器是一种广泛应用的工具,可以进行基本的算数运算和一些科学计算,能够极大地方便人们的日常生活和工作。

本文将介绍一个简易的计算器的设计和实现方案。

二、设计思路1.功能选择:通过提供菜单供用户选择,以实现计算器常见功能如加法、减法、乘法、除法等。

2.输入输出处理:用户通过键盘输入待计算的数字和操作符,计算器将结果输出到屏幕上。

3.算术运算:根据用户选择的功能,进行相应的算术运算,如加法、减法、乘法、除法等。

4.错误处理:对于非法的输入,如除数为0,需要给出错误提示。

三、详细设计1.界面设计:计算器通过命令行界面展示,用户通过菜单选择功能。

界面可以提供以下功能选择菜单:1)加法2)减法3)乘法4)除法5)退出2.输入输出处理:在命令行界面上提示用户输入数字和操作符,并读取用户输入的数据。

用户输入格式为两个数字和一个操作符,操作符为"+","-","*"或"/"。

3.算术运算:a)加法运算:将两个数字相加,得到结果。

b)减法运算:将第一个数字减去第二个数字,得到结果。

c)乘法运算:将两个数字相乘,得到结果。

d)除法运算:将第一个数字除以第二个数字,得到结果。

在执行除法运算前,需要检查除数是否为0,如果为0,则给出错误提示。

4.错误处理:在用户选择除法运算时,需要检查除数是否为0。

如果为0,则输出错误提示信息,提示用户输入合法操作数。

五、实现以下为Python语言实现的简易计算器代码示例:```pythondef add(a, b):return a + bdef subtract(a, b):return a - bdef multiply(a, b):return a * bdef divide(a, b):if b == 0:raise ValueError("除数不能为0")return a / bdef calculator(:while True:print("请选择功能:")print("1) 加法")print("2) 减法")print("3) 乘法")print("4) 除法")print("5) 退出")choice = int(input()if choice == 1:a = float(input("请输入第一个数字:"))b = float(input("请输入第二个数字:")) result = add(a, b)print("计算结果:%f" % result)elif choice == 2:a = float(input("请输入第一个数字:"))b = float(input("请输入第二个数字:")) result = subtract(a, b)print("计算结果:%f" % result)elif choice == 3:a = float(input("请输入第一个数字:"))b = float(input("请输入第二个数字:")) result = multiply(a, b)print("计算结果:%f" % result)elif choice == 4:a = float(input("请输入第一个数字:"))b = float(input("请输入第二个数字:")) try:result = divide(a, b)print("计算结果:%f" % result)except ValueError as e:print("错误:%s" % str(e))elif choice == 5:breakelse:print("无效的选择,请重新选择功能。

基于51单片机的简易计算器设计

基于51单片机的简易计算器设计

基于51单片机的简易计算器设计设计一个基于51单片机的简易计算器,主要功能包括加减乘除四则运算和百分数计算。

下面是设计的详细步骤:1.硬件设计:-使用51单片机作为主控芯片。

-连接16x2的LCD显示屏,用于显示输入和计算结果。

-连接16个按键开关,用于输入运算符和数字。

-连接4个LED灯,用于指示四则运算的选择。

2.软件设计:-初始化LCD显示屏,并显示欢迎信息。

-监听按键输入,在接收到输入后,根据输入的按键值判断操作类型。

-如果按键值对应数字键,保存输入的数字,并在LCD上显示当前输入的数字。

-如果按键值对应四则运算符(+、-、*、/),保存当前输入的数字,并保存运算符。

-如果按键值对应等号(=),根据保存的数字和运算符进行相应的运算,计算结果保存并显示在LCD上。

-如果按键值对应清零(C),将所有保存的数据清空,并显示初始状态。

-如果按键值对应百分号(%),将当前数字除以100并显示在LCD上。

3.主要函数说明:- void init_lcd(:初始化LCD显示屏。

- void display_lcd(char* str):将指定字符串显示在LCD上。

- void clear_lcd(:清空LCD显示屏。

- char get_key(:获取按键输入的值。

- void calculate(:根据保存的数字和运算符进行计算。

- void add_digit(char digit):将输入的数字添加到当前数字中。

- void set_operator(char op):保存运算符。

- void clear_data(:清空所有保存的数据。

4.主要流程:-初始化LCD显示屏并显示欢迎信息。

-在循环中监听按键输入,并根据输入的按键值进行相应的操作。

-根据不同的按键值,调用不同的函数进行处理。

-最后计算结果显示在LCD上。

以上是基于51单片机的简易计算器设计的详细步骤和主要函数说明。

你可以根据这个设计框架进行具体的代码实现。

《动手做》数学教案二:教你制作简易计算器

《动手做》数学教案二:教你制作简易计算器

今天我们来学习如何制作一个简易的计算器。

这个计算器可以进行加、减、乘、除四种基本运算,除此之外还可以进行开方和取模运算。

它的界面简洁、易于操作,是我们日常生活中必不可少的工具。

让我们来了解一下计算器的基本原理。

计算器主要由两个部分组成:输入和输出。

在输入方面,我们需要一个键盘。

而在输出方面,我们需要一个屏幕来显示结果。

同时,我们还需要一个小小的计算机芯片来进行计算工作。

这样,我们就可以把它们连接起来,制作出一款真正的计算器了。

接着,让我们一步步地来制作这个计算器吧。

我们需要准备一块面包板、一些连线、一个电池盒和一个开关。

将电池盒安装在面包板上并与开关连接。

接下来,我们需要把计算机芯片插入面包板的相应位置,并用连线连接好各个引脚。

电路连接完毕后,我们就可以进行软件编程了。

在编程方面,我们可以使用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 = ' ';}}}```通过这段代码,我们可以实现计算器的基本功能。

用HTML制作简单计算器

用HTML制作简单计算器

用HTML制作简单计算器HTML是一种标记语言,用于创建网页。

虽然HTML本身并不支持计算器功能,但我们可以使用HTML结合JavaScript来实现一个简单的计算器。

首先,我们需要创建一个HTML页面,并添加一个表单元素和一些按钮来实现计算器的功能。

```html<!DOCTYPE html><html><head><title>简单计算器</title><script src="calculator.js"></script></head><body><h1>简单计算器</h1><form id="calculator"><input type="text" id="result" readonly><br><input type="button" value="1" onclick="appendToResult('1')"> <input type="button" value="2" onclick="appendToResult('2')"><input type="button" value="3" onclick="appendToResult('3')"> <br><input type="button" value="4" onclick="appendToResult('4')"> <input type="button" value="5" onclick="appendToResult('5')"> <input type="button" value="6" onclick="appendToResult('6')"> <br><input type="button" value="7" onclick="appendToResult('7')"> <input type="button" value="8" onclick="appendToResult('8')"> <input type="button" value="9" onclick="appendToResult('9')"> <br><input type="button" value="0" onclick="appendToResult('0')"> <input type="button" value="+" onclick="appendToResult('+')"> <input type="button" value="-" onclick="appendToResult('-')"> <br><input type="button" value="*" onclick="appendToResult('*')"> <input type="button" value="/" onclick="appendToResult('/')"> <input type="button" value="=" onclick="calculateResult("><br><input type="button" value="清除" onclick="clearResult("></form></body></html>```然后,我们在每个按钮上添加了一个`onclick`属性,该属性指定了当按钮被点击时要执行的JavaScript代码。

基于Unity制作一个简易的计算器

基于Unity制作一个简易的计算器

基于Unity制作⼀个简易的计算器⽬录⼀、前⾔⼆、效果图及源⼯程三、实现1.界⾯搭建2.代码实现四、后记⼀、前⾔Hello,⼜见⾯了,今天分享如何使⽤Unity制作计算器,难度中等,可以⽤来学习,或者当成其他项⽬的⼩组件导⼊。

当然,也可以导出来,发布到⽹页端,来做⼀个嵌⼊式⼯具也可以。

⼆、效果图及源⼯程效果图:三、实现1.界⾯搭建所有的按钮摆放到Background下⾯。

2.代码实现⾸先找到所有的按钮,添加到事件://结果显⽰TextComputeProcess = GameObject.Find("Canvas/Background/Image/TextComputeProcess").GetComponent<Text>();TextComputeResult = GameObject.Find("Canvas/Background/Image/TextComputeResult").GetComponent<Text>();TextComputeResult.text = "0";RUNSTATE = 0;//操作BtnReset = GameObject.Find("Canvas/Background/重置").GetComponent<Button>();BtnReset.onClick.AddListener(() => OperationDispose("CE"));BtnDelete = GameObject.Find("Canvas/Background/删除").GetComponent<Button>();BtnDelete.onClick.AddListener(() => OperationDispose("Del"));//加减乘除BtnAdd = GameObject.Find("Canvas/Background/加").GetComponent<Button>();BtnAdd.onClick.AddListener(() => OperationDispose("+"));BtnSub = GameObject.Find("Canvas/Background/减").GetComponent<Button>();BtnSub.onClick.AddListener(() => OperationDispose("-"));BtnMul = GameObject.Find("Canvas/Background/乘").GetComponent<Button>();BtnMul.onClick.AddListener(() => OperationDispose("*"));BtnDiv = GameObject.Find("Canvas/Background/除").GetComponent<Button>();BtnDiv.onClick.AddListener(() => OperationDispose("/"));BtnEqual = GameObject.Find("Canvas/Background/等于").GetComponent<Button>();BtnEqual.onClick.AddListener(() => OperationDispose("="));//数字Btn0 = GameObject.Find("Canvas/Background/0").GetComponent<Button>();Btn0.onClick.AddListener(() => NumDispose("0"));Btn1 = GameObject.Find("Canvas/Background/1").GetComponent<Button>();Btn1.onClick.AddListener(() => NumDispose("1"));Btn2 = GameObject.Find("Canvas/Background/2").GetComponent<Button>();Btn2.onClick.AddListener(() => NumDispose("2"));Btn3 = GameObject.Find("Canvas/Background/3").GetComponent<Button>();Btn3.onClick.AddListener(() => NumDispose("3"));Btn4 = GameObject.Find("Canvas/Background/4").GetComponent<Button>();Btn4.onClick.AddListener(() => NumDispose("4"));Btn5 = GameObject.Find("Canvas/Background/5").GetComponent<Button>();Btn5.onClick.AddListener(() => NumDispose("5"));Btn6 = GameObject.Find("Canvas/Background/6").GetComponent<Button>();Btn6.onClick.AddListener(() => NumDispose("6"));Btn7 = GameObject.Find("Canvas/Background/7").GetComponent<Button>();Btn7.onClick.AddListener(() => NumDispose("7"));Btn8 = GameObject.Find("Canvas/Background/8").GetComponent<Button>();Btn8.onClick.AddListener(() => NumDispose("8"));按钮操作://操作点击处理private void OperationDispose(string operation){switch (operation){case "+":if (RUNSTATE == 0)TextComputeProcess.text = "0 + ";else{TextComputeProcess.text = TextComputeResult.text + " + ";m_operation = "+";RUNSTATE = 2;}break;case "-":if (RUNSTATE == 0)TextComputeProcess.text = "0 - ";else{TextComputeProcess.text = TextComputeResult.text + " - ";m_operation = "-";RUNSTATE = 2;}break;case "*":if (RUNSTATE == 0)TextComputeProcess.text = "0 * ";else{TextComputeProcess.text = TextComputeResult.text + " * ";m_operation = "*";RUNSTATE = 2;}break;case "/":if (RUNSTATE == 0)TextComputeProcess.text = "0 / ";else{TextComputeProcess.text = TextComputeResult.text + " / ";m_operation = "/";RUNSTATE = 2;}break;case "=":if (RUNSTATE == 0)TextComputeProcess.text = "0 = ";else{if (RUNSTATE == 3){double result;switch (m_operation){case "+":result = double.Parse(calculateString) + double.Parse(TextComputeResult.text);TextComputeProcess.text = calculateString + " + " + TextComputeResult.text + " = "; TextComputeResult.text = result.ToString();RUNSTATE = 4;break;case "-":result = double.Parse(calculateString) - double.Parse(TextComputeResult.text);TextComputeProcess.text = calculateString + " - " + TextComputeResult.text + " = "; TextComputeResult.text = result.ToString();RUNSTATE = 4;break;case "*":result = double.Parse(calculateString) * double.Parse(TextComputeResult.text);TextComputeProcess.text = calculateString + " * " + TextComputeResult.text + " = "; TextComputeResult.text = result.ToString();RUNSTATE = 4;break;case "/":result = double.Parse(calculateString) / double.Parse(TextComputeResult.text);TextComputeProcess.text = calculateString + " / " + TextComputeResult.text + " = "; TextComputeResult.text = result.ToString();RUNSTATE = 4;break;default:break;}}elseTextComputeProcess.text = "";TextComputeResult.text = "0";RUNSTATE = 0;break;case "Del":if (RUNSTATE == 0)return;else{if (TextComputeResult.text.Length == 1){TextComputeResult.text = "0";}else{TextComputeResult.text = TextComputeResult.text.Remove(TextComputeResult.text.Length - 1, 1); }}break;default:break;}}数字点击处理://数字点击处理private void NumDispose(string num){switch (num){case ".":if (RUNSTATE == 0)TextComputeResult.text = "0";elseTextComputeResult.text += num;break;case "-":if (RUNSTATE == 0)TextComputeResult.text = "0";else{if (RUNSTATE == 1){if (pmState){TextComputeResult.text = TextComputeResult.text.Remove(0, 1);pmState = false;}else{TextComputeResult.text = num + TextComputeResult.text;pmState = true;}}else if (RUNSTATE == 2){pmState = false;}else if (RUNSTATE == 3){if (pmState){TextComputeResult.text = TextComputeResult.text.Remove(0, 1);pmState = false;}else{TextComputeResult.text = num + TextComputeResult.text;pmState = true;}}else if (RUNSTATE == 4){pmState = false;OperationDispose("CE");}}break;default:if (RUNSTATE == 0){TextComputeResult.text = num;RUNSTATE = 1;}else if (RUNSTATE == 1)calculateString = TextComputeResult.text;TextComputeResult.text = "";TextComputeResult.text += num;RUNSTATE = 3;}else if (RUNSTATE == 3){TextComputeResult.text += num;}else if (RUNSTATE == 4){OperationDispose("CE");TextComputeResult.text = num;RUNSTATE = 1;}break;}}完整代码:using System.Collections;using System.Collections.Generic;using UnityEngine;using UnityEngine.UI;public class CalculatorControl : MonoBehaviour{private Text TextComputeProcess;//计算过程private Text TextComputeResult;//计算结果private Button BtnReset;private Button BtnDelete;private Button BtnAdd;private Button BtnSub;private Button BtnMul;private Button BtnDiv;private Button BtnEqual;private Button Btn0, Btn1, Btn2, Btn3, Btn4, Btn5, Btn6, Btn7, Btn8, Btn9;private Button BtnPoint, BtnPm;private string calculateString = "";//计算数private string m_operation = "";//操作数private bool pmState = false;//正负状态private int RUNSTATE = 0;//0 默认 1 输⼊数字 2 输⼊操作符 3 输⼊操作符再输⼊数字 4 计算结果后void Start(){//结果显⽰TextComputeProcess = GameObject.Find("Canvas/Background/Image/TextComputeProcess").GetComponent<Text>(); TextComputeResult = GameObject.Find("Canvas/Background/Image/TextComputeResult").GetComponent<Text>();TextComputeResult.text = "0";RUNSTATE = 0;//操作BtnReset = GameObject.Find("Canvas/Background/重置").GetComponent<Button>();BtnReset.onClick.AddListener(() => OperationDispose("CE"));BtnDelete = GameObject.Find("Canvas/Background/删除").GetComponent<Button>();BtnDelete.onClick.AddListener(() => OperationDispose("Del"));//加减乘除BtnAdd = GameObject.Find("Canvas/Background/加").GetComponent<Button>();BtnAdd.onClick.AddListener(() => OperationDispose("+"));BtnSub = GameObject.Find("Canvas/Background/减").GetComponent<Button>();BtnSub.onClick.AddListener(() => OperationDispose("-"));BtnMul = GameObject.Find("Canvas/Background/乘").GetComponent<Button>();BtnMul.onClick.AddListener(() => OperationDispose("*"));BtnDiv = GameObject.Find("Canvas/Background/除").GetComponent<Button>();BtnDiv.onClick.AddListener(() => OperationDispose("/"));BtnEqual = GameObject.Find("Canvas/Background/等于").GetComponent<Button>();BtnEqual.onClick.AddListener(() => OperationDispose("="));//数字Btn0 = GameObject.Find("Canvas/Background/0").GetComponent<Button>();Btn0.onClick.AddListener(() => NumDispose("0"));Btn1 = GameObject.Find("Canvas/Background/1").GetComponent<Button>();Btn1.onClick.AddListener(() => NumDispose("1"));Btn2 = GameObject.Find("Canvas/Background/2").GetComponent<Button>();Btn2.onClick.AddListener(() => NumDispose("2"));Btn3 = GameObject.Find("Canvas/Background/3").GetComponent<Button>();Btn3.onClick.AddListener(() => NumDispose("3"));Btn4 = GameObject.Find("Canvas/Background/4").GetComponent<Button>();Btn4.onClick.AddListener(() => NumDispose("4"));Btn5 = GameObject.Find("Canvas/Background/5").GetComponent<Button>();Btn5.onClick.AddListener(() => NumDispose("5"));Btn9 = GameObject.Find("Canvas/Background/9").GetComponent<Button>();Btn9.onClick.AddListener(() => NumDispose("9"));BtnPoint = GameObject.Find("Canvas/Background/点").GetComponent<Button>();BtnPoint.onClick.AddListener(() => NumDispose("."));BtnPm = GameObject.Find("Canvas/Background/正负").GetComponent<Button>();BtnPm.onClick.AddListener(() => NumDispose("-"));}//操作点击处理private void OperationDispose(string operation){switch (operation){case "+":if (RUNSTATE == 0)TextComputeProcess.text = "0 + ";else{TextComputeProcess.text = TextComputeResult.text + " + ";m_operation = "+";RUNSTATE = 2;}break;case "-":if (RUNSTATE == 0)TextComputeProcess.text = "0 - ";else{TextComputeProcess.text = TextComputeResult.text + " - ";m_operation = "-";RUNSTATE = 2;}break;case "*":if (RUNSTATE == 0)TextComputeProcess.text = "0 * ";else{TextComputeProcess.text = TextComputeResult.text + " * ";m_operation = "*";RUNSTATE = 2;}break;case "/":if (RUNSTATE == 0)TextComputeProcess.text = "0 / ";else{TextComputeProcess.text = TextComputeResult.text + " / ";m_operation = "/";RUNSTATE = 2;}break;case "=":if (RUNSTATE == 0)TextComputeProcess.text = "0 = ";else{if (RUNSTATE == 3){double result;switch (m_operation){case "+":result = double.Parse(calculateString) + double.Parse(TextComputeResult.text);TextComputeProcess.text = calculateString + " + " + TextComputeResult.text + " = "; TextComputeResult.text = result.ToString();RUNSTATE = 4;break;case "-":result = double.Parse(calculateString) - double.Parse(TextComputeResult.text);TextComputeProcess.text = calculateString + " - " + TextComputeResult.text + " = "; TextComputeResult.text = result.ToString();RUNSTATE = 4;break;case "*":result = double.Parse(calculateString) * double.Parse(TextComputeResult.text);TextComputeProcess.text = calculateString + " * " + TextComputeResult.text + " = "; TextComputeResult.text = result.ToString();RUNSTATE = 4;break;case "/":result = double.Parse(calculateString) / double.Parse(TextComputeResult.text);TextComputeProcess.text = calculateString + " / " + TextComputeResult.text + " = "; TextComputeResult.text = result.ToString();RUNSTATE = 4;{TextComputeProcess.text = TextComputeResult.text + " = ";}}break;case "CE":TextComputeProcess.text = "";TextComputeResult.text = "0";RUNSTATE = 0;break;case "Del":if (RUNSTATE == 0)return;else{if (TextComputeResult.text.Length == 1){TextComputeResult.text = "0";}else{TextComputeResult.text = TextComputeResult.text.Remove(TextComputeResult.text.Length - 1, 1); }}break;default:break;}}//数字点击处理private void NumDispose(string num){switch (num){case ".":if (RUNSTATE == 0)TextComputeResult.text = "0";elseTextComputeResult.text += num;break;case "-":if (RUNSTATE == 0)TextComputeResult.text = "0";else{if (RUNSTATE == 1){if (pmState){TextComputeResult.text = TextComputeResult.text.Remove(0, 1);pmState = false;}else{TextComputeResult.text = num + TextComputeResult.text;pmState = true;}}else if (RUNSTATE == 2){pmState = false;}else if (RUNSTATE == 3){if (pmState){TextComputeResult.text = TextComputeResult.text.Remove(0, 1);pmState = false;}else{TextComputeResult.text = num + TextComputeResult.text;pmState = true;}}else if (RUNSTATE == 4){pmState = false;OperationDispose("CE");}}break;default:if (RUNSTATE == 0){TextComputeResult.text += num;}else if (RUNSTATE == 2){calculateString = TextComputeResult.text;TextComputeResult.text = "";TextComputeResult.text += num;RUNSTATE = 3;}else if (RUNSTATE == 3){TextComputeResult.text += num;}else if (RUNSTATE == 4){OperationDispose("CE");TextComputeResult.text = num;RUNSTATE = 1;}break;}}}效果图如下:四、后记完整代码278⾏,还是依旧那么简练,整体代码难度不⼤,主要是状态之间的切换:1、输⼊数字的状态2、输⼊操作符状态3、输⼊操作符后再输⼊数字状态4、计算结果后状态理解这些状态后,代码就容易理解了。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Columns 设置单选按钮组中单选按钮的排列列数,默认值为1。
Itemlndex 单选按钮组中当前被选中的单选按钮的索引号。
ቤተ መጻሕፍቲ ባይዱ
CheckBox控件
Caption 复选框的标题,字符串类型。
Checked 逻辑类型,值为True时,复选框被选中,值为 False时,复选框未被选中。
单词表
l Speed:速度 l Check:检查 l Kind:种类 l Custom:自定义 l Abort:放弃 l Glyph:字形 l Margin:边缘 l Space:间隔 l Item:项目 l Column:列
BitBtn控件
Caption 位图按钮的标题,字符串类型。
Enabled 逻辑类型,值为True时,BitBtn控件为有效状态。 默认值为True。
Kind 设置位图按钮的类型,Delphi提供了bkCustom、 bkYes、bkNo、bkAbort、bkAll、bkCancel等 十余种取值。默认值为bkCustom。
THANKS
RadioButton
单选按钮的主要属性有: Caption
单选按钮的标题,字符串类型。 Checked
逻辑类型,值为True时,单选按钮被选中,值 为False时,单选按钮未被选中。
RadioGroup控件
Caption 单选按钮组的标题,字符串类型。
Items 单选按钮列表,用于设置每个单选按钮的标题。
BitBtn控件
Glyph 设置位图按钮上显示的位图,即bmp图片文 件。
Margin属性:表示BitBtn按钮中图片边界之 间的距离。
Spacing属性:表示BitBtn按钮中图片于文 字之间的距离。
SpeedButton控件
l Down属性:该属性设置为真时,SpeedButton控件处于 按下状态,否则为弹起的状态,默认值为false。
制作简易计算器
单词表(提问)
l Clipboard: l ScrollBar: l Value: l Increment: l Line: l 剪切 l 复制 l 粘贴 l 清除
单词表(提问)
l Attribute: l 增加 l 插入 l 删除 l 计数
任务5 制作简易计算器
学习目标: l 掌握Button、 BitBtn、SpeedButton的基本属
l Flat属性:该属性为真时,SpeedButton控件的外观类似 一个标签,只有当鼠标移动到表面时,SpeedButton控 件会显示突起的外观。当Flat属性为false时, SpeedButton控件与普通按钮的外观一致。
l GroupIndex属性:GroupIndex的默认值为0,表示 SpeedButton控件为一个单独的按钮。
性设置 l 熟练掌握CheckBox和RadioButton控件 l 使用控件RadioGroup控件
任务5 制作简易计算器
Button控件
主要属性 l caption属性:按钮的标题,即按钮所显示的提
示性文字。如果在一个字符的前面插入“&”字 符,在程序运行时,该字符下面会出现下划线, 这类字符称为加速字符。用户可以按住Alt键并 按下加速字符,来选择控件或者菜单项。 l Enabled :逻辑类型,值为True时,Button按 钮为有效状态。默认值为True。
相关文档
最新文档