17.如圖1所示,這是一個(gè)城市街道簡(jiǎn)圖,小明從A點(diǎn)出發(fā),到達(dá)B點(diǎn),如果在每一個(gè)路口只 能向右或向上走(0 表示向上走,1表示向右走),問(wèn)小明有多少條行走路線,并請(qǐng)輸出每條路線。程序界面如圖2所示。
算法分析:從A點(diǎn)到B點(diǎn)共有7個(gè)路口,即可以有一個(gè)7位二進(jìn)制數(shù)表示所走路線。觀察以上路線,枚舉所有滿足路線特征的7 位二進(jìn)制數(shù),再去掉不滿足的二進(jìn)制數(shù)即可。
(1)圖1所示路線對(duì)應(yīng)的十進(jìn)制數(shù)為
。
(2)實(shí)現(xiàn)上述功能的VB程序如下,請(qǐng)?jiān)跈M線處填入合適的代碼。Private Sub Command1_Click ( ?。?br />Dim bAs String,t As Integer,iAs Integer,c As Integer,d AsInteger
t=0'可走路線計(jì)數(shù)
For i=15To120'所有可走路線用十進(jìn)制枚舉
d=i
c=0
b=““
Do While d<>0
If d Mod 2=1Then
b=“1“+b
c=c+1
If c>4Then Exit Do'若“1“的總數(shù)超過(guò)4個(gè)表示路線錯(cuò)誤,需退出Do循環(huán) Else
①
End If
②
Loop
If c=4And Len(b)=7Then
t=t+1
List1.AddItem b End If
Next i
Label1.Caption=Str(t)+“條“End Sub