打字猴:1.70041499e+09
1700414990 ElseIf(A=1) And (B=1) Then
1700414991
1700414992   MsgBox “平局”
1700414993
1700414994 ElseIf(A=1) And (B=2) Then
1700414995
1700414996   MsgBox “玩家A获胜”
1700414997
1700414998 ElseIf(A=2) And (B=0) Then
1700414999
1700415000   MsgBox “玩家A获胜”
1700415001
1700415002 ElseIf(A=2) And (B=1) Then
1700415003
1700415004   MsgBox “玩家B获胜”
1700415005
1700415006 ElseIf(A=2) And (B=2) Then
1700415007
1700415008   MsgBox “平局”
1700415009
1700415010 End If
1700415011
1700415012 接下来试着在此加入些技巧吧。请仔细观察表5.2并找出数字间的一种规律,这个规律可简单地判定是玩家A获胜、玩家B获胜、平局这三种结果。可能需要习惯一下思维上的转变。但最终应该都可以发现如下的规律:
1700415013
1700415014 ²  如果变量A和变量B相等就是“平局”
1700415015
1700415016 ²  如果用B+1除以3得到的余数与变量A相等就是“玩家B获胜”
1700415017
1700415018 ²  其余的情况都是玩家A获胜
1700415019
1700415020 用程序来表示这个规律就得到了如代码清单5.5所示的代码,与没有使用任何技巧的代码清单5.4中的代码相比,可以发现处理过程简单并且代码短小精悍,当然程序的执行速度也会提升
1700415021
1700415022 代码清单5.5 判断石头剪刀布输赢的程序(方法二)
1700415023
1700415024 If A=B Then
1700415025
1700415026   MsgBox “平局”
1700415027
1700415028 ElseIf A=(B+1) Mod 3 Then
1700415029
1700415030   MsgBox “玩家B获胜”
1700415031
1700415032 Else
1700415033
1700415034   MsgBox “玩家A获得”
1700415035
1700415036 End If
1700415037
1700415038 构造算法时需要找出数字间的规律不仅适用于数学游戏,编写用于计算工资的应用程序时,计算工资的规则也可以说是一种数字上的规律。如果能够发现“工资=底薪+加班补贴+交通补贴-预扣税款”这样的规律,那么解决问题的步骤就是明确的,步骤数也是有限的,因此构造出的算法也就是优秀的。
1700415039
[ 上一页 ]  [ :1.70041499e+09 ]  [ 下一页 ]