内容正文:
VB解析算法与枚举算法
任务一【编写出租车计价器】
1. 出租车的收费标准是:3公里内(含3公里)收费10元,超过3公里的部分每公里收费2元,超过起步里程10公里以上的部分每公里花2.8元。(少于1公里按1公里计算),请使用VB程序编写出租车计价器。
2. 列出解析表达式
3. 根据VB程序设计界面以及所列出的解析表达式,编写代码
Private Sub Command1_Click()
Dim X As SIngle
Dim Y As Single
X = Val(Text1.Text)
Text2.Text = Str(Y)+"元"
End Sub
思考:
若计程车里程为21.8公里时,该程序该如何改进? (不足1公里按1公里计算)请写出优化的代码。
任务二【猜银行卡密码】
1. 六位的银行密码中,后三位密码缺失,该密码是12和17的倍数。大家想想办法,帮她找出满足条件的密码并统计满足条件的密码个数。
(
952
)
2. 根据对题意的理解和VB程序设计界面,补写代码。
(
Private Sub Command1_Click()
Dim N As Long, c As Integer
c= 0
For N=________To ________ Step 1
If ____________________ Then
c =c + 1
List1.AddItem N
End If
Next N
Text1.Text = _________________
End Sub
)
微总结
枚举算法
解析算法
基本思想
在一定的范围内,对所有可能的解进行一一列举,并通过条件判断求解问题的所有解。
如:要求100以内所有的素数,就可以采用枚举算法。
找出问题的前提条件与所求结果之间关系的数学表达式,并通过表达式的计算来实现问题求解。
如:计算1+2+3+…+100的和,可通过求和公式s=n(n+1)/2得到。
辨别方法
(1) 确定枚举对象、枚举范围和判断条件。
(2) 一一列举所有可能的解,验证是否是问题的解。【For语句、If语句】
(1) 建立正确的数学模型(得出正确的数学表达式)。
(2) 保证计算过程描述的正确性。