導航:首頁 > 編程語言 > 用vb編寫漢諾塔程序的代碼

用vb編寫漢諾塔程序的代碼

發布時間:2024-11-15 18:25:57

A. vb漢諾塔程序設計代碼

Option Explicit
Private Sub hanoi(n As Integer, one As String, two As String, three As String)
If n = 1 Then
Print Tab(5); one; "------->"; three
Else
Call hanoi(n - 1, one, three, two)
Print Tab(5); one; "------->"; three
Call hanoi(n - 1, two, one, three)
End If
End Sub
Private Sub Form_Click()
Dim x As Integer
x = Val(InputBox("請輸入圓盤的個數"))
Print Tab(5); "將" & x & "個圓盤從A柱移到C柱的移動順序為"
Call hanoi(x, "A", "B", "C")
End Sub

B. 漢諾塔問題VB遞歸演算法實現

碟子移動規則如下:
1. 如果碟子總數為奇數,則首先將最小碟子(編號為1)移動到3號柱上;如果碟子總數為偶數,則移動到2號柱上。
2. 然後檢查3號柱是否已放滿碟子。若未滿,則重復步驟1直至所有碟子正確放置。
3. 下次移動的碟子根據前一個移動碟子編號的奇偶性來確定:
- 若前一個移動碟子編號為偶數,則本次移動的目標柱與上次相同,來源柱變改。
- 若前一個移動碟子編號為奇數,則本次移動的目標柱不變,比較另外兩柱子上碟子編號。將較小的碟子移動到較大的碟子上。若其中一柱無碟,將另一柱最上層碟子移動給它。

C. 關於漢諾塔問題的盡可能多的信息

漢諾塔
漢諾塔(又稱河內塔)問題是印度的一個古老的傳說。開天闢地的神勃拉瑪在一個廟里留下了三根金剛石的棒,第一根上面套著64個圓的金片,最大的一個在底下,其餘一個比一個小,依次疊上去,廟里的眾僧不倦地把它們一個個地從這根棒搬到另一根棒上,規定可利用中間的一根棒作為幫助,但每次只能搬一個,而且大的不能放在小的上面。解答結果請自己運行計算,程序見尾部。面對龐大的數字(移動圓片的次數)18446744073709551615,看來,眾僧們耗盡畢生精力也不可能完成金片的移動。

後來,這個傳說就演變為漢諾塔游戲:

1.有三根桿子A,B,C。A桿上有若干碟子
2.每次移動一塊碟子,小的只能疊在大的上面
3.把所有碟子從A桿全部移到C桿上

經過研究發現,漢諾塔的破解很簡單,就是按照移動規則向一個方向移動金片:
如3階漢諾塔的移動:A→C,A→B,C→B,A→C,B→A,B→C,A→C

此外,漢諾塔問題也是程序設計中的經典遞歸問題。

補充:漢諾塔的演算法實現(c++)
#include <fstream>
#include <iostream>
using namespace std;

ofstream fout("out.txt");

void Move(int n,char x,char y)
{
fout<<"把"<<n<<"號從"<<x<<"挪動到"<<y<<endl;
}

void Hannoi(int n,char a,char b,char c)
{
if(n==1)
Move(1,a,c);
else
{
Hannoi(n-1,a,c,b);
Move(n,a,c);
Hannoi(n-1,b,a,c);
}
}

int main()
{
fout<<"以下是7層漢諾塔的解法:"<<endl;
Hannoi(7,'a','b','c');
fout.close();
cout<<"輸出完畢!"<<endl;
return 0;
}

如果你的機子足夠快,硬碟160G以上的化,可以把以上的程序改成64,運行完畢就是64漢諾塔的解法了。

閱讀全文

與用vb編寫漢諾塔程序的代碼相關的資料

熱點內容
怎麼休改文件名 瀏覽:989
cdr導出圖片不顯示文件名 瀏覽:761
pcdmis如何離線編程 瀏覽:201
微信推文插入文件 瀏覽:844
生產文件櫃圖片 瀏覽:244
如何設置微信數據增加 瀏覽:95
excel文件不再增大 瀏覽:613
ug編程刀路怎麼復制不用滑鼠選取 瀏覽:97
excel文件打開擴展名錯誤 瀏覽:10
阿里巴巴怎麼做數據包 瀏覽:442
無線網路連接一直顯示未連接 瀏覽:25
windows7如何自動激活工具下載 瀏覽:57
天語救磚工具 瀏覽:839
網路體育課程有哪些 瀏覽:19
蘋果微信怎麼查看文件 瀏覽:165
安卓nba2k14面補替換 瀏覽:450
路由器密碼定時換 瀏覽:626
aicc恢復文件在哪裡 瀏覽:167
怎麼查無線網路屬性 瀏覽:874
只狼的聲音文件放在哪裡 瀏覽:219

友情鏈接