Left factorials: Difference between revisions

Content added Content deleted
(Add Seed7 example)
(Add Nimrod)
Line 371: Line 371:
</pre>
</pre>


=={{header|Nimrod}}==
{{trans|Python}}
<lang nimrod>import iterutils, bigints

proc lfact: iterator: BigInt =
result = iterator: BigInt =
yield 0.initBigInt
var
fact = 1.initBigInt
sum = 0.initBigInt
n = 1.initBigInt
while true:
sum += fact
fact *= n
n += 1
yield sum

echo "first 11:\n "
for i in lfact().slice(last = 10):
echo " ", i

echo "20 through 110 (inclusive) by tens:"
for i in lfact().slice(20, 110, 10):
echo " ", i

echo "Digits in 1,000 through 10,000 (inclusive) by thousands:"
for i in lfact().slice(1_000, 10_000, 1_000):
echo " ", ($i).len</lang>
Output:
<pre>first 11:
0
1
2
4
10
34
154
874
5914
46234
409114
20 through 110 (inclusive) by tens:
128425485935180314
9157958657951075573395300940314
20935051082417771847631371547939998232420940314
620960027832821612639424806694551108812720525606160920420940314
141074930726669571000530822087000522211656242116439949000980378746128920420940314
173639511802987526699717162409282876065556519849603157850853034644815111221599509216528920420940314
906089587987695346534516804650290637694024830011956365184327674619752094289696314882008531991840922336528920420940314
16695570072624210767034167688394623360733515163575864136345910335924039962404869510225723072235842668787507993136908442336528920420940314
942786239765826579160595268206839381354754349601050974345395410407078230249590414458830117442618180732911203520208889371641659121356556442336528920420940314
145722981061585297004706728001906071948635199234860720988658042536179281328615541936083296163475394237524337422204397431927131629058103519228197429698252556442336528920420940314
Digits in 1,000 through 10,000 (inclusive) by thousands:
2565
5733
9128
12670
16322
20062
23875
27749
31678
35656</pre>


=={{header|PARI/GP}}==
=={{header|PARI/GP}}==