Data commit
This commit is contained in:
parent
7387c8f97b
commit
cb5bb5e222
199093 changed files with 3378972 additions and 0 deletions
6
Task/Fibonacci-sequence/Go/fibonacci-sequence-1.go
Normal file
6
Task/Fibonacci-sequence/Go/fibonacci-sequence-1.go
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
func fib(a int) int {
|
||||
if a < 2 {
|
||||
return a
|
||||
}
|
||||
return fib(a - 1) + fib(a - 2)
|
||||
}
|
||||
15
Task/Fibonacci-sequence/Go/fibonacci-sequence-2.go
Normal file
15
Task/Fibonacci-sequence/Go/fibonacci-sequence-2.go
Normal file
|
|
@ -0,0 +1,15 @@
|
|||
import (
|
||||
"math/big"
|
||||
)
|
||||
|
||||
func fib(n uint64) *big.Int {
|
||||
if n < 2 {
|
||||
return big.NewInt(int64(n))
|
||||
}
|
||||
a, b := big.NewInt(0), big.NewInt(1)
|
||||
for n--; n > 0; n-- {
|
||||
a.Add(a, b)
|
||||
a, b = b, a
|
||||
}
|
||||
return b
|
||||
}
|
||||
16
Task/Fibonacci-sequence/Go/fibonacci-sequence-3.go
Normal file
16
Task/Fibonacci-sequence/Go/fibonacci-sequence-3.go
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
func fibNumber() func() int {
|
||||
fib1, fib2 := 0, 1
|
||||
return func() int {
|
||||
fib1, fib2 = fib2, fib1 + fib2
|
||||
return fib1
|
||||
}
|
||||
}
|
||||
|
||||
func fibSequence(n int) int {
|
||||
f := fibNumber()
|
||||
fib := 0
|
||||
for i := 0; i < n; i++ {
|
||||
fib = f()
|
||||
}
|
||||
return fib
|
||||
}
|
||||
15
Task/Fibonacci-sequence/Go/fibonacci-sequence-4.go
Normal file
15
Task/Fibonacci-sequence/Go/fibonacci-sequence-4.go
Normal file
|
|
@ -0,0 +1,15 @@
|
|||
func fib(c chan int) {
|
||||
a, b := 0, 1
|
||||
for {
|
||||
c <- a
|
||||
a, b = b, a+b
|
||||
}
|
||||
}
|
||||
|
||||
func main() {
|
||||
c := make(chan int)
|
||||
go fib(c)
|
||||
for i := 0; i < 10; i++ {
|
||||
fmt.Println(<-c)
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue