Data update
This commit is contained in:
parent
ed705008a8
commit
0df55f9f24
2196 changed files with 32999 additions and 3075 deletions
20
Task/Fibonacci-sequence/Bruijn/fibonacci-sequence-1.bruijn
Normal file
20
Task/Fibonacci-sequence/Bruijn/fibonacci-sequence-1.bruijn
Normal file
|
|
@ -0,0 +1,20 @@
|
|||
:import std/Combinator .
|
||||
:import std/Math .
|
||||
:import std/List .
|
||||
|
||||
# unary/Church fibonacci (moderately fast but very high space complexity)
|
||||
fib-unary [0 [[[2 0 [2 (1 0)]]]] k i]
|
||||
|
||||
:test (fib-unary (+6u)) ((+8u))
|
||||
|
||||
# ternary fibonacci using infinite list iteration (very fast)
|
||||
fib-list \index fibs
|
||||
fibs head <$> (iterate &[[0 : (1 + 0)]] ((+0) : (+1)))
|
||||
|
||||
:test (fib-list (+6)) ((+8))
|
||||
|
||||
# recursive fib (very slow)
|
||||
fib-rec y [[0 <? (+1) (+0) (0 <? (+2) (+1) rec)]]
|
||||
rec (1 --0) + (1 --(--0))
|
||||
|
||||
:test (fib-rec (+6)) ((+8))
|
||||
|
|
@ -0,0 +1,8 @@
|
|||
> :time fib-list (+1000)
|
||||
0.9 seconds
|
||||
> :time fib-unary (+50u)
|
||||
1.7 seconds
|
||||
> :time fib-rec (+25)
|
||||
5.1 seconds
|
||||
> :time fib-list (+50)
|
||||
0.0006 seconds
|
||||
|
|
@ -1,14 +1,17 @@
|
|||
START ;First 10 Fibonacci NUmbers
|
||||
; Redone to include the first two values that
|
||||
; are noot computed.
|
||||
|
||||
START ;First 15 Fibonacci NUmbers
|
||||
|
||||
|
||||
RECORD
|
||||
FIB1, D10, 0
|
||||
FIB2, D10, 1
|
||||
FIBNEW, D10
|
||||
LOOPCNT, D2, 1
|
||||
LOOPCNT, D2, 3
|
||||
|
||||
RECORD HEADER
|
||||
, A32, "First 10 Fibonacci Numbers."
|
||||
, A32, "First 15 Fibonacci Numbers."
|
||||
|
||||
RECORD OUTPUT
|
||||
LOOPOUT, A2
|
||||
|
|
@ -21,6 +24,17 @@
|
|||
|
||||
WRITES(8,HEADER)
|
||||
|
||||
; The First Two are given.
|
||||
|
||||
FIBOUT = 0
|
||||
LOOPOUT = 1
|
||||
WRITES(8,OUTPUT)
|
||||
FIBOUT = 1
|
||||
LOOPOUT = 2
|
||||
WRITES(8,OUTPUT)
|
||||
|
||||
; The Rest are Computed.
|
||||
|
||||
LOOP,
|
||||
FIBNEW = FIB1 + FIB2
|
||||
LOOPOUT = LOOPCNT, 'ZX'
|
||||
|
|
@ -32,7 +46,7 @@
|
|||
FIB2 = FIBNEW
|
||||
|
||||
LOOPCNT = LOOPCNT + 1
|
||||
IF LOOPCNT .LE. 10 GOTO LOOP
|
||||
IF LOOPCNT .LE. 15 GOTO LOOP
|
||||
|
||||
CLOSE 8
|
||||
END
|
||||
|
|
|
|||
|
|
@ -9,7 +9,7 @@ fibu(n)
|
|||
}
|
||||
else
|
||||
{
|
||||
for(int i := 2, i <= n, i+=1)
|
||||
for(int i := 2; i <= n; i+=1)
|
||||
{
|
||||
int t := ac[1];
|
||||
ac[1] := ac[0] + ac[1];
|
||||
|
|
@ -22,7 +22,7 @@ fibu(n)
|
|||
|
||||
public program()
|
||||
{
|
||||
for(int i := 0, i <= 10, i+=1)
|
||||
for(int i := 0; i <= 10; i+=1)
|
||||
{
|
||||
console.printLine(fibu(i))
|
||||
}
|
||||
|
|
|
|||
|
|
@ -26,7 +26,7 @@ public program()
|
|||
{
|
||||
auto e := new FibonacciGenerator();
|
||||
|
||||
for(int i := 0, i < 10, i += 1) {
|
||||
for(int i := 0; i < 10; i += 1) {
|
||||
console.printLine(e.next())
|
||||
};
|
||||
|
||||
|
|
|
|||
6
Task/Fibonacci-sequence/Elm/fibonacci-sequence-2.elm
Normal file
6
Task/Fibonacci-sequence/Elm/fibonacci-sequence-2.elm
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
fib : Int -> number
|
||||
fib n =
|
||||
case n of
|
||||
0 -> 0
|
||||
1 -> 1
|
||||
_ -> fib (n-1) + fib (n-2)
|
||||
|
|
@ -1,4 +1,17 @@
|
|||
to fib :n [:a 0] [:b 1]
|
||||
if :n < 1 [output :a]
|
||||
output (fib :n-1 :b :a+:b)
|
||||
to fib "loop
|
||||
make "fib1 0
|
||||
make "fib2 1
|
||||
|
||||
type [You requested\ ]
|
||||
type :loop
|
||||
print [\ Fibonacci Numbers]
|
||||
type :fib1
|
||||
type [\ ]
|
||||
type :fib2
|
||||
type [\ ]
|
||||
|
||||
make "loop :loop - 2
|
||||
repeat :loop [ make "fibnew :fib1 + :fib2 type :fibnew type [\ ] make "fib1 :fib2 make "fib2 :fibnew ]
|
||||
print [\ ]
|
||||
|
||||
end
|
||||
|
|
|
|||
7
Task/Fibonacci-sequence/ParaCL/fibonacci-sequence.paracl
Normal file
7
Task/Fibonacci-sequence/ParaCL/fibonacci-sequence.paracl
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
fibbonachi = func(x) : fibb
|
||||
{
|
||||
res = 1;
|
||||
if (x > 1)
|
||||
res = fibb(x - 1) + fibb(x - 2);
|
||||
res;
|
||||
}
|
||||
26
Task/Fibonacci-sequence/RATFOR/fibonacci-sequence.ratfor
Normal file
26
Task/Fibonacci-sequence/RATFOR/fibonacci-sequence.ratfor
Normal file
|
|
@ -0,0 +1,26 @@
|
|||
program Fibonacci
|
||||
#
|
||||
integer*4 count, loop
|
||||
integer*4 num1, num2, fib
|
||||
|
||||
1 format(A)
|
||||
2 format(I4)
|
||||
3 format(I6,' ')
|
||||
4 format(' ')
|
||||
write(6,1,advance='no')'How Many: '
|
||||
read(5,2)count
|
||||
|
||||
num1 = 0
|
||||
num2 = 1
|
||||
write(6,3,advance='no')num1
|
||||
write(6,3,advance='no')num2
|
||||
|
||||
for (loop = 3; loop<=count; loop=loop+1)
|
||||
{
|
||||
fib = num1 + num2
|
||||
write(6,3,advance='no')fib
|
||||
num1 = num2
|
||||
num2 = fib
|
||||
}
|
||||
write(6,4)
|
||||
end
|
||||
12
Task/Fibonacci-sequence/Refal/fibonacci-sequence.refal
Normal file
12
Task/Fibonacci-sequence/Refal/fibonacci-sequence.refal
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
$ENTRY Go {
|
||||
= <Prout <Repeat 18 Fibonacci 1 1>>
|
||||
} ;
|
||||
|
||||
Repeat {
|
||||
0 s.F e.X = e.X;
|
||||
s.N s.F e.X = <Repeat <- s.N 1> s.F <Mu s.F e.X>>;
|
||||
};
|
||||
|
||||
Fibonacci {
|
||||
e.X s.A s.B = e.X s.A s.B <+ s.A s.B>;
|
||||
};
|
||||
|
|
@ -1,4 +1,7 @@
|
|||
loop [a 0, b 1, i 1 ]:
|
||||
say: a
|
||||
(i < 10) ?:
|
||||
^^^: b, (a + b), (i + 1)
|
||||
!yamlscript/v0
|
||||
|
||||
defn main(n=10):
|
||||
loop [a 0, b 1, i 1]:
|
||||
say: a
|
||||
if (i < n):
|
||||
recur: b, (a + b), (i + 1)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue