VB科学计算器课程设计.docx
- 文档编号:1709114
- 上传时间:2022-10-23
- 格式:DOCX
- 页数:15
- 大小:161.80KB
VB科学计算器课程设计.docx
《VB科学计算器课程设计.docx》由会员分享,可在线阅读,更多相关《VB科学计算器课程设计.docx(15页珍藏版)》请在冰豆网上搜索。
VB科学计算器课程设计
一、设计内容及要求
二、设计原始资料
三、设计完成后提交的文件和图表设计
四、进程安排
五、主要参考资料
[摘要]
用VB制作这个程序的简单计算器,它包括一个标准的计算器和一个科学计算器。
它可以实现简单的加减乘除四则运算,数字的平方、平方根,正弦、余弦、正切,倒数、指数函数、对数函数,角度、弧度、梯度的转换,以及各进制的相互转换。
而且它的功能还有退格,清除当前数据,清除所有数据,复制数据,粘贴数据。
在这个计算器的程序中,我用到了单行选择语句If … Then …Else…,
块语句if…then…end if,If语句的嵌套,多条件选择语句Select Case,而且还用到了按钮、文本框、框架、单选按钮控件,菜单的设计。
在此报告中我重点叙述了计算机的各个功能及用法。
特别是进制间的转换和数字与运算符之间的联系。
。
虽然描述的不太完整,但我会尽力使用系统结构图,划分多个模块,让大家明白我设计的运算器的功能的。
[关键词]
Visual Basic;计算器;对象;代码
一、设计内容及要求
本程序的目标是建立一套可以计算数的平方,平方根,倒数,正弦,余弦,正切,指数函数,对数函数的计算器系统。
1.2、基本功能
1) 能够完成基本的四则运算。
2) 能够进行如下函数的求值运算,包括sin, cos,tan, exp,
log, sqr, 1/x,及和圆周率π。
3) 能够实现角度、弧度、梯度的相互转换。
4) 能够实现的进制的相互转换。
5) 输出时的格式:
结果为整数时不显示小数点,结果为1以
下小数时要显示前导0。
6) 分门别类采用控件数组,以减少事件处理的复杂程度,使
程序简洁高效。
7) 能够实现退格键、清除、清空功能。
8) 出错处理:
操作数如果不符合数学上的定义,应该给出错误
信息。
二、设计原始资料
VB计算器四则运算(见附页)
三、设计完成后提交的文件和图表设计(要求2000字以上)
1.设计方案
实现这个实用计算器,要考虑的主要是以下两个方面的内容:
一、设置每个控件按钮的属性。
二、每组控件组都有自己的VB代码,由VB语言实现各个控件按钮的功能。
于是本设计就是以这两个个部分为核心内容展开。
根据设计要求该实用计算器能实现四则运算和部分科学计算法等按钮的控制,根据各组控件按钮源代码的不同,来实现按下不同的按键实现不同的计算过程或结果功能。
本设计大体由窗体、CommandButton、Textbox、Timer四个模块构成。
其中Commandbutton作为按钮模块,Textbox作为显示模块,Timer作为显示或隐藏部分按键的模块。
Commandbutton按钮实现数字键和其他算法按键的功能;Textbox实现计算过程和结果的数字显示;Timerbox实现当计算器只用到四则的简单运算时,窗体只显示四种运算的基本按键,当用到科学计算时,再在窗体中显示科学计算的控件按钮。
2.流程图、图纸
⑴计算器如图
此计算器可以计算简单的加减乘除计算,还包括三角函数、乘方、阶乘、开方、对数等等的计算。
加有退出键,说明按钮等控件。
⑵总体设计框架
四、进程安排
(1)创建应用程序的界面。
(2)设置属性。
(3)编写代码。
(4)调试运行。
(5)保存工程及生成可执行文件。
五、主要参考资料
1.《VisualBasic6.0程序设计教程》(第四版)人民邮电出版社
附页:
设计原始资料
PrivateSubCommand1_Click()'删除数字的最后一位
IfLabel3.Caption<>""Then
Label3.Caption=Left(Label3.Caption,Len(Label3.Caption)-1)
Else
c=MsgBox("内容已为空!
不可删除一位!
",49,"注意!
")
EndIf
EndSub
PrivateSubCommand10_Click()'输入数字6
Label3.Caption=Label3.Caption+Command10.Caption
EndSub
PrivateSubCommand11_Click()
IfLabel3.Caption<>""Then'输入符号*
Label1.Caption=Label3.Caption
Label2.Caption=Command11.Caption
Label3.Caption=""
Else
c=MsgBox("请输入数据后输入符号!
",49,"注意!
")
EndIf
EndSub
PrivateSubCommand12_Click()'输入数字1
Label3.Caption=Label3.Caption+Command12.Caption
EndSub
PrivateSubCommand13_Click()'输入数字2
Label3.Caption=Label3.Caption+Command13.Caption
EndSub
PrivateSubCommand14_Click()'输入数字3
Label3.Caption=Label3.Caption+Command14.Caption
EndSub
PrivateSubCommand15_Click()'输入符号—
IfLabel2<>""Then
Label3.Caption=-Val(Label3.Caption)
Else
Label1.Caption=Label3.Caption
Label2.Caption=Command15.Caption
Label3.Caption=""
EndIf
EndSub
PrivateSubCommand16_Click()'输入数字0
Label3.Caption=Label3.Caption+Command16.Caption
EndSub
PrivateSubCommand17_Click()'输入小数点
Label3.Caption=Label3.Caption+Command17.Caption
EndSub
PrivateSubCommand18_Click()'“=”按钮
IfLabel1.Caption<>""Then
IfLabel2.Caption="*"Then'计算乘法
Label3.Caption=Label1.Caption&"*"&Label3.Caption&"="&Val(Label1.Caption)*Val(Label3.Caption)
ElseIfLabel2.Caption="/"Then'计算除法
IfVal(Label3.Caption)<>0Then
Label3.Caption=Label1.Caption&"/"&Label3.Caption&"="&Val(Label1.Caption)/Val(Label3.Caption)
Else
c=MsgBox("除数不能为0!
请重新输入!
",49,"注意!
")
EndIf
ElseIfLabel2.Caption="-"Then'计算减法
Label3.Caption=Label1.Caption&"-"&Label3.Caption&"="&Val(Label1.Caption)-Val(Label3.Caption)
ElseIfLabel2.Caption="+"Then'计算加法
Label3.Caption=Label1.Caption&"+"&Label3.Caption&"="&Val(Label1.Caption)+Val(Label3.Caption)
ElseIfLabel2.Caption="mod"Then'进行取余运算
IfLabel3.Caption=0Then
c=MsgBox("除数不能为0!
"+Chr(13)+Chr(10)+"请重新输入!
",49,"提示!
")
Else
Label3.Caption=Label1.Caption&"mod"&Label3.Caption&"="&Val(Label1.Caption)ModVal(Label3.Caption)
EndIf
ElseIfLabel2.Caption="x^y"Then'计算x^y
Label3.Caption=Label1.Caption&"^"&Label3.Caption&"="&Val(Label1.Caption)^Val(Label3.Caption)
EndIf
Else
IfLabel2.Caption="-"Then'如果输入数字前输入“-”则按负数处理
Label3.Caption=-Val(Label3.Caption)
EndIf
EndIf
Label1.Caption=""
Label2.Caption=""
OpenApp.Path&"\记录"ForAppendAs#1'保存记录
Print#1,"科学型计算器"&"";Date&"";Time()
Print#1,Label3.Caption
Print#1,
Close#1
EndSub
PrivateSubCommand19_Click()'输入符号+
IfLabel3.Caption<>""Then
Label1.Caption=Label3.Caption
Label2.Caption=Command19.Caption
Label3.Caption=""
Else
c=MsgBox("请输入数据后输入符号!
",49,"注意!
")
EndIf
EndSub
PrivateSubCommand2_Click()
Label3.Caption=""'清空
Label2.Caption=""
Label1.Caption=""
EndSub
PrivateSubCommand20_Click()
s=1'求阶乘n!
Fori=1ToVal(Label3.Caption)
s=s*i
Next
Label3.Caption=Label3.Caption+"!
="&s
OpenApp.Path&"\记录"ForAppendAs#1'保存记录
Print#1,"科学型计算器"&"";Date&"";Time()
Print#1,Label3.Caption
Print#1,
Close#1
EndSub
PrivateSubCommand21_Click()'取整运算fix
Label3.Caption="Fix("&Label3.Caption
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- VB 科学 计算器 课程设计