vb计算器设计报告.docx
- 文档编号:26653178
- 上传时间:2023-06-21
- 格式:DOCX
- 页数:13
- 大小:16.22KB
vb计算器设计报告.docx
《vb计算器设计报告.docx》由会员分享,可在线阅读,更多相关《vb计算器设计报告.docx(13页珍藏版)》请在冰豆网上搜索。
vb计算器设计报告
一.设计思路1
二.关键问题的解决1
三.概要设计说明1
四.源代码1
五.心得体会8
一.设计思路
1.要达到的目的要达到的目的主要是培养学生利用系统提供的基本控件进行创新性设计,理解VisualBasic语言中面向对象的程序设计。
培养学生综合利用VisualBasic语言进行程序设计的能力。
二.关键问题的解决
先使用Command命令按钮,命令按钮控件数组,文本框等基本控件设计窗体,再根据下面方法编制程序:
三.概要设计说明
本组设计的科学计算器具有科学型和标准型两种类型,适合不同需要.科学型中包含弧度与角度的计算,同时兼具2,8,10,16进制的运算.
四.源代码
Dimnum1AsDouble
Dimnum2AsDouble
Dimnum3AsDouble
DimflagAsDouble
DimoperatorAsInteger
DimqAsInteger
PrivateSubCommand1_Click(IndexAsInteger)
SelectCaseIndex
CaseIs<=9
IfIndex=0AndVal(Text1.Text)=0Then
Text1.Text=0
Else
IfVal(Text1.Text)=0Then
Text1.Text=Index
Else
Text1.Text=Text1.Text&Index
EndIf
EndIf
CaseIs>=20
If(Val(Text1.Text)=0)Then
Text1.Text=Command1(Index).Caption
Else
Text1.Text=Text1.Text+Command1(Index).Caption
EndIf
Case10
Text1.Text=Text1.Text+"."
Case11
Text1.Text=-Val(Text1.Text)
Case12
IfNotflagThen
num1=Val(Text1.Text)
Text1.Text=0
flag=True
operator=1
EndIf
Case13
IfNotflagThen
num1=Val(Text1.Text)
Text1.Text=0
flag=True
operator=2
EndIf
Case14
IfNotflagThen
num1=Val(Text1.Text)
Text1.Text=0
flag=True
operator=3
EndIf
Case15
IfNotflagThen
num1=Val(Text1.Text)
Text1.Text=0
flag=True
operator=4
EndIf
Case16
IfNotflagThen
num1=Val(Text1.Text)
Text1.Text=0
flag=True
operator=5
EndIf
Case17
num1=Val(Text1.Text)
Text1.Text=Sqr(num1)
Case19
Text1.Text=0
Case18
IfflagThen
Ifq=2Then
num1=Val("&O"&Val(num1))
num2=Val("&O"&Val(Text1.Text))
SelectCaseoperator
Case1
num3=num1+num2
Case2
num3=num1-num2
Case3
num3=num1*num2
Case4
num3=num1/num2
Case5
num3=num1Modnum2
EndSelect
num3=Oct(Val(num3))
Text1.Text=num3
flag=False
ElseIfq=4Then
num1=Val("&H"&num1)
num2=Val("&H"&Text1.Text)
SelectCaseoperator
Case1
num3=num1+num2
Case2
num3=num1-num2
Case3
num3=num1*num2
Case4
num3=num1/num2
Case5
num3=num1Modnum2
EndSelect
Text1.Text=Hex(num3)
flag=False
ElseIfq=1Then
num2=Val(Text1.Text)
SelectCaseoperator
Case1
num3=num1+num2
Case2
num3=num1-num2
Case3
num3=num1*num2
Case4
num3=num1/num2
Case5
num3=num1Modnum2
EndSelect
Text1.Text=num3
flag=False
ElseIfq=3Then
DimaAsString
DimbAsInteger
DimiAsInteger
DimtAsInteger
a=Val(num1)
b=0
Fori=1ToLen(a)
t=Asc(Mid(a,i,1))-48
b=b*2+t
Nexti
num1=b
a=Val(Text1.Text)
b=0
Fori=1ToLen(a)
t=Asc(Mid(a,i,1))-48
b=b*2+t
Nexti
num2=b
SelectCaseoperator
Case1
num3=num1+num2
Case2
num3=num1-num2
Case3
num3=num1*num2
Case4
num3=num1/num2
Case5
num3=num1Modnum2
EndSelect
DimjAsInteger
DimwAsInteger
DimkAsString
w=Val(num3)
Do
j=wMod2
w=w\2
k=j&k
LoopWhilew>0
Text1.Text=k
flag=False
EndIf
EndIf
EndSelect
EndSub
PrivateSubForm_Load()
Text1.Text=0
Option3.Value=True
flag=False
num1=0
num2=0
num3=0
EndSub
PrivateSubOption1_Click()
DimiAsInteger
DimaAsInteger
DimbAsString
Ifq=2Then
a=Val("&O"&Val(Text1.Text))
Do
i=aMod2
a=a\2
b=i&b
LoopWhilea>0
Text1.Text=b
ElseIfq=1Then
a=Val(Text1.Text)
Do
i=aMod2
a=a\2
b=i&b
LoopWhilea>0
Text1.Text=b
ElseIfq=4Then
a=Val("&H"&Text1.Text)
Do
i=aMod2
a=a\2
b=i&b
LoopWhilea>0
Text1.Text=b
EndIf
Fori=2To9
Command1(i).Enabled=False
Nexti
Fori=20To25
Command1(i).Enabled=False
Nexti
q=3
EndSub
PrivateSubOption2_Click()
Ifq=3Then
DimaAsString
DimbAsInteger
DimiAsInteger
DimtAsInteger
a=Val(Text1.Text)
b=0
Fori=1ToLen(a)
t=Asc(Mid(a,i,1))-48
b=b*2+t
Nexti
Text1.Text=Oct(b)
ElseIfq=1Then
Text1.Text=Oct(Val(Text1.Text))
ElseIfq=4Then
Text1.Text=Oct(Val("&H"&Text1.Text))
EndIf
Fori=2To7
Command1(i).Enabled=True
Nexti
Command1(8).Enabled=False
Command1(9).Enabled=False
Fori=20To25
Command1(i).Enabled=False
Nexti
q=2
EndSub
PrivateSubOption3_Click()
Ifq=2Then
Text1.Text=Val("&O"&Val(Text1.Text))
ElseIfq=3Then
DimaAsString
DimbAsInteger
DimiAsInteger
DimtAsInteger
a=Val(Text1.Text)
b=0
Fori=1ToLen(a)
t=Asc(Mid(a,i,1))-48
b=b*2+t
Nexti
Text1.Text=b
ElseIfq=4Then
Text1.Text=Val("&H"&Text1.Text)
EndIf
Fori=2To9
Command1(i).Enabled=True
Nexti
Fori=20To25
Command1(i).Enabled=False
Nexti
q=1
EndSub
PrivateSubOption4_Click()
DimaAsString
DimbAsInteger
DimiAsInteger
DimtAsInteger
Ifq=1Then
Text1.Text=Hex(Val(Text1.Text))
ElseIfq=2Then
a=Val("&0"&Val(Text1.Text))
Text1.Text=Hex(a)
ElseIfq=3Then
a=Val(Text1.Text)
b=0
Fori=1ToLen(a)
t=Asc(Mid(a,i,1))-48
b=b*2+t
Nexti
Text1.Text=Hex(b)
EndIf
Fori=2To25
Command1(i).Enabled=True
Nexti
q=4
EndSub
五.心得体会
.经过一个星期的上机实践学习,使我对VB有了更进一步的认识和了解,要想学好它要重在实践,要通过不断的上机操作才能更好地学习它,通过实践,我也发现我的好多不足之处,首先是自己在指法上还不行,经常按错字母,通过学习也有所改进;再有对VB的一些标准库函数不太了解,还有对函数调用的正确使用不够熟悉,还有对VB中经常出现的错误也不了解,同时在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固,通过实践,使我在这几个方面的认识有所提高.通过实践的学习,我认到学好计算机要重视实践操作,不仅仅是学习VB,还是其它的语言,以及其它的计算机方面的知识都要重在实践,所以后在学习过程中,我会更加注视实践操作,使自己便好地学好计算机
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- vb 计算器 设计 报告