(for ((n 11)) (printf "!n(%d) = %d" n (!n n))) (for ((n (in-range 20 120 10))) (printf "!n(%d) = %d" n (!n n))) !n(0) = 0 !n(1) = 1 !n(2) = 2 !n(3) = 4 !n(4) = 10 !n(5) = 34 !n(6) = 154 !n(7) = 874 !n(8) = 5914 !n(9) = 46234 !n(10) = 409114 !n(20) = 128425485935180314 !n(30) = 9157958657951075573395300940314 !n(40) = 20935051082417771847631371547939998232420940314 !n(50) = 620960027832821612639424806694551108812720525606160920420940314 !n(60) = 141074930726669571000530822087000522211656242116439949000980378746128920420940314 !n(70) = 173639511802987526699717162409282876065556519849603157850853034644815111221599509216528920420940314 !n(80) = 906089587987695346534516804650290637694024830011956365184327674619752094289696314882008531991840922336528920420940314 !n(90) = 16695570072624210767034167688394623360733515163575864136345910335924039962404869510225723072235842668787507993136908442336528920420940314 !n(100) = 942786239765826579160595268206839381354754349601050974345395410407078230249590414458830117442618180732911203520208889371641659121356556442336528920420940314 !n(110) = 145722981061585297004706728001906071948635199234860720988658042536179281328615541936083296163475394237524337422204397431927131629058103519228197429698252556442336528920420940314 ; Compute !n : 5 seconds (for ((n (in-range 1000 10001 500))) (!n n) (writeln n)) ; Display results : 12 seconds (for ((n (in-range 1000 10001 1000))) (printf "Digits of !n(%d) = %d" n (number-length (!n n)))) Digits of !n(1000) = 2565 Digits of !n(2000) = 5733 Digits of !n(3000) = 9128 Digits of !n(4000) = 12670 Digits of !n(5000) = 16322 Digits of !n(6000) = 20062 Digits of !n(7000) = 23875 Digits of !n(8000) = 27749 Digits of !n(9000) = 31678 Digits of !n(10000) = 35656