hano.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
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)
}
}
|
以上所述就是本文的全部内容了,希望大家能够喜欢。