fork download
  1. // Y combinator revisited
  2.  
  3. Y = f => (x => f(y => x(x)(y)))(x => f(y => x(x)(y)));
  4. R = f => n => (n <= 1) ? n : f(n - 1) + f(n - 2);
  5. S = f => n => (n == 0) ? 1 : n * f(n - 1);
  6.  
  7. const fiby = Y(R);
  8. const facty = Y(S);
  9.  
  10. console.log("Fibonacci sequence:");
  11. for (let i = 0; i <= 20; i++) {
  12. console.log(`f(${i})=${fiby(i)}`);
  13. }
  14.  
  15. console.log("Factorial:");
  16. for (let i = 0; i <= 16; i++) {
  17. console.log(`${i}!=${facty(i)}`);
  18. }
Success #stdin #stdout 0.04s 20568KB
stdin
Standard input is empty
stdout
Fibonacci sequence:
f(0)=0
f(1)=1
f(2)=1
f(3)=2
f(4)=3
f(5)=5
f(6)=8
f(7)=13
f(8)=21
f(9)=34
f(10)=55
f(11)=89
f(12)=144
f(13)=233
f(14)=377
f(15)=610
f(16)=987
f(17)=1597
f(18)=2584
f(19)=4181
f(20)=6765
Factorial:
0!=1
1!=1
2!=2
3!=6
4!=24
5!=120
6!=720
7!=5040
8!=40320
9!=362880
10!=3628800
11!=39916800
12!=479001600
13!=6227020800
14!=87178291200
15!=1307674368000
16!=20922789888000