One of the drawbacks of Éric Angelini's sum-and-erase is that we are dealing with number *strings*, not integers. This is because we allow leading zeros. There's an easy and obvious fix: Don't allow leading zeros! Everything else is the same but, if the erasure of all instances of a digit (1-9) that is contained in the sum-of-digits moves one or more zeros to the leading (left) edge then those zeros are erased as well. Now the only number that is allowed to start with zero is zero itself. And 0 by itself disappears because it is the left-most digit of 0 and the sum-of-digits is 0. And although total erasure (the empty string "" in Éric's version) happens here as well, we can define it to be zero so as to keep our sequencing in the integer realm. Conveniently in Mathematica, FromDigits[{}] == FromDigits[{0}] == 0.

0 => "" = 0

1 => "" = 0

2 => "" = 0

3 => "" = 0

4 => "" = 0

5 => "" = 0

6 => "" = 0

7 => "" = 0

8 => "" = 0

9 => "" = 0

100..00 => 0 => "" = 0

Summarizing the procedure:

0. Start with a base-ten nonnegative integer.

1. Total the number's digits and concatenate this sum to the right of the number.

2. If the first digit in our number is one of the digits in our sum, delete every instance of it.

3. If (after deletion) there now appear leading zeros in our number, delete these as well.

4. If *all digits* or even *all non-zero digits* have been deleted, the subsequent term is zero.

5. Otherwise, the subsequent term is the concatenation of the remaining digits.

6. To generate a sequence of terms, iterate. Most starts eventually end up at zero.

In Éric's procedure, I had found (in addition to the fixed-point c0) six cycles. In this integer version, I have [index. name = c&start-string (cycle length) {smallest precursor}]:

0. c0 (1) {**0**}

1. c86 (80858) {16}

2. c30323322046333587 (1634) {5916}

3. c48822444886224973 (29) {23675}:

0 48822444886224973

1 4882244488622497385

2 488224448862249738598

3 488224448862249738598115

4 488224448862249738598115122

5 488224448862249738598115122127

6 488224448862249738598115122127137

7 882288622973859811512212713718

8 882288622973859811512212713718137

9 2262297359115122127137113714

10 226229735911512212713711371497

11 226229735911512212713711371497113

12 226229735911512212713711371497113118

13 6973591151171371137149711311818

14 6973591151171371137149711311818123

15 6973591151171371137149711311818123129

16 6973591151171371137149711311818123129141

17 6973591151171371137149711311818123129141147

18 6973591151171371137149711311818123129141147159

19 6973591151171371137149711311818123129141147159174

20 97359115117137113714971131181812312914114715917418

21 73511511713711371471131181812312141147151741818

22 73511511713711371471131181812312141147151741818153

23 73511511713711371471131181812312141147151741818153162

24 351151113113141131181812312141141514181815316211

25 351151113113141131181812312141141514181815316211124

26 51151111114111181812121411415141818151621112411

27 111111114111181812121411411418181162111241111

28 11111111411118181212141141141818116211124111197

29 48822444886224973

4. c77078088077807837313303137333430853003033013 (43) {83123}

5. c886054637 (140) {256311}

6. c5869099118496111114109711 (85) {346715}

Also six cycles (so far), in order of smallest precursor. I am working on a distance-to-cycle sequence for the OEIS. For positive terms it is the number of steps needed to get to zero. Negative terms are for starts that will reach some other cycle. Terms that are 0 are for integers that are part of a cycle.