Go语言实现汉诺塔算法
hano.go
packagemain
import(
"bufio"
"fmt"
"os"
"strconv"
)
funcmain(){
fmt.Print("输入要移动的盘子数:")
reader:=bufio.NewReader(os.Stdin)
lool:
data,_,_:=reader.ReadLine()
n,err:=strconv.Atoi(string(data))
iferr!=nil{
fmt.Println(err)
gotolool
}
hanoi(n,'A','B','C')
}
funchanoi(nint,a,b,cbyte){
ifn>1{
hanoi(n-1,a,c,b)
fmt.Printf("%c-->%c\n",a,c)
hanoi(n-1,b,a,c)
}else{
fmt.Printf("%c-->%c\n",a,c)
}
}
以上所述就是本文的全部内容了,希望大家能够喜欢。