Vb制作计算器程序设计.docx
《Vb制作计算器程序设计.docx》由会员分享,可在线阅读,更多相关《Vb制作计算器程序设计.docx(11页珍藏版)》请在冰豆网上搜索。
![Vb制作计算器程序设计.docx](https://file1.bdocx.com/fileroot1/2023-1/29/01259676-a8d1-48f7-98f1-74a210a0b7bb/01259676-a8d1-48f7-98f1-74a210a0b7bb1.gif)
Vb制作计算器程序设计
Vb程序设计
课程设计报告
《科学计算器的设计》
专业:
工商管理类
班级:
1107班
学号:
姓名:
飞机
指导教师:
XXX
设计日期:
2012年6月14日
第1章:
课程设计概述
第2章:
总体设计
第3章:
详细设计
第4章:
调试分析过程描述
第5章:
综合设计体会
参考文献
第一章:
课程设计概述
1.1、课程设计名称
1、课程设计名称《科学计算器的设计》
1.2、任务要求
一、随着电子技术的发展,计算机的功能越来越强大,精度越来越高,性能越来越好,可以实现复杂的科学计算,Windows系统也自带了一个功能强大的计算器。
本次课设要设计一个科学计算器,除了基本的四则运算之外,还有三角与反三角、对数与反对数、乘方与幂运算等。
科学计算器除了具有普通计算器的标准功能之外,还具有很多其他数据计算功能。
本次课设设计的科学计算器包括以下功能:
1.具有小数点后10位以上的精度。
2.可以直接输出随机数、圆周率、自然对数的底数和重力加速度等常用常数。
3.可以输入0~9、00、小数点等数字或数学符号,并能对数字取反。
4.能够计算加、减、乘、除四则运算。
5.可以计算倒数、平方、立方、开方和任意乘方或幂指运算,以及阶乘运算。
6.能够计算以10为底的对数和自然对数,以及自然对数为底的幂运算。
7.具有三角与反三角函数的计算功能,并能在角度、弧度和梯度之间进行换算。
8.可以将数据记录到内存中,并能将输入的数据和内存中的数据进行四则运算。
9.能够实现数据的统计计算,包括和、平均值和方差。
10.可以对计算或输入的结果进行复制,也能通过粘贴方式向计算器输入数字。
1.3、开发环境
1、科学计算器主要在visualbasic6.0中完成。
VisualBasic是一种由微软公司开发的包含协助开发环境的事件驱动编程语言。
从任何标准来说,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章:
总体设计
2.1系统功能需求分析
一、计算器如图
此计算器可以计算简单的加减乘除计算,还包括简单的三角函数的计算。
加有退出键,帮助按钮等控件。
2.2总体设计框架
2.3、系统功能模块图及各功能模块的目的与意义
计算器包括0到9的数字控件,加减乘除等计算符号控件,还包括两个文本框。
计算器可以计算简单的数字计算,计算器的制作意义在于可以熟练的掌握vb的运用和对vb的功能认识。
第三章:
详细设计
一、主要功能模块的计算设计思路,以及对应的N-S流程图,说明本功能的特点。
其各功能的代码如下
DimsumAsDouble
DimkAsString
DimpiAsDouble
DimcAsDouble
DimdAsDouble
DimnAsDouble
DimxAsDouble
PrivateSubCommand1_Click(IndexAsInteger)
SelectCaseIndex
Case1
Text1.Text=Text1.Text&1
Case2
Text1.Text=Text1.Text&2
Case3
Text1.Text=Text1.Text&3
Case4
Text1.Text=Text1.Text&4
Case5
Text1.Text=Text1.Text&5
Case6
Text1.Text=Text1.Text&6
Case7
Text1.Text=Text1.Text&7
Case8
Text1.Text=Text1.Text&8
Case9
Text1.Text=Text1.Text&9
Case0
Text1.Text=Text1.Text&0
Case10
Text1.Text=Text1.Text&"."
EndSelect
EndSub
PrivateSubCommand2_Click(IndexAsInteger)
IfText1.Text=""Then
MsgBox"请先输入第一个数字后再点击符号"
Else
SelectCaseIndex
Case0
sum=Text1.Text
Text1.Text=""
k="+"
Case1
sum=Text1.Text
Text1.Text=""
k="-"
Case2
sum=Text1.Text
Text1.Text=""
k="*"
Case3
sum=Text1.Text
Text1.Text=""
k="/"
EndSelect
EndIf
EndSub
PrivateSubCommand3_Click()
IfText1.Text=""Then
MsgBox"您未输入任何需要计算内容,请先输入需要计算内容"
Text1.Text=""
Text2.Text=""
Label2.Caption=""
Label3.Caption=""
Else
DimaAsDouble
a=Text1.Text
Ifk="+"Then
sum=sum+a
Text2.Text=sum
ElseIfk="-"Then
sum=sum-a
Text2.Text=sum
ElseIfk="*"Then
sum=sum*a
Text2.Text=sum
ElseIfk="/"Then
IfText1.Text=0Then'判断除数是否为0,若为零弹出信息框并清空输入数据,要求重新输入
MsgBox"除数不能为零!
请重新输入"
Text1.Text=""
Text2.Text=""
Label2.Caption=""
Label3.Caption=""
a=0
b=0
k=""
Else
sum=sum/a
Text2.Text=sum
EndIf
ElseIfk="sin"Then'等号的三角计算
sum=Sin(a*pi/180)
Text2.Text=sum
ElseIfk="cos"Then
sum=Cos(a*pi/180)
Text2.Text=sum
ElseIfk="tan"Then
DimmAsInteger
DimnAsInteger
m=aMod180-90
Ifm=0Then
MsgBox"(90+180*n)度的正切值无意义,请重新输入"
Else
sum=(Tan(a*pi/180))
Text2.Text=sum
EndIf
ElseIfk="cot"Then
sum=1/(Tan(a*pi/180))
Text2.Text=sum
EndIf
EndIf
EndSub
这些代码是对计算符号的定义和控制的。
PrivateSubCommand4_Click(IndexAsInteger)
DimbAsInteger
b=Len(Text1.Text)
Ifb>1Then
Text1.Text=Val(Str(Left(Text1.Text,Len(Text1.Text)-1)))
Else
Text1.Text=""
EndIf
EndSub
对文本框中的出入数字规定
PrivateSubCommand5_Click()
Text1.Text=""
Text2.Text=""
a=0
b=0
k=""
EndSub
对文本框中数字的清除规定
PrivateSubCommand6_Click(IndexAsInteger)
SelectCaseIndex
Case0
k="sin"
Case1
k="cos"
Case2
k="tan"
Case3
k="cot"
EndSelect
EndSub
PrivateSubCommand8_Click()
Text1.Text=sum
EndSub
PrivateSubForm_Load()
pi=4*Atn
(1)
EndSub
PrivateSubend_click()
End
EndSub
以上是个空间代码。
对代码解释如下:
DimsumAsDouble
DimkAsString
DimpiAsDouble
DimcAsDouble
DimdAsDouble
DimnAsDouble
DimxAsDouble对代码中的出现的字母进行定义说明,这些代码出现在通用部分控件click事件中。
PrivateSubCommand1_Click(IndexAsInteger)
SelectCaseIndex
Case1
Text1.Text=Text1.Text&1
Case2
Text1.Text=Text1.Text&2
Case3
Text1.Text=Text1.Text&3
Case4
Text1.Text=Text1.Text&4
Case5
Text1.Text=Text1.Text&5
Case6
Text1.Text=Text1.Text&6
Case7
Text1.Text=Text1.Text&7
Case8
Text1.Text=Text1.Text&8
Case9
Text1.Text=Text1.Text&9
Case0
Text1.Text=Text1.Text&0
Case10
Text1.Text=Text1.Text&"."
EndSelect
EndSub这些代码主要控制0到9数字的运算,运算个加减乘除的计算控件。
第四章:
调试分析过程描述
一、包括测试数据,测试输出结果,以及对调试过程中存在的问题思考。
调试过程中主要问题在于三角函数的调试,其代码如下
DimmAsInteger
DimnAsInteger
m=aMod180-90
Ifm=0Then
MsgBox"(90+180*n)度的正切值无意义,请重新输入"
Else
sum=(Tan(a*pi/180))
对于正切值的计算和有关规定存在比较大的问题,由于对代码书写的不熟悉,导致在设计此代码的过程存在过大的问题。
经过翻阅书本及网络查询,最终得以完成代码的编写,此处的重难点在于正切函数存在无意义的特点,要重新根据这一点加以调试和代码的书写。
在解决问题过程当中,需要冷静思考,仔细分析代码的特点以及对书籍的查看。
在平时的学习过程当中应加强对各代码的记忆和理解。
第五章:
综合设计体会
一、对此次科学计算器的编写的体会深刻。
在编写的过程当中加强了对vb的知识的巩固和理解。
Vb对于我来说,它还是比较难的,对其理解的不够深刻,认识的不够透彻。
下面是我对vb的心得认识:
VisualBasic的最大的优势在于它的易用性,可以让经验丰富的VB程序员或是刚刚懂得皮毛的人都能用自己的方式快速开发程序。
而且VB的程序可以非常简单的和数据库连接。
比如利用控件可以绑定数据库,这样一来用VB写出的程序就可以掌握数据库的所有信息而不用写一行代码。
VisualBasic开发的程序虽然仅在MicrosoftWindows中得到原生支持,但Linux等平台中存在着一些项目,使得能够使用VisualBasic的代码在这些平台下顺利编译。
任何语言开发的程序都需要一定运行时环境的支持。
传统VisualBasic开发的程序需要VB运行库的支持;VisualBasic.Net开发的程序需要.NetFramework的支持;Java开发的程序需要Java虚拟机的支持;C#开发的程序需要.NetFramework的支持。
通过此次的时间操作,我觉得光是学点理论知识是不够的,关键在于能够将理论转化为现实操作,自己动手才能让自己更清楚的理解和巩固知识。
参考文献:
《Visualbasic数据库系统开发实例精选》,网络XX文库的参考等。