Vb 制作计算器程序设计.doc
用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编写简易计算器(附图)
For personal use only in study and research;not for commercial use用VB6.0编写简易计算器效果图:废话不多说,直接上步骤一、创建控件组1、创建控件组的方法??首先创建一个命令按钮,调整其大小(觉得合适就行),名称为Command1,Caption 属性为数字 0 ;然后进行“复制”和“粘贴”,当选择“粘贴”时,出现对话框提示已有一个同名控件,询问是否创建控件组,选择“是”后,即创建了一个名为“Command”的控件组。
这时,第一个按钮的Index属性值默认为“0”,第二个的Index属性值自动设为“1”,并且大小与第一个按钮相同,只需修改其 Caption 属性为数字“1”并将其拖至合适位置即可。
此后继续使用“粘贴”的方法建立其他控件组中其余按钮,共20个按钮,每建立一个,就将它拖到合适处,并修改相应的Caption属性值。
2、各控件组其属性设置如下:二、编写代码Dim s1 As Single, s2 As Single, ysf As String'定义两个单精度数变量用与存放参与运算的数,一个字符型存放运算符Private Sub Command1_Click(Index As Integer)Text1.Text = Text1.Text & Command1(Index).Caption'将command1的单击事件与文本框显示的内容连接End SubPrivate Sub Command2_Click()Text1.Text = Text1.Text + "."If (InStr(Text1.Text, ".") = 1) Then'第一位不能为小数Text1.Text = ""End IfIf InStr(Text1.Text, ".") < Len(Text1.Text) Then '防止出现两个小数点Text1.Text = Left(Text1.Text, Len(Text1.Text) - 1)End IfEnd SubPrivate Sub Command3_Click()s2 = Val(Text1.Text) '开始加减乘除运算Select Case ysfCase "+"Text1.Text = s1 + s2Case "-"Text1.Text = s1 - s2Case "*"Text1.Text = s1 * s2Case "/"If s2 = 0 ThenMsgBox "分母不能为零!"Text1.Text = ""ElseText1.Text = s1 / s2End IfEnd SelectText1 = IIf(Left(Text1.Text, 1) = ".", 0 & Text1.Text, Text1.Text) '这个很关键,如果没有这个的话,得出小于1的小数前面没有0End SubPrivate Sub Command4_Click()If Text1.Text = "" Then '文本为空就结束Exit SubEnd IfText1.Text = Left(Text1.Text, Len(Text1.Text) - 1) '文本退一格End SubPrivate Sub Command5_Click()Text1.Text = "" '清除当前框内文本End SubPrivate Sub Command6_Click(Index As Integer)s1 = Val(Text1.Text) '将s1隐藏起来ysf = Command6(Index).CaptionText1.Text = ""End SubPrivate Sub Command7_Click()If Left(Text1.Text, 1) <> "-" Then '判断作为负数Text1.Text = "-" & Text1.TextElseText1.Text = Right(Text1.Text, Len(Text1.Text) - 1)End IfEnd SubPrivate Sub Command8_Click()Text1.Text = Text1.Text * Text1.Text '平方End Sub各位朋友,可以将红色代码复制到相应位置,不清楚的可以全选复制,但是一定要按照我的步骤和给的名称来哦!还可以再添加按钮Private Sub Command9_Click() '这是退出代码EndEnd Sub三、测试,成功的话给个好评哦!谢谢各位下载与支持!这个可以编写作为作业哦!仅供个人参考仅供个人用于学习、研究;不得用于商业用途。
Vb 制作计算器程序设计.doc
Vb 程序设计课程设计报告《科学计算器的设计》专业:工商管理类班级:1107班学号:110808703姓名:魏启岚指导教师:阮冰设计日期:2012年6月14日第一章:课程设计概述第二章:总体设计第三章:详细设计第四章:调试分析过程描述第五章:综合设计体会参考文献第一章:课程设计概述1.1、课程设计名称一、课程设计名称《科学计算器的设计》1.2、任务要求一、随着电子技术的发展,计算机的功能越来越强大,精度越来越高,性能越来越好,可以实现复杂的科学计算,Windows系统也自带了一个功能强大的计算器。
本次课设要设计一个科学计算器,除了基本的四则运算之外,还有三角与反三角、对数与反对数、乘方与幂运算等。
科学计算器除了具有普通计算器的标准功能之外,还具有很多其他数据计算功能。
本次课设设计的科学计算器包括以下功能:1.具有小数点后10位以上的精度。
2.可以直接输出随机数、圆周率、自然对数的底数和重力加速度等常用常数。
3.可以输入0~9、00、小数点等数字或数学符号,并能对数字取反。
4.能够计算加、减、乘、除四则运算。
5.可以计算倒数、平方、立方、开方和任意乘方或幂指运算,以及阶乘运算。
6.能够计算以10为底的对数和自然对数,以及自然对数为底的幂运算。
7.具有三角与反三角函数的计算功能,并能在角度、弧度和梯度之间进行换算。
8.可以将数据记录到内存中,并能将输入的数据和内存中的数据进行四则运算。
9.能够实现数据的统计计算,包括和、平均值和方差。
10.可以对计算或输入的结果进行复制,也能通过粘贴方式向计算器输入数字。
1.3、开发环境一、科学计算器主要在visual basic6.0中完成。
Visual Basic是一种由微软公司开发的包含协助开发环境的事件驱动编程语言。
从任何标准来说,VB都是世界上使用人数最多的语言——不仅是盛赞VB的开发者还是抱怨VB 的开发者的数量。
它源自于BASIC编程语言。
VB拥有图形用户界面(GUI)和快速应用程序开发(RAD)系统,可以轻易的使用DAO、RDO、ADO连接数据库,或者轻松的创建ActiveX控件。
VB课程设计-计算器程序设计
课程设计报告VB课程设计课程设计题目:计算器程序设计姓名:学号:*专业: 电子信息工程班级: :指导教师:摘要VisualBasic 6.0 是一款可视化的,面向对象和采用事件驱动方式的结构化高级程序设计语言,可用于开发windows 环境下的种类应用程序。
它简单易学,效率高,且功能强大,可以与Windows专业开发工具相媲美。
在VisualBasic环境下,利用事出有因件驱动的编程机制,新颖易用的可视化工具,使用Windows内部的广泛应用程序接口(API)函数,运用动态链接库(DLL),对象的链接与嵌入(OLE),开放式数据连接(ODBC)等技术,可以高效,可以快速地开发Windows环境不功能强大,图形界面丰富的程序。
为了适应信息化时代的需求,各高校对大多数专业都开设了一定的计算机语言课程,有的讲授VisualBasic语言。
VisualBasic以其语法简单,可视化设计,功能强大,为许多学校计算机语言课程的首选语言。
目前国内各出版了大量的VisualBasic语言教程,它们都具有同样的特点:介绍语言的语法等基本知识,再辅助一些简单的示例。
学生通过学习,可能能够考一个不错的成绩,但所掌握的仍然是一些支离破碎的知识,不能将所有的知识融会贯通,遇到具体的程序设计,还是无从下手。
这次我要做的是计算器,通过这样程序设计,我们可以学到好多关于VB语言的使方法,熟悉VisualBasic 6.0的运行环境,快速掌握VB语言!小小的计算器是我们学VB初级语言的最好课程。
目录一功能描述 (4)1.功能 (4)2. 实验目的 (4)二概要设计 (6)1.界面设计 (6)2.代码编辑 (8)三详细设计 (14)四心得体会 (16)五参考文献 (18)一功能描述1.功能可以简单计算加减乘除四则运算,可以简单计算三角函数运算的简易计算器。
2.实验目的这次我要做的是计算器,通过这样程序设计,我们可以学到好多关于VB语言的使方法,熟悉VisualBasic 6.0的运行环境,快速掌握VB语言!小小的计算器是我们学VB初级语言的最好课程。
VB写简易计算器附图
用V B6.0编写简易计算器效果图:废话不多说,直接上步骤一、创建控件组1、创建控件组的方法??首先创建一个命令按钮,调整其大小(觉得合适就行),名称为Command1,Caption属性为数字 0 ;然后进行“复制”和“粘贴”,当选择“粘贴”时,出现对话框提示已有一个同名控件,询问是否创建控件组,选择“是”后,即创建了一个名为“Command”的控件组。
这时,第一个按钮的Index属性值默认为“0”,第二个的Index属性值自动设为“1”,并且大小与第一个按钮相同,只需修改其 Caption 属性为数字“1”并将其拖至合适位置即可。
此后继续使用“粘贴”的方法建立其他控件组中其余按钮,共20个按钮,每建立一个,就将它拖到合适处,并修改相应的Caption属性值。
二、编写代码Dim s1 As Single, s2 As Single, ysf As String'定义两个单精度数变量用与存放参与运算的数,一个字符型存放运算符Private Sub Command1_Click(Index As Integer)Text1.Text = Text1.Text & Command1(Index).Caption'将command1的单击事件与文本框显示的内容连接End SubPrivate Sub Command2_Click()Text1.Text = Text1.Text + "."If (InStr(Text1.Text, ".") = 1) Then'第一位不能为小数Text1.Text = ""End IfIf InStr(Text1.Text, ".") < Len(Text1.Text) Then '防止出现两个小数点Text1.Text = Left(Text1.Text, Len(Text1.Text) - 1)End IfEnd SubPrivate Sub Command3_Click()s2 = Val(Text1.Text) '开始加减乘除运算Select Case ysfCase "+"Text1.Text = s1 + s2Case "-"Text1.Text = s1 - s2Case "*"Text1.Text = s1 * s2Case "/"If s2 = 0 ThenMsgBox "分母不能为零!"Text1.Text = ""ElseText1.Text = s1 / s2End IfEnd SelectText1 = IIf(Left(Text1.Text, 1) = ".", 0 & Text1.Text, Text1.Text) '这个很关键,如果没有这个的话,得出小于1的小数前面没有0End SubPrivate Sub Command4_Click()If Text1.Text = "" Then '文本为空就结束Exit SubEnd IfText1.Text = Left(Text1.Text, Len(Text1.Text) - 1) '文本退一格End SubPrivate Sub Command5_Click()Text1.Text = "" '清除当前框内文本End SubPrivate Sub Command6_Click(Index As Integer)s1 = Val(Text1.Text) '将s1隐藏起来ysf = Command6(Index).CaptionText1.Text = ""End SubPrivate Sub Command7_Click()If Left(Text1.Text, 1) <> "-" Then '判断作为负数Text1.Text = "-" & Text1.TextElseText1.Text = Right(Text1.Text, Len(Text1.Text) - 1)End IfEnd SubPrivate Sub Command8_Click()Text1.Text = Text1.Text * Text1.Text '平方End Sub各位朋友,可以将红色代码复制到相应位置,不清楚的可以全选复制,但是一定要按照我的步骤和给的名称来哦!还可以再添加按钮Private Sub Command9_Click() '这是退出代码EndEnd Sub三、测试,成功的话给个好评哦!谢谢各位下载与支持!这个可以编写作为作业哦!。
使用VB制作计算器程序
多功能计算器界面如下图所示。
实现代码如下:Public b As SinglePublic flag, first As IntegerDim narray(100) As Single '存放文本框1中输入的多个数据Dim i As Integer '存放输入数组的实际长度'单次运算Dim a As Single '存放第一个操作数Dim key As String '存放运算符'以上在模块中定义变量Private Sub cmd0_Click() '单击数字键0Text1.Text = Text1.Text + cmd0.Caption '可用"&"代替"+"End SubPrivate Sub cmd1_Click() '单击数字键1Text1.Text = Text1.Text + cmd1.CaptionEnd SubPrivate Sub cmd2_Click() '单击数字键2Text1.Text = Text1.Text + cmd2.CaptionEnd SubPrivate Sub cmd3_Click() '单击数字键3Text1.Text = Text1.Text + cmd3.CaptionEnd SubPrivate Sub cmd4_Click() '单击数字键4Text1.Text = Text1.Text + cmd4.CaptionEnd SubPrivate Sub cmd5_Click() '单击数字键5Text1.Text = Text1.Text + cmd5.CaptionEnd SubPrivate Sub cmd6_Click() '单击数字键6Text1.Text = Text1.Text + cmd6.CaptionEnd SubPrivate Sub cmd7_Click() '单击数字键7Text1.Text = Text1.Text + cmd7.CaptionEnd SubPrivate Sub cmd8_Click() '单击数字键8Text1.Text = Text1.Text + cmd8.CaptionEnd SubPrivate Sub cmd9_Click() '单击数字键9Text1.Text = Text1.Text + cmd9.CaptionEnd SubPrivate Sub cmddot_Click() '连接小数点Text1.Text = Text1.Text + cmddot.CaptionIf InStr(Text1.Text, ".") < Len(Text1.Text) Then'防止出现多个小数点Text1.Text = Left(Text1.Text, Len(Text1.Text) - 1)End IfEnd SubPrivate Sub cmdcls_Click() '单击CE键Text1.Text = ""End SubPrivate Sub add_Click() '单击“+”,保存第一个操作数和运算符 a = Val(Text1.Text)key = add.CaptionText1.Text = " "End SubPrivate Sub subs_Click() '单击“-”a = Val(Text1.Text)key = subs.CaptionText1.Text = " "End SubPrivate Sub mul_Click() '单击“*”a = Val(Text1.Text)key = mul.CaptionText1.Text = " "End SubPrivate Sub div_Click() '单击“/”a = Val(Text1.Text)key = div.CaptionText1.Text = " "End SubPrivate Sub modi_Click() '单击“Mod”a = Val(Text1.Text)key = more.CaptionText1.Text = " "End SubPrivate Sub mulpi_Click() '单击“^”a = Val(Text1.Text)key = mulpi.CaptionText1.Text = " "End SubPrivate Sub sign_Click() '单击“+/-”,改变操作数符号Text1.Text = -Val(Text1.Text)End SubPrivate Sub equal_Click() '单击“=”Select Case key '判断运算符Case "+": Text1.Text = a + Val(Text1.Text)Case "-": Text1.Text = a - Val(Text1.Text)Case "*": Text1.Text = a * Val(Text1.Text)Case "/": Text1.Text = a / Val(Text1.Text)Case "\": Text1.Text = a \ Val(Text1.Text)Case "mod": Text1.Text = a Mod Val(Text1.Text)Case "^": Text1.Text = a ^ Val(Text1.Text)Case "<": Text1.Text = a < Val(Text1.Text)Case ">": Text1.Text = a > Val(Text1.Text)Case "<>": Text1.Text = a <> Val(Text1.Text)Case "Like": b = "*" & Trim(Text1.Text) & "*"If (Str(a) Like b) Then Text1.Text = True Else Text1.Text = False Case "Not": Text1.Text = Not aCase "And": Text1.Text = a And Val(Text1.Text)Case "Or": Text1.Text = a Or Val(Text1.Text)Case "Xor": Text1.Text = a Xor Val(Text1.Text)End SelectEnd SubPrivate Sub less_Click() '单击“<”a = Val(Text1.Text)key = less.CaptionText1.Text = " "End SubPrivate Sub more_Click() '单击“>”a = Val(Text1.Text)key = more.CaptionText1.Text = " "End SubPrivate Sub notequal_Click() '单击“<>”a = Val(Text1.Text)key = notequal.CaptionText1.Text = " "End SubPrivate Sub likes_Click() '单击“Likes”a = Val(Text1.Text)key = likes.CaptionText1.Text = " "End SubPrivate Sub cmdnot_Click() '单击“Not”a = Val(Text1.Text)key = cmdnot.CaptionText1.Text = " "End SubPrivate Sub cmdand_Click() '单击“And”a = Val(Text1.Text)key = cmdand.CaptionText1.Text = " "End SubPrivate Sub cmdor_Click() '单击“Or”a = Val(Text1.Text)key = cmdor.CaptionText1.Text = " "End SubPrivate Sub cmdxor_Click() '单击“Xor”a = Val(Text1.Text)key = cmdxor.CaptionText1.Text = " "End SubPrivate Sub Command3_Click(Index As Integer) '函数区中功能实现,Command3'为函数区控件数组名Select Case IndexCase 0Text2.Text = Sin(Val(Trim$(Text1.Text))) '调用内部函数sinCase 1Text2.Text = Cos(Val(Trim$(Text1.Text)))Case 2Text2.Text = Abs(Val(Trim$(Text1.Text)))Case 3Text2.Text = Sqr(Val(Trim$(Text1.Text)))Case 4Text2.Text = Hex$(Val(Trim$(Text1.Text)))Case 5Text2.Text = Oct$(Val(Trim$(Text1.Text)))Case 6Text2.Text = Asc(Trim$(Text1.Text))Case 7Text2.Text = Rnd(Val(Trim$(Text1.Text)))Case 8Text2.Text = DateCase 9Text2.Text = Len(Trim$(Text1.Text))Case 10Text2.Text = sum1() '调用自定义函数求和Case 11Text2.Text = ave() '调用自定义函数求平均值Case 12 '12为max命令按钮的控件数组Index值Dim m As SingleCall max2(m) '调用自定义子过程求最大值Text2.Text = m 'm为调用过程得到的最大值'Text2.Text = max() '调用自定义函数过程求最大值Case 13Text2.Text = min() '调用自定义函数过程求最小值Case 14Text2.Text = sort() '调用自定义函数过程排序Case 15'Text2.Text = fac() '调用自定义函数过程求阶乘Text2.Text = fac1(Val(Text1.Text))'调用自定义函数过程求阶乘,用递归实现End SelectEnd SubPrivate Function sum1()Dim k As IntegerDim s As Singles = 0For k = 1 To i - 1s = s + narray(k)Next ksum1 = sEnd FunctionPrivate Function max()Dim k As IntegerDim s As Single, m As Singlem = narray(1)For k = 2 To iIf m < narray(k) Then m = narray(k) Next kmax = mEnd FunctionPrivate Function ave() '求平均值Dim k As IntegerDim s As Single, m As SingleFor k = 1 To is = s + narray(k)Next kave = s / (i - 1)End FunctionPrivate Function min() '求最小值函数Dim k As IntegerDim s As Single, m As Singlem = narray(1)For k = 2 To i - 1If m > narray(k) Then m = narray(k) Next kmin = mEnd FunctionPrivate Function sort() '排序函数Dim k As Integer, j As IntegerDim s As String, m As SingleFor k = 1 To i - 2For j = 1 To i - 1If narray(j) < narray(j + 1) Thenm = narray(j)narray(j) = narray(j + 1)narray(j + 1) = mEnd IfNext jNext kFor k = 1 To i - 1s = s+" "+Str$(narray(k)) '将排序结果存放到字符串s,以便带回到主调程序中Next ksort = sEnd FunctionPrivate Function fac() '求阶乘函数Dim k As Integer, j As IntegerDim m As SingleIf InStr(Trim$(Text1.Text), " ") > 1 Then'如果在文本输入框中输入了多个数据,则计算一个'数据的阶乘j = first '数组元素narray()中第一个元素Else: j = Val(Trim$(Text1.Text))End Ifm = 1For k = 1 To jm = m * kNext kfac = mEnd FunctionPrivate Sub Text1_KeyPress(Keyasc As Integer)'在文本框1中输入多个数据,以空格分隔,按回'车键结束,识别数据存放到数组narray( )中Dim c As StringDim n As Integer, k As Integeri = 1k = 1If Keyasc = 13 Then '按下回车键For n = 0 To Len(Text1.Text) - 1c = Mid$(Text1.Text, n + 1, 1)If c = " " Thennarray(i) = Val(Mid$(Text1.Text, k, n - k + 1))'识别数据存放在数组narray(i)中k = k + Len(Str$(narray(i))) '下一个数据位置起点i = i + 1 '每识别一个数据数组实际长度加1End IfNext nEnd Iffirst = narray(1)End SubPrivate Sub max2(m As Single) '求数组元素的最大值Dim k As Integerm = narray(1)For k = 2 To iIf m < narray(k) Then m = narray(k)Next kEnd SubPrivate Function fac1(n As Long) '递归求阶乘If n > 1 Thenfac1 = fac1(n - 1) * nElsef ac1 = 1End IfEnd Function。
VB程序设计——加减乘除运算器
VB程序设计——加减乘除运算器在VB程序设计中,我们可以创建一个简单的加减乘除运算器。
运算器的功能是接收用户输入的两个数和运算符,并根据运算符进行相应的计算,最后将结果输出给用户。
接下来,我们需要编写程序来实现计算功能。
在窗体代码中,我们可以编写一个函数来处理加减乘除运算。
函数代码如下:```vbPrivate Function Calculate(num1 As Double, num2 As Double, operator As String) As DoubleSelect Case operatorCase "+"Return num1 + num2Case "-"Return num1 - num2Case "*"Return num1 * num2Case "/"If num2 <> 0 ThenReturn num1 / num2ElseMessageBox.Show("除数不能为零!", "错误", MessageBoxButtons.OK, MessageBoxIcon.Error)Return Double.NaNEnd IfCase ElseMessageBox.Show("运算符不合法!", "错误", MessageBoxButtons.OK, MessageBoxIcon.Error)Return Double.NaNEnd SelectEnd Function```这个函数接收两个数值和一个运算符作为参数,并根据运算符的值进行相应的计算。
如果运算符不合法或者除数为零,则会弹出一个错误提示框。
```vbPrivate Sub btnCalculate_Click(sender As Object, e As EventArgs) Handles btnCalculate.ClickDim num1 As DoubleDim num2 As DoubleIf Double.TryParse(txtNum1.Text, num1) AndAlsoDouble.TryParse(txtNum2.Text, num2) ThenDim result As Double = Calculate(num1, num2, cmbOperator.SelectedItem.ToString()If Not Double.IsNaN(result) ThenlblResult.Text = result.ToStringEnd IfElseMessageBox.Show("请输入有效的数值!", "错误", MessageBoxButtons.OK, MessageBoxIcon.Error)End IfEnd Sub```最后,我们可以在窗体的Load事件处理程序中为下拉列表框添加运算符选项。
用VB编写一个简单计算器
用VB编写一个简单计算器一、功能:实现简单的加减乘除功能,C归零,CE取消输入,%计算并显示第一个操作数的百分比。
二、控件:1个label,20个commandbutton。
三、计算器运行界面:四、详细代码:Option ExplicitDim Op1, Op2 '前面输入的操作数Dim DecimalFlag As Integer '小数点仍然存在吗?Dim NumOps As Integer '操作数个数Dim LastInput '指示上一次按键事件的类型Dim OpFlag '指示未完成的操作Dim TempReadout' C (取消) 按钮的Click 事件过程' 重新设置显示并初始化变量Private Sub Cancel_Click()Readout = Format(0, "0.")Op1 = 0Op2 = 0Form_LoadEnd Sub' CE (取消输入) 按钮的Click 事件过程Private Sub CancelEntry_Click()Readout = Format(0, "0.")DecimalFlag = FalseLastInput = "CE"End Sub' 小数点(.) 按钮的Click 事件过程' 如果上一次按键为运算符,初始化readout 为"0.";' 否则显示时追加一个小数点Private Sub Decimal_Click()If LastInput = "NEG" ThenReadout = Format(0, "-0.")ElseIf LastInput <> "NUMS" ThenReadout = Format(0, "0.")End IfDecimalFlag = TrueLastInput = "NUMS"End Sub' 窗体的初始化过程' 设置所有变量为其初始值Private Sub Form_Load()DecimalFlag = FalseNumOps = 0LastInput = "NONE"OpFlag = " "Readout = Format(0, "0.")'Decimal.Caption = Format(0, ".")End Sub' 数字键(0-9) 的Click 事件过程' 向显示中的数追加新数Private Sub Number_Click(Index As Integer)If LastInput <> "NUMS" ThenReadout = Format(0, ".")DecimalFlag = FalseEnd IfIf DecimalFlag ThenReadout = Readout + Number(Index).CaptionElseReadout = Left(Readout, InStr(Readout, Format(0, ".")) - 1) + Number(Index).Caption + Format(0, ".")End IfIf LastInput = "NEG" Then Readout = "-" & ReadoutLastInput = "NUMS"End Sub' 运算符(+, -, x, /, =) 的Click 事件过程' 如果接下来的按键是数字键,增加NumOps。
用VB制作计算器
用VB制作计算器在VB编程语言中,可以使用Windows Forms应用程序来制作一个简单的计算器。
Windows Forms应用程序是VB的一种可视化编程工具,可以为用户提供一个图形用户界面。
首先,我们需要创建一个新的Windows Forms应用程序项目,并打开默认生成的Form1窗体。
接下来,我们可以使用Windows Forms控件来创建一个计算器的用户界面。
在Form1窗体上,我们可以添加一个TextBox控件用于显示计算结果,并设置其属性为只读。
```vbPrivate ReadOnly resultTextBox As TextBox = New TextBox```然后,我们可以添加一些Button控件来表示计算器的数字和操作符。
我们可以使用按钮的Click事件来处理用户的点击操作。
```vbPrivate ReadOnly buttons As List(Of Button) = New List(Of Button)```接下来,我们需要实现按钮的Click事件处理程序来执行相应的计算逻辑。
我们可以使用Eval函数来计算表达式的值,并将结果显示在TextBox中。
Private Sub Button_Click(sender As Object, e As EventArgs) Dim button As Button = TryCast(sender, Button)If button IsNot Nothing ThenDim buttonText As String = button.TextIf buttonText = "=" Then'计算表达式的值Dim expression As String = resultTextBox.TextDim value As Double = Eval(expression)resultTextBox.Text = value.ToStringElseIf buttonText = "C" Then'清空文本框resultTextBox.Text = ""Else'添加数字或操作符resultTextBox.Text += buttonTextEnd IfEnd IfEnd Sub最后,我们需要在窗体的构造函数或Load事件处理程序中将按钮和TextBox添加到窗体上。
VB课程设计报告计算器.doc
VB课程设计(论文)任务书土木建筑学院测绘专业 2 班一、课程设计(论文)题目:滚动字幕板二、课程设计(论文)工作自2011 年 6 月26日起至 2011 年7 月 3 日止三、课程设计(论文) 地点: 计算中心8#501四、课程设计(论文)内容要求:1. 本课程设计的目的(1)进一步巩固和加深对“VB程序设计”课程基本知识的理解和掌握,了解VB语言在项目开发中的应用。
(2)学习程序设计开发的一般方法,了解和掌握项目开发过程及方式,培养正确的设计思想和分析问题、解决问题的能力,特别是项目设计能力。
(3)通过对标准化、规范化文档的掌握并查阅有关技术资料等,培养项目设计开发能力。
2. 课程设计的任务及要求(1) 基本要求:(1)对系统功能进行需求分析;(2)使用Visual basic开发环境进行程序开发;(3)提出系统的设计方案;(4)编写源程序代码并进行调试。
(2) 创新要求在基本要求达到后,可进行创新设计。
(3) 课程设计报告撰写及装订要求课程设计报告的撰写要求表述简明,图表准确。
报告按如下内容和顺序用A4纸进行打印并装订成册。
(1)封面采用统一的课程设计封面,并按要求填写好封面要求的个人信息和选题。
(2)设计任务书(3)评阅书(4)目录(5)正文(6)主要参考文献(4) 课程设计评分标准:(1)达到课程设计的目的与要求,程序的可读性较好,并调试正确,60分;(2)能正确回答设计的中老师所提问题,可增加10分;(3)课程设计报告书写规范整齐,可增加10分;(4)心得体会认真总结,可增加10分;(5)程序有创新性,可增加10分;成绩评定实行优秀、良好、中等、及格和不及格五个等级。
不及格者需重做。
(5) 课程设计进度安排(1)准备阶段(6学时):选择设计题目、了解设计目的要求、查阅相关资料。
(2)程序模块设计分析阶段(8学时):程序总体设计、详细设计。
(3) 代码编写调试阶段(10学时):程序模块代码编写、调试、测试。
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设计一个简易计算器下面是使用VB设计一个简易计算器的代码示例:```vbPublic Class FrmCalculatorDim operand1 As DoubleDim operand2 As DoubleDim operatorFlag As StringPrivate Sub BtnNumber_Click(sender As Object, e As EventArgs) Handles Btn0.Click, Btn1.Click, Btn2.Click, Btn3.Click, Btn4.Click, Btn5.Click, Btn6.Click, Btn7.Click, Btn8.Click, Btn9.ClickDim button As Button = CType(sender, Button)TxtResult.Text += button.TextEnd SubPrivate Sub BtnOperator_Click(sender As Object, e As EventArgs) Handles BtnPlus.Click, BtnMinus.Click,BtnMultiply.Click, BtnDivide.ClickDim button As Button = CType(sender, Button)operatorFlag = button.Textoperand1 = Val(TxtResult.Text)TxtResult.Text = ""End SubPrivate Sub BtnEquals_Click(sender As Object, e As EventArgs) Handles BtnEquals.Clickoperand2 = Val(TxtResult.Text)Select Case operatorFlagCase "+"TxtResult.Text = (operand1 + operand2).ToStringCase "-"TxtResult.Text = (operand1 - operand2).ToStringCase "*"TxtResult.Text = (operand1 * operand2).ToStringCase "/"If operand2 <> 0 ThenTxtResult.Text = (operand1 / operand2).ToStringElseTxtResult.Text = "Cannot divide by zero"End IfEnd SelectEnd SubPrivate Sub BtnClear_Click(sender As Object, e As EventArgs) Handles BtnClear.ClickTxtResult.Text = ""End SubEnd Class```在上述代码中,Form上放置了一些按钮和一个文本框用于显示计算结果。
vb计算器设计
VB课程设计报告院系电气学院班级08自姓名许文欢学号08020326一、设计任务设计一个计算器,包含:加、减、乘、除、平方根、三角反三角函数以及以e、10为底的对数等简单运算。
二、系统总体设计构思和方案(1)计算器有两种模式:普通型与科学型,普通型不包含三角反三角及两种对数运算即在普通型时上述隐藏。
(2)要有一个可以储存一个数值的储存器,储存的数据为上一个显示在文本框中的数,且只在科学型计算器才能调用储存的数据。
(3)计算器可以“连算”即上一次的结果可作为本次计算的第一个数据来使用。
(4)输入的原始数据、运算中间数据及结果数据显示在同一文本框中。
(5)对于三角及反三角函数其输入与输出的数据的单位为:度。
(6)三角函数与反三角函数及两种对数运算用同一组按钮,按shift 实行同步转换。
(7)当输入的数值不符合函数定义时会报错,如:log函数时,输入负数时则出现"函数的输入无效"。
同理,当除数为零时也会报错:“零不能作除数”(8)其他要求。
三、系统的调试本人在此设计过程中的任务是系统的调试。
调试能够帮助我们发现问题。
在系统调试的过程中,我也发现了一些关于语法和逻辑的错误。
例如写对象的属性忘记写对象了,还有一些就是赋值的错误,使得发生了与预期不同的效果。
四、收获体会此次的课程设计令我感触颇多。
首先,它有一定的难度,这需要我们全身心的投入其中;其次,像这种课题的制作,也是一种对我个人人文素质的考验,他需要的最重要的素质就是我们的学习能力。
课题设计时VB代码编写复杂、冗长,稍一不慎就会出错,我们调试了好多次,失败了好多次,而自己仔细想想,归根究底还是在于自己心太浮躁,没有耐心。
VB的编程是一项不易的工作,没有一颗平静的心是完成不了的。
我想,将来做许多事,也需要保持这么一种平和的心态,它是一种个人综合素质,是我们制胜的关键。
课题设计时VB代码编写复杂、冗长,稍一不慎就会出错,我们调试了好多次,失败了好多次,而自己仔细想想,归根究底还是在于自己心太浮躁,没有耐心。
使用VB制作计算器程序
使用VB制作计算器程序计算器程序是一种用于进行数学计算的工具。
最常见的计算器是电子计算器,它可以实现简单的加减乘除等基本计算。
而现在,我们可以使用VB(即Visual Basic)编程语言制作一个计算器程序,使其在计算能力上有所提升。
首先,我们需要创建一个VB Windows Forms应用程序。
在创建项目时,我们可以选择桌面应用程序(Windows Forms)模板。
接下来,我们需要设计计算器的用户界面。
可以使用按钮、文本框等控件来实现基本的数字输入和计算。
假设我们的计算器有一个文本框用于显示输入和结果,并且有数字按钮和运算符按钮来输入表达式,并且还有一个等号按钮用于计算结果。
我们可以使用VB代码来实现各种按钮的功能。
以下是一个简单的计算器程序示例:```vbPublic Class Form1Dim num1 As Double ' 第一个操作数Dim num2 As Double ' 第二个操作数Dim result As Double ' 结果Dim operator As String ' 运算符'数字按钮的点击事件处理函数Private Sub NumberButton_Click(sender As Object, e As EventArgs) Handles Button1.Click, Button2.Click, Button3.Click, Button4.Click, Button5.Click, Button6.Click, Button7.Click, Button8.Click, Button9.Click, Button0.ClickDim number As Button = CType(sender, Button)TextBox1.Text += number.TextEnd Sub'运算符按钮的点击事件处理函数Private Sub OperatorButton_Click(sender As Object, e As EventArgs) Handles PlusButton.Click, MinusButton.Click, MultiplyButton.Click, DivideButton.ClickDim op As Button = CType(sender, Button)num1 = CDbl(TextBox1.Text)TextBox1.Clear[operator] = op.TextEnd Sub'等号按钮的点击事件处理函数Private Sub EqualsButton_Click(sender As Object, e As EventArgs) Handles EqualsButton.Clicknum2 = CDbl(TextBox1.Text)Select Case [operator]Case "+"result = num1 + num2Case "-"result = num1 - num2Case "*"result = num1 * num2Case "/"result = num1 / num2End SelectTextBox1.Text = result.ToStringEnd Sub'清除按钮的点击事件处理函数Private Sub ClearButton_Click(sender As Object, e As EventArgs) Handles ClearButton.ClickTextBox1.ClearEnd SubEnd Class```以上代码实现了简单的加减乘除功能,并将结果显示在文本框中。
(完整word)图文教程—VB计算器设计
VB计算器设计—图文教程界面设计——代码设计——测试运行——保存文件界面设计:一、启动VB,新建一个“标准EX E”工程,将“Form1”的“Caption属性”改为“我的计算器”,“Height属性”改为6100,“Width属性”改为7100。
二、添加一个“Frame”,“Caption属性”改为“数字区”,Height为3615,Width为2655。
添加一个“Frame”,“Caption属性”改为“功能区”,Height为1815,Width为3135。
三、添加一个“TextBox”,“名称”改为t4,“Text属性”改为空白,Height为6255,Width为615。
用同样的方法,添加一个“TextBox”,“名称”改为t1,“Text属性”改为空白,Height为975,Width为495。
添加一个“TextBox”,“名称”改为t2,“Text属性”改为空白,Height为495,Width为495。
添加一个“TextBox”,“名称”改为t3,“Text属性”改为空白,Height为975,Width为495。
摆放位置如图所示:t4t1 t2 t3四、添加一个“CommandButton”,“名称”改为cmd0,“Caption属性”改为0,Height和Width都为495。
摆放位置如图所示:按照同样的方法,在数字区添加其他的CommandButton,并根据下表更改CommandButton的名称、Caption属性,Height和Width。
类型名称Caption属性Height高度Width宽度CommandButton Cmd0 0 495 495CommandButton Cmd小数点. 495 495CommandButton 正负+/- 495 495CommandButton Cmd1 1 495 495CommandButton Cmd2 2 495 495CommandButton Cmd3 3 495 495CommandButton Cmd4 4 495 495CommandButton Cmd5 5 495 495CommandButton Cmd6 6 495 495CommandButton Cmd7 7 495 495CommandButton Cmd8 8 495 495CommandButton Cmd9 9 495 495注意:可以用复制-粘贴的方法,但是在询问“是否创建一个控件数组?”时,请选择“否”!最后,数字区的效果如下图所示:五、添加一个“CommandButton”,“名称”改为加,“Caption属性”改为+,Height和Width都为495。
用VB6.0编写一个小计算器
04
测试和调试
功能测试
测试所有基本功能
加、减、乘、除、平方、平方根等。
测试运算符优先级
确保遵循数学规则,如先乘除后加减。
测试数字范围
包括整数、小数和科学记数法表示的数字。
错误处理
输入验证
确保输入是数字,防止非法字符输入。
异常处理
在VB6.0中,可以使用"/"运算符进行除法 运算。为了实现除法运算,可以在按钮的 点击事件中编写相应的代码,例如: `result = num1 / num2`,其中`num1`和 `num2`是要相除的两个数,`result`是存储 结果的变量。需要注意的是,如果除数为0 会导致程序出错,因此需要进行除数为0的 判断。
谢谢观看
用VB6.0编写一个小计算器
目录
• 引言 • 设计计算器界面 • 实现计算器功能 • 测试和调试 • 总结和展望
01
引言
目的和背景
提高编程技能和实践能力
练习开发一个简单的计算 器应用程序
掌握VB6.0编程语言的基本 语法和控件
01
03 02
计算器概述
一个基本的计算器应 用程序应具备加、减、 乘、除运算功能
优化用户界面
虽然现在的用户界面已经比较友好,但我们可以 进一步优化它,使其更加美观和易用。例如,可 以调整按钮大小、颜色和布局,使其更加符合用 户审美和使用习惯。
扩展平台兼容性
为了使更多人能够使用这个小计算器,我们可以 考虑将其移植到其他平台,如手机或平板电脑。 这需要我们使用跨平台的开发框架和技术来实现 。
平方和平方根运算
总结词
实现平方和平方根运算的基本功能
VB程序设计:计算器
2.3属性设置窗体和各控件的属性设置如下表所示2.4 系统功能本系统的主要功能及任务是1.简单计算2.科学计算2.5 系统功能模块图一.界面设计。
对象属性设置第三章详细设计3.1窗体3.2程序代码Public sum As DoublePublic k As StringPublic pi As DoublePublic c As DoublePublic d As DoublePublic n As DoubleFunction Log10(X)Log10 = Log(X) / Log(10)End FunctionFunction Logn(X)Logn = Log(X) / Log(n)End FunctionPrivate Sub check_Click()Shell "C:\WINDOWS\explorer.exe /263885058/blog/1322900561" End SubPrivate Sub Command1_Click(Index As Integer)Select Case IndexCase 1Text1.Text = Text1.Text & 1Case 2Text1.Text = Text1.Text & 2Case 3Text1.Text = Text1.Text & 3Case 4Text1.Text = Text1.Text & 4Case 5Text1.Text = Text1.Text & 5Case 6Text1.Text = Text1.Text & 6Case 7Text1.Text = Text1.Text & 7Case 8Text1.Text = Text1.Text & 8Case 9Text1.Text = Text1.Text & 9Case 0Text1.Text = Text1.Text & 0Case 10Text1.Text = Text1.Text &"."End SelectEnd SubPrivate Sub Command2_Click(Index As Integer)Select Case IndexCase 0sum = Text1.TextText1.Text = ""k = "+"Case 1sum = Text1.TextText1.Text = ""k = "-"Case 2sum = Text1.TextText1.Text = ""k = "*"Case 3sum = Text1.TextText1.Text = ""k = "/"End SelectEnd SubPrivate Sub Command3_Click()Dim a As Doublea = Text1.TextIf k = "+" Thensum = sum + aText2.Text = sumElseIf k = "-" Thensum = sum - aText2.Text = sumElseIf k = "*" Thensum = sum * aText2.Text = sumElseIf k = "/" Thensum = sum / aText2.Text = sumElseIf k = "sin" Then'等号的三角计算sum = Sin(a * pi / 180)Text2.Text = sumElseIf k = "cos" Thensum = Cos(a * pi / 180)Text2.Text = sumElseIf k = "tan" Thensum = Tan(a * pi / 180)Text2.Text = sumElseIf k = "cot" Thensum = 1 / (Tan(a * pi / 180))Text2.Text = sumElseIf k = "lg" Then'等号的lg计算sum = Log(Val(Text1.Text))Text2.Text = sumElseIf k = "ln" Then'等号的ln计算sum = Log10(Val(Text1.Text))Text2.Text = sumElseIf k = "logn" Then'等号的log n a计算sum = Logn(Val(Text1.Text))Text2.Text = sumElseIf k = "2" Then'等号的幂函数计算sum = (Val(Text1.Text)) ^ 2Text2.Text = sumElseIf k = "c" Thensum = Val(Text1.Text) ^ cText2.Text = sumElseIf k = "0.5" Then'等号的开方运算sum = (Val(Text1.Text)) ^ 0.5Text2.Text = sumElseIf k = "d" Thensum = (Val(Text1.Text)) ^ (1 / d)Text2.Text = sumEnd IfEnd SubPrivate Sub Command4_Click(Index As Integer)Dim b As Integerb = Len(Text1.Text)If b > 1 ThenText1.Text = Val(Str(Left(Text1.Text, Len(Text1.Text) - 1))) ElseText1.Text = ""End IfEnd SubPrivate Sub Command5_Click()Text1.Text = ""Text2.Text = ""Label2.Caption = ""Label3.Caption = ""a = 0b = 0k = ""End SubPrivate Sub Command6_Click(Index As Integer)Select Case IndexCase 0Label2.Caption = "sin"k = "sin"Case 1Label2.Caption = "cos"k = "cos"Case 2Label2.Caption = "tan"k = "tan"Case 3Label2.Caption = "cot"k = "cot"Case 4'对数计算Label2.Caption = "lg"k = "lg"Case 5Label2.Caption = "ln"k = "ln"Case 6n = Val(InputBox("请输入对数运算的底数", 请输入数字)) Label2.Caption = "log" '普通对数计算Label4.Caption = nk = "logn"Case 7'幂运算Label3.Caption = "2"k = "2"Case 8c = Val(InputBox("请输入运算幂指数", 输入数字))Label3.Caption = ck = "c"Case 9'幂运算Label2.Caption = "√"k = "0.5"Case 10'开方运算d = Val(InputBox("请输入需要开多少次方", 输入数字))Label2.Caption = d &"√"k = "d"End SelectEnd SubPrivate Sub Command7_Click()Shell "C:\WINDOWS\explorer.exe " End SubPrivate Sub Command8_Click()Text1.Text = sumEnd SubPrivate Sub Command9_Click()EndEnd SubPrivate Sub end_Click()EndEnd SubPrivate Sub explain_Click()End SubPrivate Sub Form_Load()pi = 4 * Atn(1)End SubPrivate Sub help_Click()End SubPrivate Sub Text1_Change()End Sub。
VB计算器程序设计
VB课程设计(论文)任务书土木建筑学院环境工程专业 1 班一、课程设计(论文)题目:计算器二、课程设计(论文)工作自2013 年 6 月17日起至 2013 年6 月 23 日止三、课程设计(论文) 地点: 计算中心四、课程设计(论文)内容要求:1. 本课程设计的目的(1)进一步巩固和加深对“VB程序设计”课程基本知识的理解和掌握,了解VB语言在项目开发中的应用。
(2)学习程序设计开发的一般方法,了解和掌握项目开发过程及方式,培养正确的设计思想和分析问题、解决问题的能力,特别是项目设计能力。
(3)通过对标准化、规范化文档的掌握并查阅有关技术资料等,培养项目设计开发能力。
2. 课程设计的任务及要求(1) 基本要求:(1)对系统功能进行需求分析;(2)使用Visual basic开发环境进行程序开发;(3)提出系统的设计方案;(4)编写源程序代码并进行调试。
(2) 创新要求在基本要求达到后,可进行创新设计。
(3) 课程设计报告撰写及装订要求课程设计报告的撰写要求表述简明,图表准确。
报告按如下内容和顺序用A4纸进行打印并装订成册。
(1)封面采用统一的课程设计封面,并按要求填写好封面要求的个人信息和选题。
(2)设计任务书(3)评阅书(4)目录(5)正文(6)主要参考文献(4) 课程设计评分标准:(1)达到课程设计的目的与要求,程序的可读性较好,并调试正确,60分;(2)能正确回答设计的中老师所提问题,可增加10分;(3)课程设计报告书写规范整齐,可增加10分;(4)心得体会认真总结,可增加10分;(5)程序有创新性,可增加10分;成绩评定实行优秀、良好、中等、及格和不及格五个等级。
不及格者需重做。
(5) 课程设计进度安排(1)准备阶段(6学时):选择设计题目、了解设计目的要求、查阅相关资料。
(2)程序模块设计分析阶段(8学时):程序总体设计、详细设计。
(3) 代码编写调试阶段(10学时):程序模块代码编写、调试、测试。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Vb 程序设计课程设计报告《科学计算器的设计》专业:工商管理类班级:1107班学号:110808703姓名:魏启岚指导教师:阮冰设计日期:2012年6月14日第一章:课程设计概述第二章:总体设计第三章:详细设计第四章:调试分析过程描述第五章:综合设计体会参考文献第一章:课程设计概述1.1、课程设计名称一、课程设计名称《科学计算器的设计》1.2、任务要求一、随着电子技术的发展,计算机的功能越来越强大,精度越来越高,性能越来越好,可以实现复杂的科学计算,Windows系统也自带了一个功能强大的计算器。
本次课设要设计一个科学计算器,除了基本的四则运算之外,还有三角与反三角、对数与反对数、乘方与幂运算等。
科学计算器除了具有普通计算器的标准功能之外,还具有很多其他数据计算功能。
本次课设设计的科学计算器包括以下功能:1.具有小数点后10位以上的精度。
2.可以直接输出随机数、圆周率、自然对数的底数和重力加速度等常用常数。
3.可以输入0~9、00、小数点等数字或数学符号,并能对数字取反。
4.能够计算加、减、乘、除四则运算。
5.可以计算倒数、平方、立方、开方和任意乘方或幂指运算,以及阶乘运算。
6.能够计算以10为底的对数和自然对数,以及自然对数为底的幂运算。
7.具有三角与反三角函数的计算功能,并能在角度、弧度和梯度之间进行换算。
8.可以将数据记录到内存中,并能将输入的数据和内存中的数据进行四则运算。
9.能够实现数据的统计计算,包括和、平均值和方差。
10.可以对计算或输入的结果进行复制,也能通过粘贴方式向计算器输入数字。
1.3、开发环境一、科学计算器主要在visual basic6.0中完成。
Visual Basic是一种由微软公司开发的包含协助开发环境的事件驱动编程语言。
从任何标准来说,VB都是世界上使用人数最多的语言——不仅是盛赞VB的开发者还是抱怨VB 的开发者的数量。
它源自于BASIC编程语言。
VB拥有图形用户界面(GUI)和快速应用程序开发(RAD)系统,可以轻易的使用DAO、RDO、ADO连接数据库,或者轻松的创建ActiveX控件。
程序员可以轻松的使用VB提供的组件快速建立一个应用程序。
VB的中心思想就是要便于使用,无论是新手或者专家。
VB使用了可以简单建立应用程序的GUI系统,但是又可以开发相当复杂的程序。
VB的程序是一种基于窗体的可视化组件安排的联合,并且增加代码来指定组件的属性和方法。
因为默认的属性和方法已经有一部分定义在了组件内,所以程序员不用写多少代码就可以完成一个简单的程序。
过去的版本里面VB程序的性能问题一直被放在了桌面上,但是随着计算机速度的飞速增加,关于性能的争论已经越来越少。
窗体控件的增加和改变可以用拖放技术实现。
一个排列满控件的工具箱用来显示可用控件(比如文本框或者按钮)。
每个控件都有自己的属性和事件。
默认的属性值会在控件创建的时候提供,但是程序员也可以进行更改。
很多的属性值可以在运行时候随着用户的动作和修改进行改动,这样就形成了一个动态的程序。
举个例子来说:窗体的大小改变事件中加入了可以改变控件位置的代码,在运行时候每当用户更改窗口大小,控件也会随之改变位置。
在文本框中的文字改变事件中加入相应的代码,程序就能够在文字输入的时候自动翻译或者阻止某些字符的输入。
VB的程序可以包含一个或多个窗体,或者是一个主窗体和多个子窗体,类似于操作系统的样子。
有很少功能的对话框窗口(比如没有最大化和最小化按钮的窗体)可以用来提供弹出功能。
VB的组件既可以拥有用户界面,也可以没有。
这样一来服务器端程序就可以处理增加的模块。
VB使用参数计算的方法来进行垃圾收集,这个方法中包含有大量的对象,提供基本的面向对象支持。
因为越来越多组件的出现,程序员可以选用自己需要的扩展库。
和有些语言不一样,VB对大小写不敏感,但是能自动转换关键词到标准的大小写状态,以及强制使得符号表入口的实体的变量名称遵循书写规则。
默认情况下字符串的比较是对大小写敏感的,但是可以关闭这个功能。
VB使得大量的外界控件有了自己的生存空间。
大量的第三方控件针对VB提供。
VB也提供了建立、使用和重用这些控件的方法,但是由于语言问题,从一个应用程序创建另外一个并不简单第二章:总体设计2.1系统功能需求分析一、计算器如图此计算器可以计算简单的加减乘除计算,还包括简单的三角函数的计算。
加有退出键,帮助按钮等控件。
2.2总体设计框架2.3、系统功能模块图及各功能模块的目的与意义计算器包括0到9的数字控件,加减乘除等计算符号控件,还包括两个文本框。
计算器可以计算简单的数字计算,计算器的制作意义在于可以熟练的掌握vb的运用和对vb的功能认识。
第三章:详细设计一、主要功能模块的计算设计思路,以及对应的N-S流程图,说明本功能的特点。
其各功能的代码如下Dim sum As DoubleDim k As StringDim pi As DoubleDim c As DoubleDim d As DoubleDim n As DoubleDim x As DoublePrivate Sub Command1_Click(Index As Integer) Select Case IndexCase 1Text1.Text = Text1.Text & 1Case 2Text1.Text = Text1.Text & 2Case 3Text1.Text = Text1.Text & 3Case 4Text1.Text = Text1.Text & 4Case 5Text1.Text = Text1.Text & 5Case 6Text1.Text = Text1.Text & 6Case 7Text1.Text = Text1.Text & 7Case 8Text1.Text = Text1.Text & 8Text1.Text = Text1.Text & 9Case 0Text1.Text = Text1.Text & 0Case 10Text1.Text = Text1.Text & "."End SelectEnd SubPrivate Sub Command2_Click(Index As Integer) If Text1.Text = "" ThenMsgBox "请先输入第一个数字后再点击符号" ElseSelect Case IndexCase 0sum = Text1.TextText1.Text = ""k = "+"Case 1sum = Text1.TextText1.Text = ""Case 2sum = Text1.TextText1.Text = ""k = "*"Case 3sum = Text1.TextText1.Text = ""k = "/"End SelectEnd IfEnd SubPrivate Sub Command3_Click()If Text1.Text = "" ThenMsgBox "您未输入任何需要计算内容,请先输入需要计算内容" Text1.Text = ""Text2.Text = ""Label2.Caption = ""Label3.Caption = ""ElseDim a As Doublea = Text1.TextIf k = "+" Thensum = sum + aText2.Text = sumElseIf k = "-" Thensum = sum - aText2.Text = sumElseIf k = "*" Thensum = sum * aText2.Text = sumElseIf k = "/" ThenIf Text1.Text = 0 Then '判断除数是否为0,若为零弹出信息框并清空输入数据,要求重新输入MsgBox "除数不能为零!请重新输入"Text1.Text = ""Text2.Text = ""Label2.Caption = ""Label3.Caption = ""a = 0b = 0k = ""Elsesum = sum / aText2.Text = sumEnd IfElseIf k = "sin" Then '等号的三角计算sum = Sin(a * pi / 180)Text2.Text = sumElseIf k = "cos" Thensum = Cos(a * pi / 180)Text2.Text = sumElseIf k = "tan" ThenDim m As IntegerDim n As Integerm = a Mod 180 - 90If m = 0 ThenMsgBox "(90+180*n)度的正切值无意义,请重新输入"Elsesum = (Tan(a * pi / 180))Text2.Text = sumEnd IfElseIf k = "cot" Thensum = 1 / (Tan(a * pi / 180))Text2.Text = sumEnd IfEnd IfEnd Sub这些代码是对计算符号的定义和控制的。
Private Sub Command4_Click(Index As Integer)Dim b As Integerb = Len(Text1.Text)If b > 1 ThenText1.Text = Val(Str(Left(Text1.Text, Len(Text1.Text) - 1))) ElseText1.Text = ""End IfEnd Sub对文本框中的出入数字规定Private Sub Command5_Click()Text1.Text = ""Text2.Text = ""a = 0b = 0k = ""End Sub对文本框中数字的清除规定Private Sub Command6_Click(Index As Integer) Select Case IndexCase 0k = "sin"Case 1k = "cos"Case 2k = "tan"Case 3k = "cot"End SelectEnd SubPrivate Sub Command8_Click()Text1.Text = sumEnd SubPrivate Sub Form_Load()pi = 4 * Atn(1)End SubPrivate Sub end_click()EndEnd Sub以上是个空间代码。