mirror of
https://github.com/unknwon/the-way-to-go_ZH_CN.git
synced 2025-08-12 04:48:29 +08:00
25 lines
443 B
Go
Executable File
25 lines
443 B
Go
Executable File
package main
|
|
|
|
import "fmt"
|
|
|
|
func main() {
|
|
pos := 4
|
|
result, pos := fibonacci(pos)
|
|
fmt.Printf("the %d-th fibonacci number is: %d\n", pos, result)
|
|
pos = 10
|
|
result, pos = fibonacci(pos)
|
|
fmt.Printf("the %d-th fibonacci number is: %d\n", pos, result)
|
|
}
|
|
|
|
func fibonacci(n int) (val, pos int) {
|
|
if n <= 1 {
|
|
val = 1
|
|
} else {
|
|
v1, _ := fibonacci(n-1)
|
|
v2, _ := fibonacci(n-2)
|
|
val = v1 + v2
|
|
}
|
|
pos = n
|
|
return
|
|
}
|