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.

A235049 Subtract one from each nonzero digit in decimal representation of n.

Original entry on oeis.org

0, 0, 1, 2, 3, 4, 5, 6, 7, 8, 0, 0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 10, 11, 12, 13, 14, 15, 16, 17, 18, 20, 20, 21, 22, 23, 24, 25, 26, 27, 28, 30, 30, 31, 32, 33, 34, 35, 36, 37, 38, 40, 40, 41, 42, 43, 44, 45, 46, 47, 48, 50, 50, 51, 52, 53, 54, 55, 56, 57, 58, 60
Offset: 0

Views

Author

Antti Karttunen, Apr 14 2014

Keywords

Comments

Contains exactly the same terms as A007095, except that each occurs an infinite number of times.
A102683(a(n)) = 0. - Reinhard Zumkeller, Apr 16 2014

Examples

			Subtracting one from each nonzero digit of '9', we get 8, thus a(9)=8. Doing same for '10' results '00' thus a(10)=0. For '12', this results '01', thus a(12)=1.
		

Crossrefs

Cf. A007095.

Programs

  • Haskell
    a235049 x = if x == 0 then 0 else 10 * a235049 x' + max 0 (d - 1)
                where (x', d) = divMod x 10
    -- Reinhard Zumkeller, Apr 16 2014
  • Mathematica
    a[n_] := FromDigits[If[#>0, #-1, #]& /@ IntegerDigits[n]];
    Table[a[n], {n, 0, 100}] (* Jean-François Alcover, Jan 13 2023 *)

Formula

a(0) = 0, and for n>=1, if n = 0 modulo 10, a(n) = 10*a(n/10), otherwise a(n) = 10*a(floor(n/10)) + (n modulo 10) - 1.