vb计算器设计报告

合集下载

vb 简易计算器实验报告

vb 简易计算器实验报告

简易计算器课程设计报告一、实验目的:模拟计算器的功能。

系统启动后, 先清屏, 再在显示屏右侧显示0字样, 系统仅接收数字键、加减乘除键、退格键、C键(复位)、=或回车键、ESC键(退出系统)作为有效按键, 其余按键不响应。

按键后屏幕显示效果要达到一般计算器显示屏的同样效果。

不要求设计一般计算器上都具有的M功能。

二、实验设计内容及思想:首先, 创建一个主体框架: 建立程序的主要界面后, 系统自动生成界面的主要窗口生成代码。

对于每个按钮的的代码段中, 分别添加事件触发的处理代码。

分别设立三个显示屏, 第一个显示屏作为“被加数”框, 第二个显示屏作为“加数”框, 第三个显示屏则作为输出框。

四则运算时直接采用计算表达式。

所以, 优先级和运算规则皆宜考虑在内。

在进行除法运算时, 若遇到除数为0, 则运用条件语句执行, 并在输出显示屏上输出“E”。

三角函数、指数、对数、整除、取余等运算, 也是运用类似手法。

考虑到计算器的操作简便性, 所以加入了复位和退出按钮。

三、源程序文件:Private Sub Command1_Click()Dim x As IntegerDim y As Integerx = Text1.Texty = Text2.TextText3.Text = x + yEnd SubPrivate Sub Command10_Click()Dim x As Integerx = Text1.TextText3.Text = Cos(x)End SubPrivate Sub Command11_Click()Dim x As Integerx = Text1.TextText3.Text = Tan(x)End SubPrivate Sub Command12_Click()Dim x As Integerx = Text1.TextText3.Text = Atn(x)End SubPrivate Sub Command13_Click() Dim x As IntegerDim y As Integerx = Text1.Texty = Text2.TextText3.Text = x ^ yEnd SubPrivate Sub Command14_Click() Dim x As Integerx = Text1.TextIf x <= 0 ThenText3.Text = "输入错误"ElseText3.Text = Log(x)End IfEnd SubPrivate Sub Command15_Click() Text3.Text = "此按钮仅作装饰用" End SubPrivate Sub Command2_Click() Dim x As IntegerDim y As Integerx = Text1.Texty = Text2.TextText3.Text = x - yEnd SubPrivate Sub Command3_Click() Dim x As IntegerDim y As Integerx = Text1.Texty = Text2.TextText3.Text = x * yEnd SubPrivate Sub Command4_Click() Dim x As IntegerDim y As Integerx = Text1.Texty = Text2.TextIf y = 0 ThenText3.Text = "E"ElseText3.Text = x / yEnd IfEnd SubPrivate Sub Command5_Click()Dim x As IntegerDim y As Integerx = Text1.Texty = Text2.TextText3.Text = x \ yEnd SubPrivate Sub Command6_Click()Dim x As IntegerDim y As Integerx = Text1.Texty = Text2.TextText3.Text = x Mod yEnd SubPrivate Sub Command7_Click()Text1.Text = ""Text2.Text = ""Text3.Text = " 0" End SubPrivate Sub Command8_Click()EndEnd SubPrivate Sub Command9_Click()Dim x As Integerx = Text1.TextText3.Text = Sin(x)End Sub源代码截图:四、运行结果演示: 加法演示:减法演示: 乘法演示:除法演示:能够整除: 不能够整除:除数为零:。

打印计算机vb设计课程实验报告1

打印计算机vb设计课程实验报告1

计算机vb设计课程实验报告说明书题目:计算器、扫雷姓名:班级:指导老师:一.设计名称:基础用途计算器二.设计目的:通过vb程序设计出计算器进行一些简单运算和进制的转换。

三.计算器设计界面:四.设计步骤:1)新建一个工程2)设置控件:插入一个text1控件,font属性字号为“一号”,textAlign属性调成Right。

插入一个标签控件(Label1),设置标题属性为“进制”插入四个单选按钮,设置caption属性分别为2进制,8进制,10进制,16进制。

插入一个timer控件,将Interval属性设置为“100”添加一个command1控件数组数目为17,command1(0)至command1(9)caption属性分别设置为由0至9,command1(10)标题属性设置为“.”,command1(11)至command1(16)caption属性分别设置为A至F。

添加控件command2,caption属性为“=”添加command3控件数组数目为4,caption属性分别为“+”,“-”,“*”,“/”添加控件command4, command5, command6, command7设置标题属性分别为“CE”“SQR”“X^2”“1/X”添加部件Microsoft Windows Common Controls 6.0添加StatusBar部件,右键插入窗格,设置窗格宽度,文本。

3)编写程序代码:Dim a#, b#, x$, K%Private Sub Command1_Click(Index As Integer)Text1 = Text1 & Command1(Index).Caption End SubPrivate Sub Command2_Click()b = Val(Text1)Select Case x Case "+"M = a + b Case "-"M = a - b Case "*"M = a * b Case "/"If b <> 0 ThenM = a / bElseMsgBox "分母为0", "65", "警告"End IfEnd SelectText1 = MIf M < 1 And M > 0 Then Text1 = "0" & Text1If M > -1 And M < 0 Then Text1 = "-0" & Abs(V al(Text1))End SubPrivate Sub Command3_Click(Index As Integer)a = Val(Text1): Text1 = ""x = Command3(Index).CaptionEnd SubPrivate Sub Command4_Click()Text1 = ""End SubPrivate Sub Command5_Click()K = Val(Text1)Text1 = Sqr(K)End SubPrivate Sub Command6_Click()t = Val(Text1)Text1 = t ^ 2End SubPrivate Sub Command7_Click()I = Val(Text1)Text1 = 1 / IEnd SubPrivate Sub Form_Load()K = 10Option3.Value = TrueEnd SubPrivate Sub Option1_Click()For I = 0 To 1Command1(I).Enabled = TrueNextFor I = 2 To 16Command1(I).Enabled = FalseNextCommand1(10).Enabled = TrueM = Val(Text1) Select Case KCase 10Text1 = F102(Text1)Case 2S1 = Text1Case 16S2 = F1610(Text1)Text1 = F102(S2)Case 8S3 = F810(Text1)Text1 = F102(S3)End SelectK = 2End SubPrivate Sub Option2_Click() For I = 0 To 7Command1(I).Enabled = True NextFor I = 8 To 16Command1(I).Enabled = False NextCommand1(10).Enabled = True M = Val(Text1)Select Case KCase 10Text1 = Oct(M)Case 2S1 = F210(Text1)Text1 = Oct(S1)Case 16S2 = F1610(Text1)Text1 = Oct(S2)Case 8Text1 = MEnd SelectK = 8End SubPrivate Sub Option3_Click() For I = 0 To 10Command1(I).Enabled = True NextFor I = 11 To 16Command1(I).Enabled = False NextM = Val(Text1)Select Case KCase 10Text1 = MCase 2Text1 = F210(Text1)Case 16Text1 = F1610(Text1)Case 8Text1 = F810(Text1)End SelectK = 10End SubPrivate Sub Option4_Click() For I = 0 To 16Command1(I).Enabled = True NextM = Val(Text1)Select Case KCase 10Text1 = Hex(M)Case 2S1 = F210(Text1)Text1 = Hex(S1)Case 16S2 = F1610(Text1)Text1 = Hex(S2)Case 8S2 = F810(Text1)Text1 = Hex(S2)End SelectK = 16End SubFunction F102(S)K = Val(S)x = ""While K <> 0x = K Mod 2 & xK = K \ 2WendF102 = xEnd FunctionFunction F210(S)K = 0For I = 0 To Len(S) - 1K = K + Val(Mid(S, Len(S) - I, 1)) * 2 ^ I NextF210 = KEnd FunctionFunction F810(S)K = 0For I = 0 To Len(S) - 1K = K + Val(Mid(S, Len(S) - I, 1)) * 8 ^ I NextF810 = KEnd FunctionFunction F1610(S)K = 0For I = 0 To Len(S) - 1x = Mid(S, Len(S) - I, 1)Select Case xCase "1" To "9"K = K + Val(x) * 16 ^ ICase "A" To "F"K = K + (Asc(x) - 55) * 16 ^ IEnd SelectNextF1610 = KEnd FunctionPrivate Sub Timer1_Timer()StatusBar1.Panels(2).Text = Date & " " & TimeEnd Sub总结:通过vb设计计算器使自己掌握select case的编写方法以既vb中部件的属性设置方法。

用VB做简易计算器

用VB做简易计算器

《VB》课内实验报告学生姓名:及学号:学院:班级: 数学101课程名称:VB实验题目:控件数组的应用指导教师姓名及职称:2012年03月28日目录一、实验目的 (1)二、实验内容 (1)三、实验要点及说明 (1)四、实现方法 (1)五、实验结果 (2)六、源程序清单 (2)七、思考及总结 (4)一、实验目的1.掌握动态数组与静态数组的使用方法。

2.掌握控件数组的添加、删除以及使用方法。

3.掌握If语句、Select Case语句以及循环语句的使用。

4.掌握控件数组中索引号(Index)的作用。

二、实验内容1.制作计算器,完成十进制的加减乘除运算。

2.随机产生15个不重复的A-Z(包括A,Z)的大写字母,存放在字符数组中。

三、实验要点及说明1.利用数组控件完成计算器的制作。

(1)设计界面及设置属性界面设计中的显示部分要求用标签实现;运算符、数字分别使用控件数组实现;(2)编写代码图3-1 设计界面程序代码的任务是单击数字按钮和运算符按钮实现十进制的常规运算,同时要求做到实现正负号的转变、结果的标准输出以及除法中除数的检查等功能。

2.界面设计部分要求能够体现出字符数组中的内容,且实现随机不重复显示的功能,具体参数不做要求。

四、实现方法运行环境:Visual Basic运行开发环境;1.VB6.0窗体的属性设置运用复制的方法建立两个建立控件数组,编写代码。

2. 设置窗体的属性,添加一个文本框MultiLine属性设置成True,编写代码。

五、实验结果1. 能够完成十进制的加减乘除运算,可以判断被除数是否为零,如果为零,弹出对话框提示错误。

2.单击窗体随机出现15个不同的字母。

六、源程序清单1、源程序:Option Explicit ‘对所有变量进行显式声明Dim Num1 As Single, Num2 As Single ‘声明Num1,Num2为单精度浮点型变量Dim Flag As Boolean ‘声明Flag为布尔变量Dim Cul As Integer ‘声明Cul为整型变量Private Sub Command1_Click(Index As Integer) ‘Command1的单击事件Num1 = Val(Text1.Text) ‘Text1中的值赋给Num1Flag = True ‘Flag为真Cul = IndexEnd SubPrivate Sub _Click() ‘Command4的单击事件If InStr(Text1.Text, ".") = 0 And Text1.Text <> "" Then ‘如果Text1中没Text1.Text = Text1.Text + "." 有"."并且不为空,就在Text1中加一个"."End IfEnd SubPrivate Sub Command2_Click(Index As Integer)If Flag Then Text1.Text = "": Flag = False ‘如果Flag为真则Text1赋为空Text1.Text = Text1.Text + Command2(Index).Caption ‘如果为假Text1加End Sub Command2(Index) Private Sub Command5_Click() ‘Command5的单击事件的单击事件Text1.Text = "" ‘清空Text1,Num1, Num2的值Num1 = 0Num2 = 0End SubPrivate Sub Command6_Click() ‘Command6的单击事件Dim result As Single ‘声明result为单精度浮点型变量Num2 = Val(Text1.Text) ‘Text1中的值赋给Num2Flag = True ‘Flag b变为真Select Case Cul ‘Select循环Case 0: result = Num1 + Num2Case 1: result = Num1 - Num2Case 2: result = Num1 * Num2Case 3:If Num2 <> 0 Then ‘若分母为零提示result = Num1 / Num2ElseMsgBox "出错!被0除!"End IfEnd SelectIf result \ 1 <> result Then ‘如果result \ 1不等于result那么在result前Text1.Text = Format(result, "0.#") 加”0.”赋给Text1.TextElseText1.Text = Str(result) ‘否则直接将result转化成字符串赋给Text1.TextEnd IfEnd SubPrivate Sub Command3_Click() ‘Command3的单击事件If Text1.Text <> "" Then ‘如果Text1.Text不是空的If InStr( Text1.Text, "-") = 0 Then ‘Text1.Text中不包含"-"Text1.Text = "-" + Text1.Text ‘把"-" Text1.Text连接后赋给Text1.Text ElseText1.Text = Right(Text1.Text, Len(Text1.Text) - 1)End If ‘取Text1.Text中长度减1的字符赋给Text1.Text End IfEnd Sub2、源程序Private Sub Form_Click() ‘Form的单击事件Dim s(1 To 15) As String * 1, c As String * 1 ‘声明s,c为定长字符串Dim Found As Boolean ‘声明Found为布尔变量s(1) = chr(Int(Rnd * 26 + 65)) ‘将一随机字符赋给s(1)n = 2Do While n <= 15 ‘循环条件n<=15c = chr(Int(Rnd * 26 + 65)) ‘将一随机字符赋给cFound = FalseFor j = 1 To n – 1 ‘For循环If s(j) = c Then Found = TrueNext jIf Not Found Then ‘Found为假,进行下两行语句s(n) = cn = n + 1End IfLoopFor i = 1 To 15 ‘循环输出s(i)到Text1.Text中Text1.Text = Text1.Text & s(i)Next iEnd Sub七、思考及总结。

《软件设计基础(VB)》简单科学计算器课程设计报告书

《软件设计基础(VB)》简单科学计算器课程设计报告书

河北联合大学 《软件设计基础(VB)》课程设计报告设计名称: 姓 名: 专业班级: 学 院: 设计时间: 设计地点:简易科学计算器学 号:指导教师评语:成绩:指导教师签字: 年月日目录1.课程设计目的 ··············································································32.课程设计任务与要求 ·····································································33.课程设计说明书 ···········································································44.课程设计成果 ············································································205.程序调试过程 ············································································236.设计问题的不足和改进方案 ··························································237.课程设计心得 ············································································248.附录 ························································································249.参考文献24《软件设计基础(VB)》课程设计报告第 3 页,共 26 页1.课程设计目的 《软件设计基础(VB)》课程设计是这门课程的实践性教学环节之一,本次设计结合实际应用的要求,使课程设计既覆盖 VB 的知识点,又接近工程实际需 要。

VB简单计算器实验

VB简单计算器实验
接受键盘输入的运算操作是打开了建立了一个Form_KeyPress(KeyAscii)通用过程,根据KeyAscii的值响应相应事件。
在代码中针对每个过程都有简单注释;在代码的开头例如“'''operand ----------------------------操作数'''Calculation -------------------------计算”,这些都是帮助说明变量用途而写。
ElseIf LastInput = "负值" Then
'**************除法10
'*************求平方根10
'*************当前操作数的百分比10
'****************求倒数,用除法11
'*************等于11
一、程序功能和总体说明:
本程序使用VB语言编成,只使用了一个窗体模块,完成模仿市面简单计算器的功能。例如加减乘除,开方,求倒数,求百分比,并可连贯运算这些功能。
Case Asc(0) '48为字符零的Ascii值
Call Command0_Click
'Command0.Value = True‘与Call Command0_Click作用相同
Case Asc(0) To Asc(9) '49 To 57数字键1至9的Ascii值
Char = Chr(KeyAscii)
NumOperand = 1 '操作数个数置1
DecimalFlag = False
Time = 0
End Sub
'***************定义处理数字按钮通用过程

vb计算器实验报告

vb计算器实验报告

vb计算器实验报告《VB计算器实验报告》摘要:本实验报告通过使用VB(Visual Basic)编程语言,设计并实现了一个简单的计算器应用程序。

实验结果表明,该计算器能够实现基本的四则运算功能,并且具有良好的用户界面和操作体验。

本实验为学习VB编程语言的初学者提供了一个很好的实践机会,也为进一步深入学习和开发更复杂的应用程序奠定了基础。

1. 背景VB是一种由微软公司开发的基于对象的编程语言,它是一种易学易用的编程语言,适合初学者入门。

VB可以用于开发各种类型的应用程序,包括桌面应用程序、Web应用程序和移动应用程序等。

在本实验中,我们将使用VB编程语言设计并实现一个简单的计算器应用程序,以展示其基本功能和特点。

2. 实验目的通过本实验,我们旨在掌握VB编程语言的基本语法和功能,并且能够设计并实现一个简单的计算器应用程序。

同时,我们也将学习如何创建用户界面、处理用户输入和实现基本的数学运算功能。

3. 实验方法本实验使用Visual Studio作为开发环境,通过VB编程语言实现计算器应用程序的设计和开发。

在设计过程中,我们将考虑用户界面的布局和美观性,以及计算器功能的实现和操作流程。

在开发过程中,我们将使用VB的各种语法和功能,如变量、条件语句、循环语句和函数等,来实现计算器的基本功能。

4. 实验结果经过设计和开发,我们成功实现了一个简单的计算器应用程序。

该计算器具有清晰的用户界面和友好的操作体验,能够实现基本的加减乘除等四则运算功能。

用户可以通过点击按钮或者输入数字和运算符来进行计算,同时还可以实现清零和退格等功能。

整体而言,该计算器应用程序能够满足基本的计算需求,并且具有较好的稳定性和性能。

5. 结论通过本实验,我们不仅掌握了VB编程语言的基本语法和功能,还学会了如何设计和实现一个简单的计算器应用程序。

同时,我们也了解到了用户界面设计和用户体验的重要性,以及如何通过VB编程语言实现各种功能和操作。

vb简易科学计算器的设计与开发课程设计报告可视化编程武汉理工大学华夏学院

vb简易科学计算器的设计与开发课程设计报告可视化编程武汉理工大学华夏学院

学号《可视化编程》课程设计报告简易科学计算器的设计与开发专业班级:计算机科学与技术1112学生姓名:指导教师:钱小红/李小艳教学系:信息工程系2012年6月15日课程设计报告书学生姓名:专业班级:计算机1111-1112班指导教师:钱小红/李小艳工作单位:华夏学院计算机教研室设计题目:简易科学计算器的设计与开发初始条件:1、完成可视化编程的学习2、带Visual Basic 的机器要求完成的主要任务:主要任务:(在规定的时间内完成下列任务)1、能够完成数值常数的四则运算,不要求支持运算符的优先级。

2、能够进行如下函数的求值运算,包括sin, cos, tan, exp, log, ln, sqr, 1/x,以及常数e和圆周率π。

3、设置5个存贮键,以便将中间运算结果存入,在需要的时候取出参与运算。

4、能够进行初始化,清除内存中的数,退出运算,清除显示。

5、因为控件数目较多,要求采用控件数组,以减少事件处理的复杂程度,使程序简洁高效。

6、出错处理:操作数如果不符合数学上的定义,应该给出错误信息。

例:0做除数,负数或0做真数等情况。

设计报告撰写格式要求:(课程设计报告按统一通用格式书写)具体内容如下:①设计任务与要求②总体方案与说明③程序主要模块的流程图④源程序清单与注释⑤问题分析与解决方案(包括调试记录、调试报告,即在调试过程中遇到的主要问题、解决方法及改进设想);⑥小结与体会附录:①源程序(必须有简单注释)②使用说明③参考资料时间安排:6月15日---21日第一天布置题目,确定任务、查找相关资料第二天~第四天功能分析,编写程序,调试程序、运行系统;第五天程序验收、答辩;撰写设计报告。

指导教师签字:2012年6月15日系主任签字:年月日1.设计任务与要求1.设计任务利用VB语言设计一个简易的科学计算器,学会利用VB控件数组实现数值的计算以及基本函数的计算。

2.基本要求:(1)要能够完成数值常数的四则运算。

vb实验报告实验一

vb实验报告实验一

vb实验报告实验一
实验一:VB实验报告
实验目的:通过VB编程实现简单的计算器功能,加深对VB语言的理解和掌握。

实验内容:
1. 设计计算器界面,包括数字按钮、运算符按钮和等号按钮。

2. 实现数字按钮的点击事件,将点击的数字显示在计算器界面上。

3. 实现运算符按钮的点击事件,将点击的运算符保存下来。

4. 实现等号按钮的点击事件,根据保存的运算符进行相应的计算,并将结果显
示在计算器界面上。

实验步骤:
1. 打开VB开发环境,创建一个新的Windows窗体应用程序项目。

2. 在窗体上设计计算器界面,包括数字按钮、运算符按钮和等号按钮。

3. 编写VB代码,实现数字按钮和运算符按钮的点击事件,将点击的数字或运
算符保存下来。

4. 编写VB代码,实现等号按钮的点击事件,根据保存的运算符进行相应的计算,并将结果显示在计算器界面上。

实验结果:
经过实验,成功实现了一个简单的计算器功能。

用户可以通过点击数字按钮输
入数字,点击运算符按钮选择运算符,点击等号按钮进行计算,最终得到正确
的计算结果。

实验总结:
通过本次实验,我进一步掌握了VB语言的编程技巧,对VB编程有了更深入的
理解。

通过实际操作,我对计算器功能的实现有了更清晰的认识,为以后的VB 编程打下了良好的基础。

希望通过不断的实践和学习,能够更加熟练地运用VB 语言,实现更多更复杂的功能。

vb科学计算器

vb科学计算器

课程设计指导书课程vb计算器程序设计班级姓名学号目录一功能描述 (3)二概要设计及设计流程框图 (3)三详细设计..................................................................。

3 四效果及运行界面图......................................................。

.4 五心得体会.. (4)六附录.........................................................................。

6 七参考文献...................................................................。

6 八本人在改组中完成的部分.. (7)九进度安排……………………………………………。

……………。

7一、功能描述:窗体通过窗体命令按钮或键盘输入数字实现基本的数学运算,使用窗体的功能按钮计算某些特殊函数二、概要设计及设计流程框图:使用vb设计科学型计算器,功能介于科学型和简单型之间,要求能进行加、减、乘、除和开方、乘方、对数、三角函数计算,可以存储与调出数据。

在这个计算器的程序中,我用到了单行选择语句If …Then …Else…,If语句的嵌套,多条件选择语句Select Case。

三、详细设计:本系统1个文本框,数个命令按钮,数个数字按钮用文本框显示输入的数字并将结果显示在文本框中,用命令按钮来计算和输入数字。

详细内容:command12(0-9)为数字的控件数组,command13(4—11)为功能函数的控件数组,command13(0-3)为运算符的控件数组,command25为小数点按钮,command26为等号按钮,command1为开关按钮,command2为清除按钮。

四、效果及运行界面:基本能完成所有运算五、心得体会为期一周的实训即将结束,通过这次的实训使我们学到了很多,同时也让我们意识到我们要学的更多.本次实训的内容是科学计算器的程序设计,以小组的形式进行分工合作,我组共4个人,从程序的需求分析、可行性分析、设计到编写、调试、修改、完善、到最后的实训报告,每个人都付出了时间和精力去做好自己的任务并努力地去完善它。

VB设计计算器实验报告

VB设计计算器实验报告

VB设计计算器实验报告姓名:专业:学号:二〇一一年十一月七日设计功能完整的计算器,实现如下图所示按钮(除“MC”,“MR”,“MS”,“M+”)及菜单功能,如图:一、解题思路、分析:对于我来说,设置一个完整的计算器是一个艰巨的任务,一开始想了一小段时间,自己试着编了一些,但就是无法达到一个完整的计算器,于是,就到网上去下载了一些有关计算器的程序进行参考分析。

首先先定义一些量,比如说前后两个操作数op1、op2,小数点是否真存在的量DecimalFlag,操作数个数NumOps,上一次按键的类型等。

接着对窗体进行初始化,同时设置所有变量为其初始。

然后对各个键盘的命令进行编写程序,对0---9按键设置为一个按键命令组,编写一个程序,同时加减乘除设置一个命令组,也编写一个程序,其他按键都各自设置为一个命令,分别单独进行编写程序。

同时在多个命令中都要对显示器中的小数点进行分析,看它是否是真实存在。

同时对于除法分母是否为0,也要加以考虑。

二、源程序:Option ExplicitDim Op1, Op2 ' 前面输入的操作数Dim DecimalFlag As Integer ' 小数点仍然存在吗?Dim NumOps As Integer ' 操作数个数Dim LastInput ' 指示上一次按键事件的类型Dim OpFlag ' 指示未完成的操作Dim TempReadout' 窗体的初始化过程' 设置所有变量为其初始值Private Sub Form_Load()DecimalFlag = FalseNumOps = 0LastInput = "NONE"OpFlag = " "Text1.Text = Format(0, "0.")'Decimal.Caption = Format(0, ".")End Sub' 退格键Private Sub Command1_Click()If Len(Text1.Text) = 1 ThenText1.Text = Format(0, "0.")DecimalFlag = FalseLastInput = "NONE"ElseIf Text1.Text = "0." ThenText1.Text = "0."DecimalFlag = FalseLastInput = "NONE"ElseText1.Text = Left(Text1.Text, Len(Text1.Text) - 1)End IfEnd IfEnd SubPrivate Sub Command2_Click()' CE (取消输入) 按钮的 Click 事件过程Text1.Text = Format(0, "0.")DecimalFlag = FalseLastInput = "CE"End SubPrivate Sub Command3_Click()' C (取消) 按钮的 Click 事件过程' 重新设置显示并初始化变量Text1.Text = Format(0, "0.")Op1 = 0Op2 = 0Form_LoadEnd SubPrivate Sub Command8_Click(Index As Integer)' 数字键 (0-9) 的 Click 事件过程' 向显示中的数追加新数If LastInput <> "NUMS" ThenText1.Text = Format(0, ".")DecimalFlag = FalseEnd IfIf DecimalFlag ThenText1.Text = Text1.Text + Command8(Index).CaptionElseText1.Text = Left(Text1.Text, InStr(Text1.Text, Format(0, ".")) - 1) + Command8(Index).Caption + Format(0, ".") End IfIf LastInput = "NEG" Then Text1.Text = "-" & Text1.TextLastInput = "NUMS"End SubPrivate Sub Command11_Click(Index As Integer)' 运算符 (+, -, x, /, =) 的 Click 事件过程' 如果接下来的按键是数字键,增加 NumOps。

VB课程设加减乘除计算器

VB课程设加减乘除计算器

加减乘除计算器设计报告一:设计思路1.要达到的目的培养学生综合利用VB语言进行程序设计的能力,主要培养学生综合使用基本控件,控件数组,常用算法等能力。

2.关键问题的解决●在窗体上分别创建用于0-9个操作数字和+、-、*、/运算符号的控件数组,并创建用于显示操作数、运算结果的文本框及其它控件。

●单击数字控件数组元素时,先判断参加运算的数是否是新的操作数,用以确定单击数字键后数字在文本框中的显示方式,如果是新的操作数如234,那么连续单击2,3,4数字键,在文本框中会显示234。

●单击操作符,结束第一个操作数的输入,同时把第一个操作数存储到一个全局变量中。

●单击等号(=),结束第二个操作数的输入并存储,根据上面记下的index值选择操作符计算。

●如果用键盘操作运算,应根据所按键对应的KeyAscii值转换成对应的字符来断执行什么操作,确定调用哪个事件过程。

最后完成运算。

二、模块之间的调用关系,或程序流程图f = 0s = 0i = 0j = 0End SubPrivate Sub form_Keypress(Keyascii As Integer) Select Case Chr(Keyascii)Case "0" To "9"commadone_click (Val(Chr(Keyascii))) Case "."Call Command1_ClickCase "+"Call commandjia_click(0)Case "-"Call commandjia_click(1)Case "*"Call commandjia_click(2)Case "/"Call commandjia_click(3)Case "="Call commanddeng_clickEnd SelectEnd SubPrivate Sub jia_Click(Index As Integer)i = cun(Text1)Text1.Text = ""f = Index + 1End SubPrivate Sub one_Click(Index As Integer)Text1 = Text1 & IndexEnd SubPublic Sub jisuan(i, j, s)Select Case fCase 1s = i + jCase 2s = i - jCase 3s = i * jCase 4s = i / jEnd SelectEnd SubPublic Function cun(x As String)cun = Val(x)End Function四、设计方案的完善及目前存在的问题只能进行一次运算不能运算负数五、本次设计的收获及心得体会得锻炼自己学习课外知识的能力,同时动手能力得到了很大提高六、对该题目和VB设计的意见和建议题目难易度适当较好的锻炼学生能力。

vb综合性设计实验报告

vb综合性设计实验报告

综合性实验实验名称:用v b编写简单计算器专业班级: 土木工程0901班学生姓名: ***学号:*********指导教师: ***1 需求分析该计算器程序是在Visual Basic6.0环境下编写,编写完成后在Windows xp下运行,通过初步测试,发现该计算程序能完成整数的加,减,乘,除四种运算。

通过在虚拟键盘上用鼠标点击输入第一个数,然后点击运算符,再输入第二个数,最后点击“=”就会在计算器上方的文本框中输出结果,清空文本框进行下次运算。

经过仔细测试发现,该计算器最高支持五位整数的运算,在除法运算中能精确到小数点后14位。

2 运行环境WINDOWS XP系统;VB6.0;3开发工具和编程语言开发工具:Visual Basic6.0“微型整值计算器”程序编写代码:Dim op1 As IntegerDim op2 As IntegerDim operator As StringPrivate Sub Command1_Click()Text1.Text = Text1.Text & "1"End SubPrivate Sub Command2_Click()Text1.Text = Text1.Text & "2"End SubPrivate Sub Command3_Click()Text1.Text = Text1.Text & "3"End SubPrivate Sub Command4_Click()Text1.Text = Text1.Text & "4"End SubPrivate Sub Command5_Click()Text1.Text = Text1.Text & "5"End SubPrivate Sub Command6_Click()Text1.Text = Text1.Text & "6"End SubPrivate Sub Command7_Click()Text1.Text = Text1.Text & "7"End SubPrivate Sub Command8_Click()Text1.Text = Text1.Text & "8"End SubPrivate Sub Command9_Click()Text1.Text = Text1.Text & "9"End SubPrivate Sub Command11_Click()Text1.Text = Text1.Text & "0"End SubPrivate Sub Command10_Click()op1 = Val(Text1.Text)operator = "+"Text1.Text = ""End SubPrivate Sub Command12_Click()op1 = Val(Text1.Text)operator = "-"Text1.Text = ""End SubPrivate Sub Command13_Click()op1 = Val(Text1.Text)operator = "*"Text1.Text = ""End SubPrivate Sub Command14_Click()op1 = Val(Text1.Text)operator = "/"Text1.Text = ""End SubPrivate Sub Command15_Click()op2 = Val(Text1.Text)If operator = "+" ThenText1.Text = op1 + op2ElseIf operator = "-" ThenText1.Text = op1 - op2ElseIf operator = "*" ThenText1.Text = op1 * op2ElseIf operator = "/" ThenText1.Text = op1 / op2End IfEnd Sub4 系统设计(1)程序的组织结构(包括窗体、模块及其功能)。

基于VB的计算器的设计与实现

基于VB的计算器的设计与实现

摘要我用VB制作这个程序的简单计算器,它包括一个标准的计算器和一个科学计算器。

它可以实现简单的加减乘除四则运算,数字的平方、平方根,正弦、余弦、正切,倒数、指数函数、对数函数,角度、弧度、梯度的转换,以及各进制的相互转换。

而且它的功能还有退格,清除当前数据,清除所有数据,复制数据,粘贴数据。

在这个计算器的程序中,我用到了单行选择语句If …Then …Else…,块语句if…then…end if,If语句的嵌套,多条件选择语句Select Case,而且还用到了按钮、文本框、框架、单选按钮控件,菜单的设计。

在此报告中我重点叙述了计算机的各个功能及用法。

特别是进制间的转换和数字与运算符之间的联系。

虽然描述的不太完整,但我会尽力使用系统结构图,划分多个模块,让大家明白我设计的运算器的功能的。

目录第一章、程序概述......................... - 4 -1.1、创作目的 ......................................................................... - 4 -1.2、基本功能 ......................................................................... - 4 -第二章、总体设计......................... - 5 -2.1、程序轮廓图 .................................................................... - 5 -第三章、程序代码......................... - 6 -3.1、计算器界面 ..................................................................... - 6 -3.1.1、标准型计算器: .................................................. - 6 -3.1.2、科学型计算器: .................................................. - 7 -3.2、标准计算器代码 ............................................................. - 8 -3.2.1、变量的定义及初始化 .......................................... - 8 -3.2.2、简单的运算 .......................................................... - 8 -3.2.3、退格、清除、清空 ............................................ - 10 -3.2.4、复制、粘贴 ........................................................ - 11 -3.2.5、两窗体的切换 .................................................... - 12 -3.3、科学型计算器的代码 ................................................... - 12 -3.3.1、变量的定义及初始化 ........................................ - 12 -3.3.2、简单的运算 ........................................................ - 13 -3.3.3、正弦、余弦、正切 ............................................ - 15 -3.3.4、平方、立方、多次方 ........................................ - 15 -3.3.5、指数函数、对数函数 ........................................ - 16 -3.3.6、倒数、平方根 .................................................... - 16 -3.3.7、角度、弧度、梯度 ............................................ - 17 -3.3.8、各进制转换 ........................................................ - 18 -3.3.9、退格、清除、清空 ............................................ - 27 -3.3.10、复制、粘贴 ...................................................... - 28 -3.3.11、两窗体的切换 .................................................. - 29 -第四章、总结............................ - 30 -4.1、对学习者知识的要求: ............................................... - 30 -4.2、学习程序设计基本要求: ........................................... - 30 -4.3、程序设计方法概述 ....................................................... - 31 -4.4、如何学好VB ................................................................. - 31 -4.5、不足之处 ....................................................................... - 32 -参考文献................................ - 32 -第一章、程序概述1.1、创作目的本程序的目标是建立一套可以计算数的平方,平方根,倒数,正弦,余弦,正切,指数函数,对数函数,角度、弧度、梯度相互转换和数字的进制转换的计算器系统,系统可以帮助我们更快的计算,更好的学习,更好的节省时间。

VB课程设加减乘除计算器设计报告

VB课程设加减乘除计算器设计报告

加减乘除计算器设计报告学院机械工程班级机设054 学号050389 姓名成绩一、设计思路1.要达到的目的主要是培养学生利用系统提供的基本控件进行创新性设计,理解Visual Basic语言中面向对象的程序设计。

培养学生综合利用Visual Basic语言进行程序设计的能力。

2.关键问题的解决先使用Command命令按钮,命令按钮控件数组,文本框等基本控件设计窗体,再根据下面方法编制程序:1.连续输入新操作数的若干个数字时,采用txtDisplay.Text=txtDisplay.Text&Format$(Index)txtDisplay.Text= txtDisplay.Text&cmdNumber(Index).CaptiontxtDisplay.Text =txtDisplay.Text&Index2.对于正整数运算单击操作数的输入,需要设置一个逻辑变量,使其逻辑值为ture,准备新操作数的输入。

3. 当一个对象(本题指文本框)具有焦点时,在键盘上按键操作出发下面事件过程Private Sub Form_KeyPress(KeyAscii As Integer),在该过程中调用txtDisplay_KeyPressKeyAscii根据KeyAscii对应的字符,调用相应过程。

二、模块之间的调用关系,或程序流程图三、部分程序关键源代码及注释。

Private Sub Command10_Click()‘清空Text1,使操作数空Text1.Text=””num=””End SubPrivate Sub Command11_Click()If Text1.Text<>””ThenText1.Text=-1*Text1.Text 定义负号num=Text1.TextEnd IfEnd SubPrivate Sub Command2_Click(Index As Integer)num1=numText1.Text=””num=””C=IndexEnd SubPrivate Sub Command3_Click()EndEnd SubPrivate Sub Command4_Click()Text1.Text=Sqr(Val(Text1.Text)) ‘提示:当输入负,那么错,根号不可为负End SubPrivate Sub Command5_Click()Text1.Text=Val(Text1.Text)*Val(Text1.Text)End Sub三、设计方案的完善及目前存在的问题1.设计方案要完善的地方①增加高级函数运算功能②精炼程序2. 目前存在的问题①无法运算高级函数问题②退格键清除完数字报错四、本次设计的收获及心得体会通过几天辛苦的设计培养了我利用系统提供的基本控件进行创新性设计,理解Visual Basic语言中面向对象的程序设计。

vb计算器实训 实验报告

vb计算器实训 实验报告

实训8 实验报告一、实验目的:制作一个计算器二、实验进程:完成了十六进制,八进制的代码书写。

添加了form3,完成了窗体转化。

三、实验原理与分析:1、控件属性设置:指导教师:郝谦2、界面图:Form1指导教师:郝谦Form2:Form3:指导教师:郝谦3、代码书写:Form1:Option ExplicitDim i As IntegerDim j As IntegerDim m As StringDim x1 As DoubleDim x2 As DoubleDim y As StringDim op As IntegerDim lastinput As StringPrivate Sub About_Click()Form1.HideForm3.ShowEnd SubPrivate Sub Command1_Click(Index As Integer) 输入数字0-9If Text1.Text = "0." Or lastinput = "=" ThenText1.Text = Indexlastinput = "number"指导教师:郝谦ElseIf Form1.Tag <> "" ThenIf Index = 10 ThenText1.Text = "0."ElseText1.Text = Command1(Index).CaptionEnd IfForm1.Tag = ""ElseText1.Text = Text1.Text & Command1(Index).CaptionEnd Iflastinput = "number"End IfEnd SubPrivate Sub Command10_Click()Text1.Text = Format(Text1.Text / 100, "0.####################")lastinput = "="End SubPrivate Sub Command11_Click()x2 = Val(Text1.Text)Select Case yCase "+"x1 = x1 + x2Case "-"x1 = x1 - x2Case "×"x1 = x1 * x2Case "÷"If x2 = 0 Thenm = MsgBox("除数不能为0", vbExclamation + vbOKOnly, "提示")Text1.SetFocusElsex1 = x1 / x2End IfEnd SelectText1.Text = Format(x1, "0.#####################")lastinput = "="Text1.SetFocusEnd SubPrivate Sub Command2_Click(Index As Integer)指导教师:郝谦x1 = Val(Text1.Text)op = IndexSelect Case opCase 0y = "+"Case 1y = "-"Case 2y = "×"Case 3y = "÷"End SelectText1.Text = ""Text1.SetFocusEnd SubPrivate Sub Command3_Click() '正负号Text1.Text = -Val(Text1.Text)End SubPrivate Sub Command4_Click() '小数点If InStr(Text1.Text, ".") ThenExit SubElseText1.Text = Text1.Text + "."End IfEnd SubPrivate Sub Command5_Click()Dim length As Integerlength = Len(Text1.Text) '数字长度If length = 1 ThenIf Text1.Text <> "0." Then '除非结果为0,否则都要退一位Text1.Text = "0."End IfElseText1.Text = Left(Text1.Text, length - 1)End IfEnd SubPrivate Sub Command6_Click() '清空当前数据Text1.Text = "0."End Sub指导教师:郝谦Private Sub Command7_Click() '清除所有数据x1 = 0x2 = 0Text1.Text = Format(0, "0.")End SubPrivate Sub Command8_Click()If Text1.Text < 0 Thenm = MsgBox("被开方数要大于零", vbExclamation + vbOKOnly, "提示") ElseText1.Text = Sqr(Val(Text1.Text))lastinput = "="End IfEnd SubPrivate Sub Command9_Click()If Text1.Text = 0 Thenm = MsgBox("除数不能为0", vbExclamation + vbOKOnly, "提示")Text1.SetFocusElseText1.Text = Format(1 / Val(Text1.Text), "0.####################")lastinput = "="End IfEnd SubPrivate Sub copy_Click() '复制Clipboard.ClearClipboard.SetText Text1.SelTextEnd SubPrivate Sub Form_Initialize() '利用控件数组产生0-9的控件For i = 1 To 9Load Command1(i)Select Case i Mod 3Case 0With Command1(i).Visible = True.Caption = i.Left = Command1(0).Left + 1440.Top = Command1(i - 3).Top + Command1(i).Height - 1095 End WithCase 1With Command1(i).Visible = True指导教师:郝谦.Caption = i.Left = Command1(0).Left.Top = Command1(i - 1).Top + Command1(i).Height - 1095 End WithCase 2With Command1(i).Visible = True.Caption = i.Left = Command1(0).Left + 720.Top = Command1(i - 2).Top + Command1(i).Height - 1095 End WithEnd SelectNext iFor j = 1 To 3 '‘生成运算符的控件按钮Load Command2(j)With Command2(j).Visible = True.Left = Command2(0).Left.Top = Command2(j - 1).Top + Command2(j).Height + 100 End WithCommand2(j).Caption = Choose(j, "-", "×", "÷")Next jEnd subPrivate Sub Form_Resize()Me.Width = 4230Me.Height = 4860End SubPrivate Sub kexue_Click() ’到科学型界面Form2.ShowForm1.HideEnd SubEnd SubPrivate Sub paste_Click() '粘贴Text1.SelText = Clipboard.GetTextEnd SubForm2:Option ExplicitDim i As Integer指导教师:郝谦Dim j As IntegerDim k As IntegerDim n As IntegerDim x1 As DoubleDim x2 As DoubleDim Y As StringDim op As IntegerDim lastinput As StringDim m As StringDim B As StringDim D As StringPrivate Sub About_Click()Form2.HideForm3.ShowEnd SubPrivate Sub Command1_Click(Index As Integer) '输入数字0-9If Text1.Text = "0." Or lastinput = "=" ThenText1.Text = Indexlastinput = "number"ElseIf Form1.Tag <> "" ThenIf Index = 10 ThenText1.Text = "0"ElseText1.Text = Command1(Index).CaptionEnd IfForm1.Tag = ""ElseText1.Text = Text1.Text & Command1(Index).CaptionEnd Iflastinput = "number"End IfEnd SubPrivate Sub Command10_Click()Text1.Text = Format(Text1.Text / 100, "0.####################")lastinput = "="End SubPrivate Sub Command11_Click()x2 = Val(Text1.Text)Select Case Y指导教师:郝谦Case "+"x1 = x1 + x2Case "-"x1 = x1 - x2Case "×"x1 = x1 * x2Case "÷"If x2 = 0 Thenm = MsgBox("除数不能为0", vbExclamation + vbOKOnly, "提示")Text1.SetFocusElsex1 = x1 / x2End IfEnd SelectText1.Text = Format(x1, "0.#####################")lastinput = "="Text1.SetFocusEnd SubPrivate Sub Command12_Click(Index As Integer)Select Case IndexCase 0Text1.Text = Format(Sin(Val(Text1.Text)), "0.####################") Case 1Text1.Text = Format(Cos(Val(Text1.Text)), "0.####################") Case 2Text1.Text = Format(Tan(Val(Text1.Text)), "0.####################") Case 3For i = 1 To Val(Text1.Text) - 1Text1.Text = Format(i * Text1.Text, "0.####################") Next iEnd Selectlastinput = "="End SubPrivate Sub Command13_Click(Index As Integer)If Text1.Text = "0." Or lastinput = "=" ThenText1.Text = Command13(Index).Caption指导教师:郝谦lastinput = "number"ElseIf Form1.Tag <> "" ThenIf Index = 10 ThenText1.Text = "0"ElseText1.Text = Command13(Index).CaptionEnd IfForm1.Tag = ""ElseText1.Text = Text1.Text & Command13(Index).CaptionEnd Iflastinput = "number"End IfSelect Case Command13(Index).CaptionCase "A": D = D & "10"Case "B": D = D & "11"Case "C": D = D & "12"Case "D": D = D & "13"Case "E": D = D & "14"Case "F": D = D & "15"End SelectEnd SubPrivate Sub Command2_Click(Index As Integer)x1 = Val(Text1.Text)op = IndexSelect Case opCase 0Y = "+"Case 1Y = "-"Case 2Y = "×"Case 3Y = "÷"End SelectText1.Text = ""Text1.SetFocusEnd SubPrivate Sub Command3_Click() '正负号指导教师:郝谦Text1.Text = -Val(Text1.Text)End SubPrivate Sub Command4_Click() '小数点If InStr(Text1.Text, ".") ThenExit SubElseText1.Text = Text1.Text + "."End IfEnd SubPrivate Sub Command5_Click()Dim length As Integerlength = Len(Text1.Text) '数字的长度If length = 1 ThenIf Text1.Text <> "0." Then '除非结果为零,否则都要减一位Text1.Text = "0."End IfElseText1.Text = Left(Text1.Text, length - 1)End IfEnd SubPrivate Sub Command6_Click() '清空当前数据Text1.Text = "0."End SubPrivate Sub Command7_Click() '清除所有数据x1 = 0x2 = 0Text1.Text = Format(0, "0.")End SubPrivate Sub Command8_Click()If Text1.Text < 0 Thenm = MsgBox("被开方的数要大于零", vbExclamation + vbOKOnly, "提示") ElseText1.Text = Sqr(Val(Text1.Text))lastinput = "="End IfEnd SubPrivate Sub Command9_Click()If Text1.Text = 0 Thenm = MsgBox("除数不能为0", vbExclamation + vbOKOnly, "提示")Text1.SetFocus指导教师:郝谦ElseText1.Text = Format(1 / Val(Text1.Text), "0.####################")lastinput = "="End IfEnd SubPrivate Sub copy_Click() '复制Clipboard.ClearClipboard.SetText Text1.SelTextEnd SubPrivate Sub Form_Initialize() '利用控件数组产生0-9的控件For i = 1 To 9Load Command1(i)Select Case i Mod 3Case 0With Command1(i).Visible = True.Caption = i.Left = Command1(0).Left + 1440.Top = Command1(i - 3).Top + Command1(i).Height - 1095 End WithCase 1With Command1(i).Visible = True.Caption = i.Left = Command1(0).Left.Top = Command1(i - 1).Top + Command1(i).Height - 1095 End WithCase 2With Command1(i).Visible = True.Caption = i.Left = Command1(0).Left + 720.Top = Command1(i - 2).Top + Command1(i).Height - 1095 End WithEnd SelectNext iFor j = 1 To 3 '生成运算符的控件按钮Load Command2(j)With Command2(j)指导教师:郝谦.Visible = True.Left = Command2(0).Left.Top = Command2(j - 1).Top + Command2(j).Height + 100 End WithCommand2(j).Caption = Choose(j, "-", "×", "÷")Next jFor k = 1 To 3Load Command12(k)With Command12(k).Visible = True.Left = Command12(0).Left.Top = Command12(k - 1).Top + Command12(k).Height + 100 End WithCommand12(k).Caption = Choose(k, "cos", "tan", "n!")Next kFor n = 1 To 5Load Command13(n)With Command13(n).Visible = True.Top = Command13(0).Top.Left = Command13(n - 1).Left + Command13(n).Width + 100 End WithCommand13(n).Caption = Choose(n, "B", "C", "D", "E", "F")Next nEnd SubPrivate Sub Form_Load() '初始化x1 = 0x2 = 0Text1.Text = "0."End SubPrivate Sub kexue_Click()Form2.ShowForm1.HideEnd SubPrivate Sub Form_Resize()Me.Height = 5820Me.Width = 5130End Sub指导教师:郝谦Private Sub Hexadecimal_Click()Text1.Text = Hex(Val(Text1.Text))End SubPrivate Sub Normal_Click()Form1.ShowForm2.HideEnd SubPrivate Sub Octonary_Click()Text1.Text = Oct(Val(Text1.Text))End SubPrivate Sub Option1_Click()Text1.Text = Hex(Val(Text1.Text))For n = 0 To 5Command13(n).Enabled = TrueNext nFor j = 2 To 9Command1(j).Enabled = TrueNext jCommand1(8).Enabled = TrueCommand1(9).Enabled = Truelastinput = "="End SubPrivate Sub Option2_Click()Text1.Text = Oct(Val(Text1.Text))Command1(8).Enabled = FalseCommand1(9).Enabled = FalseFor n = 0 To 5Command13(n).Enabled = FalseNext nFor j = 2 To 9Command1(j).Enabled = TrueNext jlastinput = "="指导教师:郝谦End SubPrivate Sub Option3_Click()For n = 0 To 5Command13(n).Enabled = FalseNext nCommand1(8).Enabled = TrueCommand1(9).Enabled = TrueFor j = 2 To 9Command1(j).Enabled = TrueNext jFor i = 1 To Len(Text1.Text)Select Case Mid(Text1.Text, i, 1)Case "0": D = D & "0"Case "1": D = D & "1"Case "2": D = D & "2"Case "3": D = D & "3"Case "4": D = D & "4"Case "5": D = D & "5"Case "6": D = D & "6"Case "7": D = D & "7"Case "8": D = D & "8"Case "9": D = D & "9"Case "A": D = D & "10"Case "B": D = D & "11"Case "C": D = D & "12"Case "D": D = D & "13"Case "E": D = D & "14"Case "F": D = D & "15"End SelectNext iText1.Text = Dlastinput = "="End SubPrivate Sub Option4_Click()For n = 0 To 5Command13(n).Enabled = FalseNext nFor j = 2 To 9Command1(j).Enabled = False指导教师:郝谦Next jFor i = 1 To Len(Text1.Text)Select Case Mid(Text1.Text, i, 1)Case "0": B = B & "0000"Case "1": B = B & "0001"Case "2": B = B & "0010"Case "3": B = B & "0011"Case "4": B = B & "0100"Case "5": B = B & "0101"Case "6": B = B & "0110"Case "7": B = B & "0111"Case "8": B = B & "1000"Case "9": B = B & "1001"Case "A": B = B & "1010"Case "B": B = B & "1011"Case "C": B = B & "1100"Case "D": B = B & "1101"Case "E": B = B & "1110"Case "F": B = B & "1111"End SelectNext iText1.Text = Blastinput = "="End SubPrivate Sub paste_Click() '粘贴Text1.SelText = Clipboard.GetTextEnd SubForm3:Private Sub Command1_Click()Form3.HideForm1.ShowEnd SubPrivate Sub Form_Resize()Me.Width = 6360Me.Height = 6645End Sub四、实验心得:此次实训完成了所有的计算器修改。

VB程序设计报告 计算器和三角函数

VB程序设计报告  计算器和三角函数

软件技术实验报告班级学号姓名第三次实验:计算器和三角函数实验内容:1 设计一个可以进行四则运算的简单计算器。

该计算器除了可以进行加、减、乘、除、求模(取余)等简单的四则运算外,还要求可以进行四则混合连算,并具有符合计算器日常使用习惯的容错纠错功能。

具体步骤如下:①在界面上建立按钮控件数组:首先在窗体中置入一个命令按钮控件后,将其激活并点击右键通过“复制”、“粘贴”的方法依次产生19个一样的命令按钮控件,其中在创建第一个“粘贴”控件时VB会询问“是否要创建控件数组?”回答“是”即可开始依次创建该控件数组。

②按钮属性的设置:将各按钮的caption属性分别设置为0,1,2……9,+、-、×,/,Mod,=,cls,Exit,注意在设置这些属性时其值与按钮控件的Index属性的对应性。

③其它控件的属性设置:文本框作为显示操作数和结果的控件,应遵循一般计算器的显示习惯,将其Alignment即对齐属性设置为“Right”,此外,将各控件相关的字体、字号等设置为统一风格。

④在程序的通用区定义四个窗体层变量:num1、num2、sum、act、前三个为双精度、act为整型变量。

⑤编写进行四则运算所需的程序作为命令按钮的单击事件过程。

2 设计一个三角函数运用picture,combol,text,command控件设计一个三角函数,使得在一个窗体中可以显示多种函数图象创新亮点:(如果没有可以空缺)通过相关属性的设置,不断改进软件的功能和外观,使其更加接近现实中使用的软件。

在“按钮、窗体”属性中设置picture为一张图片为背景完成情况和存在问题:基本完成了实验的要求,做出符合实验的应用实例。

但是在使用Select语句时,例如“ Case Index case n”不清楚具体n的含义,对基本语句掌握不好,导致最后运行时出现运行加减乘除时,老是出现错误。

最后通过问小组成员,寻求帮助后,解释select语句的使用方法及n的含义,将杂乱无序的n 的值按对应的属性序号修改后,运行正常。

vb计算器 实验报告

vb计算器 实验报告

vb计算器实验报告VB计算器实验报告引言:计算器是人们日常生活中常用的工具之一,无论是进行简单的数学运算还是复杂的科学计算,计算器都能提供帮助。

本实验旨在使用VB(Visual Basic)编程语言设计和实现一个功能完善的计算器,通过该实验,我们可以深入了解计算器的原理和实现方法,并掌握VB编程的基本技巧。

一、实验目的本实验的主要目的是设计和实现一个VB计算器,具体包括以下几个方面:1. 学习VB编程语言的基本语法和数据类型;2. 掌握VB窗体的设计和布局;3. 实现基本的计算功能,包括加减乘除、取余、开方等;4. 实现科学计算功能,包括三角函数、指数函数、对数函数等;5. 实现计算器的界面美化和用户友好性。

二、实验原理1. VB编程语言VB是一种事件驱动的编程语言,它提供了丰富的控件和库函数,方便开发者进行图形界面的设计和实现。

在本实验中,我们将使用VB编程语言来实现计算器的功能。

2. VB窗体设计VB窗体是计算器的主界面,通过在窗体上添加各种控件,如按钮、文本框等,来实现计算器的各种功能。

通过设置控件的属性和事件,可以实现用户与计算器的交互。

3. 计算器的基本功能实现计算器的基本功能包括加减乘除、取余、开方等,这些功能可以通过VB编程语言中提供的数学函数和运算符来实现。

通过捕捉用户输入的数据和操作符,计算器可以进行相应的计算并将结果显示在屏幕上。

4. 科学计算功能的实现科学计算功能是计算器的扩展功能,包括三角函数、指数函数、对数函数等。

这些函数可以通过VB编程语言中提供的数学库函数来实现,通过捕捉用户的选择和输入,计算器可以根据用户的需求进行相应的科学计算。

5. 界面美化和用户友好性为了提高计算器的用户体验,我们需要对计算器的界面进行美化和优化。

通过设置控件的样式、颜色和布局,可以使计算器界面更加美观和易用。

三、实验步骤1. 创建VB工程,并添加一个窗体;2. 在窗体上添加各种控件,如按钮、文本框等,用于实现计算器的各种功能;3. 设置控件的属性和事件,实现计算器的基本功能,包括加减乘除、取余、开方等;4. 添加科学计算功能,如三角函数、指数函数、对数函数等,实现科学计算器的功能;5. 美化计算器界面,通过设置控件的样式、颜色和布局,提高用户体验;6. 进行测试和调试,确保计算器的功能正常。

vb简易计算器实验研究报告

vb简易计算器实验研究报告
Dim x As Integer
x = Text1.Text
Text3.Text = Atn(x)
End Sub
Private Sub Command13_Click()
Dim x As Integer
Dim y As Integer
x = Text1.Text
y = Text2.Text
Text3.Text = x ^ y
x = Text1.Text
Text3.Text = Sin(x)
End Sub
源代码截图:
四、运行结果演示:
加法演示:
减法演示:
乘法演示:
除法演示:
能够整除:
不能够整除:
除数为零:
版权申明
本文部分内容,包括文字、图片、以及设计等在网上搜集整理.版权为个人所有
This article includes some parts, including text, pictures, and design. Copyright is personal ownership.RTCrp。
考虑到计算器地操作简便性,所以加入了复位和退出按钮.
三、源程序文件:
Private Sub Command1_Click()
Dim x As Integer
Dim y As Integer
x = Text1.Text
y = Text2.Text
Text3.Text = x + y
End Sub
Private Sub Command10_Click()
Private Sub Command7_Click()
Text1.Text = ""
Text2.Text = ""
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

一.设计思路 (1)二.关键问题的解决 (1)三.概要设计说明 (1)四.源代码 (1)五.心得体会 (8)一.设计思路1.要达到的目的要达到的目的主要是培养学生利用系统提供的基本控件进行创新性设计,理解Visual Basic 语言中面向对象的程序设计。

培养学生综合利用Visual Basic 语言进行程序设计的能力。

二.关键问题的解决先使用Command 命令按钮,命令按钮控件数组,文本框等基本控件设计窗体,再根据下面方法编制程序:三.概要设计说明本组设计的科学计算器具有科学型和标准型两种类型, 适合不同需要.科学型中包含弧度与角度的计算,同时兼具2,8,10,16 进制的运算.四.源代码Dim num1 As DoubleDim num2 As DoubleDim num3 As DoubleDim flag As DoubleDim operator As IntegerDim q As IntegerPrivate Sub Command1_Click(Index As Integer)Select Case IndexCase Is <= 9If Index = 0 And Val(Text1.Text) = 0 ThenText1.Text = 0ElseIf Val(Text1.Text) = 0 ThenText1.Text = IndexElseText1.Text = Text1.Text & IndexEnd IfEnd IfCase Is >= 20If (Val(Text1.Text) = 0) ThenText1.Text = Command1(Index).CaptionElseText1.Text = Text1.Text + Command1(Index).Caption End IfCase 10Text1.Text = Text1.Text + "."Case 11Text1.Text = -Val(Text1.Text)Case 12If Not flag Thennum1 = Val(Text1.Text)Text1.Text = 0flag = Trueoperator = 1End IfCase 13If Not flag Thennum1 = Val(Text1.Text)Text1.Text = 0flag = Trueoperator = 2End IfCase 14If Not flag Thennum1 = Val(Text1.Text)Text1.Text = 0flag = Trueoperator = 3End IfCase 15If Not flag Thennum1 = Val(Text1.Text)Text1.Text = 0flag = Trueoperator = 4End IfCase 16If Not flag Thennum1 = Val(Text1.Text)Text1.Text = 0flag = Trueoperator = 5End IfCase 17num1 = Val(Text1.Text)Text1.Text = Sqr(num1)Case 19Text1.Text = 0Case 18If flag ThenIf q = 2 Thennum1 = Val("&O" & Val(num1))num2 = Val("&O" & Val(Text1.Text)) Select Case operatorCase 1num3 = num1 + num2Case 2num3 = num1 - num2Case 3num3 = num1 * num2Case 4num3 = num1 / num2Case 5num3 = num1 Mod num2End Selectnum3 = Oct(Val(num3))Text1.Text = num3flag = FalseElseIf q = 4 Thennum1 = Val("&H" & num1)num2 = Val("&H" & Text1.Text) Select Case operatorCase 1num3 = num1 + num2Case 2num3 = num1 - num2Case 3num3 = num1 * num2Case 4num3 = num1 / num2Case 5num3 = num1 Mod num2 End SelectText1.Text = Hex(num3)flag = FalseElseIf q = 1 Thennum2 = Val(Text1.Text) Select Case operatorCase 1num3 = num1 + num2Case 2num3 = num1 - num2Case 3num3 = num1 * num2Case 4num3 = num1 / num2Case 5num3 = num1 Mod num2 End SelectText1.Text = num3flag = FalseElseIf q = 3 ThenDim a As StringDim b As IntegerDim i As IntegerDim t As Integera = Val(num1)b = 0For i = 1 To Len(a)t = Asc(Mid(a, i, 1)) - 48b = b * 2 + tNext inum1 = ba = Val(Text1.Text)b = 0For i = 1 To Len(a)t = Asc(Mid(a, i, 1)) - 48b = b * 2 + tNext inum2 = bSelect Case operatorCase 1num3 = num1 + num2Case 2num3 = num1 - num2Case 3num3 = num1 * num2Case 4num3 = num1 / num2Case 5num3 = num1 Mod num2End SelectDim j As IntegerDim w As IntegerDim k As Stringw = Val(num3)Doj = w Mod 2w = w \ 2k = j & kLoop While w > 0Text1.Text = kflag = FalseEnd IfEnd IfEnd SelectEnd SubPrivate Sub Form_Load()Text1.Text = 0Option3.Value = Trueflag = Falsenum1 = 0num2 = 0num3 = 0End SubPrivate Sub Option1_Click()Dim i As IntegerDim a As IntegerDim b As StringIf q = 2 Thena = Val("&O" & Val(Text1.Text))Doi = a Mod 2a = a \ 2b = i & bLoop While a > 0Text1.Text = bElseIf q = 1 Thena = Val(Text1.Text)Doi = a Mod 2a = a \ 2b = i & bLoop While a > 0Text1.Text = bElseIf q = 4 Thena = Val("&H" & Text1.Text)Doi = a Mod 2a = a \ 2b = i & bLoop While a > 0Text1.Text = bEnd IfFor i = 2 To 9Command1(i).Enabled = False Next iFor i = 20 To 25Command1(i).Enabled = False Next iq = 3End SubPrivate Sub Option2_Click()If q = 3 ThenDim a As StringDim b As IntegerDim i As IntegerDim t As Integera = Val(Text1.Text)b = 0For i = 1 To Len(a)t = Asc(Mid(a, i, 1)) - 48b = b * 2 + tNext iText1.Text = Oct(b)ElseIf q = 1 ThenText1.Text = Oct(Val(Text1.Text))ElseIf q = 4 ThenText1.Text = Oct(Val("&H" & Text1.Text)) End IfFor i = 2 To 7Command1(i).Enabled = TrueNext iCommand1(8).Enabled = FalseCommand1(9).Enabled = FalseFor i = 20 To 25Command1(i).Enabled = FalseNext iq = 2End SubPrivate Sub Option3_Click()If q = 2 ThenText1.Text = Val("&O" & Val(Text1.Text))ElseIf q = 3 ThenDim a As StringDim b As IntegerDim i As IntegerDim t As Integera = Val(Text1.Text)b = 0For i = 1 To Len(a)t = Asc(Mid(a, i, 1)) - 48b = b * 2 + tNext iText1.Text = bElseIf q = 4 ThenText1.Text = Val("&H" & Text1.Text)End IfFor i = 2 To 9Command1(i).Enabled = TrueNext iFor i = 20 To 25Command1(i).Enabled = FalseNext iq = 1End SubPrivate Sub Option4_Click()Dim a As StringDim b As IntegerDim i As IntegerDim t As IntegerIf q = 1 ThenText1.Text = Hex(Val(Text1.Text))ElseIf q = 2 Thena = Val("&0" & Val(Text1.Text))Text1.Text = Hex(a)ElseIf q = 3 Thena = Val(Text1.Text)b = 0For i = 1 To Len(a)t = Asc(Mid(a, i, 1)) - 48b = b * 2 + tNext iText1.Text = Hex(b)End IfFor i = 2 To 25Command1(i).Enabled = TrueNext iq = 4End Sub五.心得体会. 经过一个星期的上机实践学习, 使我对VB 有了更进一步的认识和了解,要想学好它要重在实践,要通过不断的上机操作才能更好地学习它,通过实践,我也发现我的好多不足之处,首先是自己在指法上还不行,经常按错字母,通过学习也有所改进;再有对VB 的一些标准库函数不太了解,还有对函数调用的正确使用不够熟悉,还有对VB 中经常出现的错误也不了解,同时在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固, 通过实践,使我在这几个方面的认识有所提高. 通过实践的学习,我认到学好计算机要重视实践操作,不仅仅是学习VB,还是其它的语言,以及其它的计算机方面的知识都要重在实践,所以后在学习过程中,我会更加注视实践操作,使自己便好地学好计算机。

相关文档
最新文档