当前位置: 移动技术网 > IT编程>脚本编程>Go语言 > Go语言实现汉诺塔算法

Go语言实现汉诺塔算法

2017年12月08日  | 移动技术网IT编程  | 我要评论
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)
  }
}

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

如您对本文有疑问或者有任何想说的,请 点击进行留言回复,万千网友为您解惑!

相关文章:

验证码:
移动技术网