This is a front-end for the Online Encyclopedia of Integer Sequences, made by Christian Perfect. The idea is to provide OEIS entries in non-ancient HTML, and then to think about how they're presented visually. The source code is on GitHub.
%I A045548 #36 Dec 07 2023 17:36:38 %S A045548 4,7,20,21,23,25,26,28,37,42,49,52,55,56,58,64,69,75,76,78,87,92,99, %T A045548 100,101,103,112,117,124,134,135,136,138,140,141,143,147,152,155,156, %U A045548 158,164,169,179,182,195,196,198,202,205,206,208,214,219 %N A045548 Numbers whose factorial has '4' as its final nonzero digit. %C A045548 From _Robert Israel_, Dec 16 2016: (Start) %C A045548 If n is in the sequence, then: %C A045548 if n == 0 (mod 5), n+1 is in the sequence; %C A045548 if n == 1 (mod 5), n+1 is in A045550; %C A045548 if n == 2 (mod 5), n+1 is in A045547; %C A045548 if n == 3 (mod 5), n+1 is in A045549. (End) %H A045548 Robert Israel, <a href="/A045548/b045548.txt">Table of n, a(n) for n = 1..10000</a> %H A045548 <a href="/index/Fi#final">Index entries for sequences related to final digits of numbers</a> %p A045548 count:= 0: %p A045548 r:= 1: %p A045548 for n from 2 while count < 100 do %p A045548 r:= r*n; %p A045548 if r mod 10 = 0 then r:= r/10^padic:-ordp(r, 5) fi; %p A045548 if r mod 10 = 4 then count:= count+1; A[count]:= n fi; %p A045548 od: seq(A[i], i=1..100); # _Robert Israel_, Dec 16 2016 %t A045548 f[n_] := Mod[6 Times @@ (Rest[ FoldList[{1 + #1[[1]], #2! 2^(#1[[1]] #2)} &, {0, 0}, Reverse[ IntegerDigits[n, 5]]]]), 10][[2]] (* after _Jacob A. Siehler_ & _Greg Dresden_ in A008904 *); f[0] = f[1] = 1; Select[ Range[150], f[#] == 4 &] (* _Robert G. Wilson v_, Dec 28 2016 *) %o A045548 (Python) %o A045548 from itertools import count, islice %o A045548 from functools import reduce %o A045548 from sympy.ntheory.factor_ import digits %o A045548 def A045548_gen(startvalue=1): # generator of terms >= startvalue %o A045548 return filter(lambda n:4==reduce(lambda x,y:x*y%10,(((6,2,4,8,6,2,4,8,2,4,8,6,6,2,4,8,4,8,6,2)[(a<<2)|(i*a&3)] if i*a else (1,1,2,6,4)[a]) for i, a in enumerate(digits(n,5)[-1:0:-1])),6), count(max(startvalue,1))) %o A045548 A045548_list = list(islice(A045548_gen(),30)) # _Chai Wah Wu_, Dec 07 2023 %Y A045548 Cf. A000142, A008904, A045547, A045549, A045550. %K A045548 nonn,base %O A045548 1,1 %A A045548 _Jeff Burch_