cp's OEIS Frontend

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.

Showing 1-6 of 6 results.

A007953 Digital sum (i.e., sum of digits) of n; also called digsum(n).

Original entry on oeis.org

0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 8, 9, 10, 11, 12, 13, 14, 15
Offset: 0

Views

Author

R. Muller

Keywords

Comments

Do not confuse with the digital root of n, A010888 (first term that differs is a(19)).
Also the fixed point of the morphism 0 -> {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}, 1 -> {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}, 2 -> {2, 3, 4, 5, 6, 7, 8, 9, 10, 11}, etc. - Robert G. Wilson v, Jul 27 2006
For n < 100 equal to (floor(n/10) + n mod 10) = A076314(n). - Hieronymus Fischer, Jun 17 2007
It appears that a(n) is the position of 10*n in the ordered set of numbers obtained by inserting/placing one digit anywhere in the digits of n (except a zero before 1st digit). For instance, for n=2, the resulting set is (12, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 32, 42, 52, 62, 72, 82, 92) where 20 is at position 2, so a(2) = 2. - Michel Marcus, Aug 01 2022
Also the total number of beads required to represent n on a Russian abacus (schoty). - P. Christopher Staecker, Mar 31 2023
a(n) / a(2n) <= 5 with equality iff n is in A169964, while a(n) / a(3n) is unbounded, since if n = (10^k + 2)/3, then a(n) = 3*k+1, a(3n) = 3, so a(n) / a(3n) = k + 1/3 -> oo when k->oo (see Diophante link). - Bernard Schott, Apr 29 2023
Also the number of symbols needed to write number n in Egyptian numerals for n < 10^7. - Wojciech Graj, Jul 10 2025

Examples

			a(123) = 1 + 2 + 3 = 6, a(9875) = 9 + 8 + 7 + 5 = 29.
		

Crossrefs

Programs

  • Haskell
    a007953 n | n < 10 = n
              | otherwise = a007953 n' + r where (n',r) = divMod n 10
    -- Reinhard Zumkeller, Nov 04 2011, Mar 19 2011
    
  • Magma
    [ &+Intseq(n): n in [0..87] ];  // Bruno Berselli, May 26 2011
    
  • Maple
    A007953 := proc(n) add(d,d=convert(n,base,10)) ; end proc: # R. J. Mathar, Mar 17 2011
  • Mathematica
    Table[Sum[DigitCount[n][[i]] * i, {i, 9}], {n, 50}] (* Stefan Steinerberger, Mar 24 2006 *)
    Table[Plus @@ IntegerDigits @ n, {n, 0, 87}] (* or *)
    Nest[Flatten[# /. a_Integer -> Array[a + # &, 10, 0]] &, {0}, 2] (* Robert G. Wilson v, Jul 27 2006 *)
    Total/@IntegerDigits[Range[0,90]] (* Harvey P. Dale, May 10 2016 *)
    DigitSum[Range[0, 100]] (* Requires v. 14 *) (* Paolo Xausa, May 17 2024 *)
  • PARI
    a(n)=if(n<1, 0, if(n%10, a(n-1)+1, a(n/10))) \\ Recursive, very inefficient. A more efficient recursive variant: a(n)=if(n>9, n=divrem(n, 10); n[2]+a(n[1]), n)
    
  • PARI
    a(n, b=10)={my(s=(n=divrem(n, b))[2]); while(n[1]>=b, s+=(n=divrem(n[1], b))[2]); s+n[1]} \\ M. F. Hasler, Mar 22 2011
    
  • PARI
    a(n)=sum(i=1, #n=digits(n), n[i]) \\ Twice as fast. Not so nice but faster:
    
  • PARI
    a(n)=sum(i=1,#n=Vecsmall(Str(n)),n[i])-48*#n \\ M. F. Hasler, May 10 2015
    /* Since PARI 2.7, one can also use: a(n)=vecsum(digits(n)), or better: A007953=sumdigits. [Edited and commented by M. F. Hasler, Nov 09 2018] */
    
  • PARI
    a(n) = sumdigits(n); \\ Altug Alkan, Apr 19 2018
    
  • Python
    def A007953(n):
        return sum(int(d) for d in str(n)) # Chai Wah Wu, Sep 03 2014
    
  • Python
    def a(n): return sum(map(int, str(n))) # Michael S. Branicky, May 22 2021
    
  • Scala
    (0 to 99).map(.toString.map(.toInt - 48).sum) // Alonso del Arte, Sep 15 2019
    
  • Smalltalk
    "Recursive version for general bases. Set base = 10 for this sequence."
    digitalSum: base
    | s |
    base = 1 ifTrue: [^self].
    (s := self // base) > 0
      ifTrue: [^(s digitalSum: base) + self - (s * base)]
      ifFalse: [^self]
    "by Hieronymus Fischer, Mar 24 2014"
    
  • Swift
    A007953(n): String(n).compactMap{$0.wholeNumberValue}.reduce(0, +) // Egor Khmara, Jun 15 2021

Formula

a(A051885(n)) = n.
a(n) <= 9(log_10(n)+1). - Stefan Steinerberger, Mar 24 2006
From Benoit Cloitre, Dec 19 2002: (Start)
a(0) = 0, a(10n+i) = a(n) + i for 0 <= i <= 9.
a(n) = n - 9*(Sum_{k > 0} floor(n/10^k)) = n - 9*A054899(n). (End)
From Hieronymus Fischer, Jun 17 2007: (Start)
G.f. g(x) = Sum_{k > 0, (x^k - x^(k+10^k) - 9x^(10^k))/(1-x^(10^k))}/(1-x).
a(n) = n - 9*Sum_{10 <= k <= n} Sum_{j|k, j >= 10} floor(log_10(j)) - floor(log_10(j-1)). (End)
From Hieronymus Fischer, Jun 25 2007: (Start)
The g.f. can be expressed in terms of a Lambert series, in that g(x) = (x/(1-x) - 9*L[b(k)](x))/(1-x) where L[b(k)](x) = sum{k >= 0, b(k)*x^k/(1-x^k)} is a Lambert series with b(k) = 1, if k > 1 is a power of 10, else b(k) = 0.
G.f.: g(x) = (Sum_{k > 0} (1 - 9*c(k))*x^k)/(1-x), where c(k) = Sum_{j > 1, j|k} floor(log_10(j)) - floor(log_10(j-1)).
a(n) = n - 9*Sum_{0 < k <= floor(log_10(n))} a(floor(n/10^k))*10^(k-1). (End)
From Hieronymus Fischer, Oct 06 2007: (Start)
a(n) <= 9*(1 + floor(log_10(n))), equality holds for n = 10^m - 1, m > 0.
lim sup (a(n) - 9*log_10(n)) = 0 for n -> oo.
lim inf (a(n+1) - a(n) + 9*log_10(n)) = 1 for n -> oo. (End)
a(n) = A138530(n, 10) for n > 9. - Reinhard Zumkeller, Mar 26 2008
a(A058369(n)) = A004159(A058369(n)); a(A000290(n)) = A004159(n). - Reinhard Zumkeller, Apr 25 2009
a(n) mod 2 = A179081(n). - Reinhard Zumkeller, Jun 28 2010
a(n) <= 9*log_10(n+1). - Vladimir Shevelev, Jun 01 2011
a(n) = a(n-1) + a(n-10) - a(n-11), for n < 100. - Alexander R. Povolotsky, Oct 09 2011
a(n) = Sum_{k >= 0} A031298(n, k). - Philippe Deléham, Oct 21 2011
a(n) = a(n mod b^k) + a(floor(n/b^k)), for all k >= 0. - Hieronymus Fischer, Mar 24 2014
Sum_{n>=1} a(n)/(n*(n+1)) = 10*log(10)/9 (Shallit, 1984). - Amiram Eldar, Jun 03 2021

Extensions

More terms from Hieronymus Fischer, Jun 17 2007
Edited by Michel Marcus, Nov 11 2013

A051885 Smallest number whose sum of digits is n.

Original entry on oeis.org

0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 19, 29, 39, 49, 59, 69, 79, 89, 99, 199, 299, 399, 499, 599, 699, 799, 899, 999, 1999, 2999, 3999, 4999, 5999, 6999, 7999, 8999, 9999, 19999, 29999, 39999, 49999, 59999, 69999, 79999, 89999, 99999, 199999, 299999, 399999, 499999
Offset: 0

Views

Author

Felice Russo, Dec 15 1999

Keywords

Comments

This is also the list of lunar triangular numbers: A087052 with duplicates removed. - N. J. A. Sloane, Jan 25 2011
Numbers n such that A061486(n) = n. - Amarnath Murthy, May 06 2001
The product of digits incremented by 1 is the same as the number incremented by 1. If a(n) = abcd...(a,b,c,d, etc. are digits of a(n)) {a(n) + 1} = (a+1)*(b+1)(c+1)*(d+1)*..., e.g., 299 + 1 = (2+1)*(9+1)*(9+1) = 300. - Amarnath Murthy, Jul 29 2003
A138471(a(n)) = 0. - Reinhard Zumkeller, Mar 19 2008
a(n+1) = A108971(A179988(n)). - Reinhard Zumkeller, Aug 09 2010, Jul 10 2011
Positions of records in A003132: A080151(n) = A003132(a(n)). - Reinhard Zumkeller, Jul 10 2011
a(n) = A242614(n,1). - Reinhard Zumkeller, Jul 16 2014
A254524(a(n)) = 1. - Reinhard Zumkeller, Oct 09 2015
The slowest strictly increasing sequence of nonnegative integers such that, for any two terms, calculating the difference of their decimal representations requires no borrowing. - Rick L. Shepherd, Aug 11 2017

Crossrefs

Numbers of form i*b^j-1 (i=1..b-1, j >= 0) for bases b = 2 through 9: A000225, A062318, A180516, A181287, A181288, A181303, A165804, A140576. - N. J. A. Sloane, Jan 25 2011
Cf. A002283.
Cf. A254524.

Programs

  • Haskell
    a051885 n = (m + 1) * 10^n' - 1 where (n',m) = divMod n 9
    -- Reinhard Zumkeller, Jul 10 2011
    
  • Magma
    [i*10^j-1: i in [1..9], j in [0..5]];
    
  • Maple
    b:=10; t1:=[]; for j from 0 to 15 do for i from 1 to b-1 do t1:=[op(t1), i*b^j-1]; od: od: t1; # N. J. A. Sloane, Jan 25 2011
  • Mathematica
    a[n_] := (Mod[n, 9] + 1)*10^Floor[n/9] - 1; Table[a[n], {n, 0, 49}](* Jean-François Alcover, Dec 01 2011, after Henry Bottomley *)
  • PARI
    A051885(n) = (n%9+1)*10^(n\9)-1  \\ M. F. Hasler, Jun 17 2012
    
  • PARI
    first(n) = Vec(x*(x^2 + x + 1)*(x^6 + x^3 + 1)/((x - 1)*(10*x^9 - 1)) + O(x^n), -n) \\ Iain Fox, Dec 30 2017
    
  • Python
    def A051885(n): return ((n % 9)+1)*10**(n//9)-1 # Chai Wah Wu, Apr 04 2021

Formula

These are the numbers i*10^j-1 (i=1..9, j >= 0). - N. J. A. Sloane, Jan 25 2011
a(n) = ((n mod 9) + 1)*10^floor(n/9) - 1 = a(n-1) + 10^floor((n-1)/9). - Henry Bottomley, Apr 24 2001
a(n) = A037124(n+1) - 1. - Reinhard Zumkeller, Jan 03 2008, Jul 10 2011
G.f.: x*(x^2+x+1)*(x^6+x^3+1) / ((x-1)*(10*x^9-1)). - Colin Barker, Feb 01 2013

Extensions

More terms from James Sellers, Dec 16 1999
Offset fixed by Reinhard Zumkeller, Jul 10 2011

A138472 Number of numbers less than n having a greater sum of digits.

Original entry on oeis.org

0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 7, 6, 5, 4, 3, 2, 1, 0, 0, 15, 13, 11, 9, 7, 5, 3, 1, 0, 0, 21, 18, 15, 12, 9, 6, 3, 1, 0, 0, 26, 22, 18, 14, 10, 6, 3, 1, 0, 0, 30, 25, 20, 15, 10, 6, 3, 1, 0, 0, 33, 27, 21, 15, 10, 6, 3, 1, 0, 0, 35, 28, 21, 15, 10, 6, 3, 1, 0, 0, 36, 28, 21, 15, 10, 6, 3, 1, 0
Offset: 0

Views

Author

Reinhard Zumkeller, Mar 19 2008

Keywords

Comments

A138470(n) + A138471(n) + a(n) = n;
a(A067043(n)) = 0.

Examples

			a(42)=#{7,8,9,16,17,18,19,25,26,27,28,29,34,35,36,37,38,39}=18.
		

Crossrefs

Cf. A007953.

Programs

A138470 Number of numbers less than n having a smaller sum of digits.

Original entry on oeis.org

0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 1, 3, 5, 7, 9, 11, 13, 15, 17, 19, 3, 6, 9, 12, 15, 18, 21, 24, 27, 29, 6, 10, 14, 18, 22, 26, 30, 34, 37, 39, 10, 15, 20, 25, 30, 35, 40, 44, 47, 49, 15, 21, 27, 33, 39, 45, 50, 54, 57, 59, 21, 28, 35, 42, 49, 55, 60, 64, 67, 69, 28, 36, 44, 52, 59, 65
Offset: 0

Views

Author

Reinhard Zumkeller, Mar 19 2008

Keywords

Comments

a(n) + A138471(n) + A138472(n) = n.

Examples

			a(42)=#{0,1,2,3,4,5,10,11,12,13,14,20,21,22,23,30,31,32,40,41}=20.
		

Crossrefs

Cf. A007953.

Programs

  • Maple
    digitsum:=proc(n) options operator, arrow: add(convert(n, base, 10)[j],j=1.. nops(convert(n,base,10))) end proc: a:=proc (n) local ct, j: ct:=0: for j from 0 to n-1 do if digitsum(j) < digitsum(n) then ct:=ct+1 else end if end do: ct end proc: seq(a(n),n=0..75); # Emeric Deutsch, Mar 31 2008

A338505 Number of positive integers less than n with the same product of decimal digits as n.

Original entry on oeis.org

0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 0, 0, 0, 0, 0, 2, 2, 3, 2, 1, 0, 1, 0, 0, 0, 3, 3, 3, 2, 1, 0, 1, 0, 0, 0, 4, 2, 1, 1, 1, 0, 0, 0, 0, 0, 5, 4, 3, 2, 2, 1, 1, 0, 0, 0, 6, 2, 1, 1, 1, 1, 1, 0, 0, 0, 7, 4, 2, 3, 1, 1, 1, 1, 0, 0, 8
Offset: 1

Views

Author

Ilya Gutkovskiy, Oct 31 2020

Keywords

Examples

			a(22) = 2 because A007954(22) = 4 and also A007954(4) = A007954(14) = 4.
		

Crossrefs

Programs

  • Mathematica
    Table[Length[Select[Range[n - 1], Times @@ IntegerDigits@# == Times @@ IntegerDigits@n &]], {n, 90}]
  • PARI
    a(n)={my(t=vecprod(digits(n))); sum(k=1, n-1, vecprod(digits(k))==t)} \\ Andrew Howroyd, Oct 31 2020

Formula

a(n) = |{0 < j < n : A007954(j) = A007954(n)}|.

Extensions

Definition clarified by Ilya Gutkovskiy, Apr 14 2022

A357526 Number of nonnegative integers less than n with the same product of the nonzero decimal digits as n.

Original entry on oeis.org

0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 1, 1, 1, 1, 1, 1, 1, 1, 2, 3, 2, 2, 2, 0, 0, 0, 0, 0, 2, 3, 3, 2, 1, 0, 1, 0, 0, 0, 3, 4, 3, 2, 1, 0, 1, 0, 0, 0, 2, 3, 1, 1, 1, 0, 0, 0, 0, 0, 4, 5, 3, 2, 2, 1, 1, 0, 0, 0, 2, 3, 1, 1, 1, 1, 1, 0, 0, 0, 4, 5, 2, 3, 1, 1, 1, 1, 0, 0, 3
Offset: 0

Views

Author

Ilya Gutkovskiy, Oct 02 2022

Keywords

Examples

			a(1) = 1 because A051801(1) = 1 and also A051801(0) = 1.
a(21) = 3 because A051801(21) = 2 and also A051801(2) = A051801(12) = A051801(20) = 2.
		

Crossrefs

Programs

  • Mathematica
    Table[Length[Select[Range[0, n - 1], Times @@ DeleteCases[IntegerDigits[#], 0] == Times @@ DeleteCases[IntegerDigits[n], 0] &]], {n, 0, 90}]

Formula

a(n) = |{j < n : A051801(j) = A051801(n)}|.
Showing 1-6 of 6 results.