欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Go语言实现汉诺塔算法

程序员文章站 2023-12-24 16:01:09
hano.go package main import ( "bufio" "fmt" "os" "strconv" ) func...

hano.go

package main
import (
  "bufio"
  "fmt"
  "os"
  "strconv"
)
func main() {
  fmt.print("输入要移动的盘子数:")
  reader := bufio.newreader(os.stdin)
lool:
  data, _, _ := reader.readline()
  n, err := strconv.atoi(string(data))
  if err != nil {
    fmt.println(err)
    goto lool
  }
  hanoi(n, 'a', 'b', 'c')
}
func hanoi(n int, a, b, c byte) {
  if n > 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)
  }
}

以上所述就是本文的全部内容了,希望大家能够喜欢。

上一篇:

下一篇: