某种纸牌游戏,三人一起玩一副牌,每人17张。5张及以上的连续单牌(不分花色)称为顺子,顺子最大到K,如“A,2,3,5,6”是长度为6的顺子。编写程序,判断游戏刚开始时某玩家有没有顺子,最长的顺子是几张。
(1)
实现上述功能的VB代码如下,但加框处代码有误,请改正。
Dim a(n) As Integer
Private Sub Command1_Click()
Dim max As Integer, count As Integer
Dim i As Integer, j As Integer
count=0: max=0
i=1
Do While i<=n-1
'① j=i+1 Do While j <= n If Then '② j=j+1 count=count+1 Else If a(j)=a(j-1) Then j=j+1 Else Exit Do End If Loop i= ③ If count>max Then max =count Loop If max<5 Then s ="无顺子" Else s= "最长顺子长度:"+Str(max) End Sub Private Sub Form_Load() '获取17张牌的数值(J、Q、K、A分别对应11、12、13、1),升序存储在数组a中 End Sub ① ②
(2)
请将划线处的代码补充完整。
答案: 【1】count= 1【2】a(j)=a(j-1)+ 1
j