加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

汉诺塔VB实现

发布时间:2020-12-17 07:56:05 所属栏目:百科 来源:网络整理
导读:Dim num As Integer '盘子的个数 Private Sub Hanoi(n As Integer,A As String,B As String,C As String) '移动盘子的递归过程 If n = 1 Then Call Moves(A,C) Else Call Hanoi(n - 1,A,C,B) Call Hanoi(1,B,C) Call Hanoi(n - 1,C) End IfEnd Sub Private S
Dim num As Integer '盘子的个数
Private Sub Hanoi(n As Integer,A As String,B As String,C As String) '移动盘子的递归过程
  If n = 1 Then
    Call Moves(A,C)
  Else
    Call Hanoi(n - 1,A,C,B)
    Call Hanoi(1,B,C)
    Call Hanoi(n - 1,C)
  End If
End Sub
Private Sub Moves(A As String,B As String) '移动
  Print A & "->" & B   '移动结果打印到屏幕上
  List1.AddItem A & "->" & B '移动结果输出到列表框中
End Sub
Private Sub Command1_Click() '赋值及过程调用
num = Val(Text1.Text)
Call Hanoi(num,"A","B","C")
End Sub

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读