Add tasks for all the new languages
This commit is contained in:
parent
9dc3c2bb62
commit
bba7bfd280
13208 changed files with 134745 additions and 0 deletions
5
Task/Fibonacci-sequence/Nim/fibonacci-sequence-1.nim
Normal file
5
Task/Fibonacci-sequence/Nim/fibonacci-sequence-1.nim
Normal file
|
|
@ -0,0 +1,5 @@
|
|||
proc Fibonacci(n: int): int64 =
|
||||
var fn = float64(n)
|
||||
var p: float64 = (1.0 + sqrt(5.0)) / 2.0
|
||||
var q: float64 = 1.0 / p
|
||||
return int64((pow(p, fn) + pow(q, fn)) / sqrt(5.0))
|
||||
10
Task/Fibonacci-sequence/Nim/fibonacci-sequence-2.nim
Normal file
10
Task/Fibonacci-sequence/Nim/fibonacci-sequence-2.nim
Normal file
|
|
@ -0,0 +1,10 @@
|
|||
proc Fibonacci(n: int): int =
|
||||
var
|
||||
first = 0
|
||||
second = 1
|
||||
|
||||
for i in 0 .. <n:
|
||||
swap first, second
|
||||
second += first
|
||||
|
||||
result = first
|
||||
5
Task/Fibonacci-sequence/Nim/fibonacci-sequence-3.nim
Normal file
5
Task/Fibonacci-sequence/Nim/fibonacci-sequence-3.nim
Normal file
|
|
@ -0,0 +1,5 @@
|
|||
proc Fibonacci(n: int): int64 =
|
||||
if n <= 2:
|
||||
result = 1
|
||||
else:
|
||||
result = Fibonacci(n - 1) + Fibonacci(n - 2)
|
||||
7
Task/Fibonacci-sequence/Nim/fibonacci-sequence-4.nim
Normal file
7
Task/Fibonacci-sequence/Nim/fibonacci-sequence-4.nim
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
proc Fibonacci(n: int, current: int64, next: int64): int64 =
|
||||
if n == 0:
|
||||
result = current
|
||||
else:
|
||||
result = Fibonacci(n - 1, next, current + next)
|
||||
proc Fibonacci(n: int): int64 =
|
||||
result = Fibonacci(n, 0, 1)
|
||||
11
Task/Fibonacci-sequence/Nim/fibonacci-sequence-5.nim
Normal file
11
Task/Fibonacci-sequence/Nim/fibonacci-sequence-5.nim
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
iterator fib: int {.closure.} =
|
||||
var a = 0
|
||||
var b = 1
|
||||
while true:
|
||||
yield a
|
||||
swap a, b
|
||||
b = a + b
|
||||
|
||||
var f = fib
|
||||
for i in 0.. <10:
|
||||
echo f()
|
||||
Loading…
Add table
Add a link
Reference in a new issue