Guest User

Untitled

a guest
Jan 16th, 2018
89
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.47 KB | None | 0 0
  1. package main
  2.  
  3. import "fmt"
  4.  
  5. func main() {
  6. val := 4
  7. var fib int = fib(val)
  8. fmt.Printf("fib(%v) = %v\n", val, fib)
  9.  
  10. fib2 := fib2(val)
  11. fmt.Printf("fib(%v) = %v\n", val, fib2)
  12. }
  13.  
  14. // recursive implementation
  15. func fib(n int) int {
  16. if n == 0 || n == 1 {
  17. return n
  18. }
  19. return fib(n-1) + fib(n-2)
  20. }
  21.  
  22. // iterative implementation
  23. func fib2(n int) int {
  24. if n == 0 || n == 1 {
  25. return n
  26. }
  27. a := 0
  28. b := 1
  29. c := 0
  30. for i := 2; i <= n; i++ {
  31. c = a + b
  32. a = b
  33. b = c
  34. }
  35. return c
  36. }
Add Comment
Please, Sign In to add comment