解析法设计程序
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
'设计一个程序:已知三边长求三角形面积?
Private Sub Command1_Click()
dim a!,b!,c!,p!
a=val(text1.text)
b=val(text2.text)
c=val(text3.text)
p=(a+b+c)/2
text4.text=sqr(p*(p-a)*(p-b)*(p-c)) ’解析法:通过建立变量间的关系表达式来设计程序解决问题的方法
End Sub
'------------------------------
求五边形面积代码(可分三个模块):
Private Sub Command1_Click()
Dim a!, b!, c!, d!, e!, f!, g!
a = Val(Text1.Text)
b = Val(Text2.Text)
c = Val(Text3.Text)
d = Val(Text4.Text)
e = Val(Text5.Text)
f = Val(Text6.Text)
g = Val(Text7.Text)
Text8.Text = area(a, b, f) + area(d, e, g) + area(c, f, g)
End Sub
Public Function area(a!, b!, c!) As Single
p = (a + b + c) / 2
area = Sqr(p * (p - a) * (p - b) * (p - c))
End Function
'练习实践:键盘输入一个三位数,再将其反向输出:
Private Sub Command1_Click()
Dim a%, b%, c%, n%
n = InputBox("输入一个三位数:")
Print "这个三位数是:", n
a = n \ 100
b = (n Mod 100) \ 10
c = n Mod 10
Print "反向输出为:", 100 * c + 10 * b + a
End Sub
’练习实践:十进制数转换为二进制数代码:
Private Sub Command1_Click()
dim n%,r%,y$
ch = "01"
n=val(inputbox("输入一个10进制数:"))
Do While n > 0
r = n Mod 2
n = n\2
y = Mid(ch, r + 1, 1) & y '换码反序加入
Loop
print "二进制代码是:",y
End Sub