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-4 of 4 results.

A358350 Numbers that can be written as (m + sum of digits of m + product of digits of m) for some m.

Original entry on oeis.org

3, 6, 9, 11, 12, 14, 15, 17, 18, 20, 21, 22, 23, 24, 26, 27, 29, 30, 32, 33, 34, 35, 38, 42, 43, 44, 46, 48, 50, 53, 54, 55, 56, 58, 62, 63, 66, 68, 69, 73, 74, 76, 77, 78, 80, 82, 83, 86, 88, 90, 92, 95, 97, 98, 99, 101, 103, 104, 105, 106, 107, 108, 109, 110
Offset: 1

Views

Author

Bernard Schott, Nov 11 2022

Keywords

Comments

Integers that are in A161351.
(i) Can arbitrarily long sets of consecutive integers be found in this sequence?
(ii) Is the gap between two consecutive terms bounded?
A000533 \ {1} is a subsequence.
This has the same asymptotic density, approximately 0.9022222, as A176995, since the asymptotic density of non-pandigital numbers is 0. - Charles R Greathouse IV, Nov 16 2022

Examples

			A161351(23) = 23 + (2+3) + (2*3) = 34 so 34 is a term.
There is no integer du_10 such that du + (d+u) + (d*u) = 31, so 31 is not a term.
		

Crossrefs

Range of A161351.
Similar: A176995 (m+digitsum), A336826 (m*digitprod), A337718 (m+digitprod).
Cf. A000533.

Programs

  • Mathematica
    f[n_] := n + Total[(d = IntegerDigits[n])] + Times @@ d; With[{m = 110}, Select[Union[Table[f[n], {n, 1, m}]], # <= m &]] (* Amiram Eldar, Nov 11 2022 *)
  • PARI
    f(n) = my(d=digits(n)); n + vecsum(d) + vecprod(d); \\ A161351
    lista(nn) = select(x->(x<=nn), Set(vector(nn, k, f(k)))); \\ Michel Marcus, Nov 12 2022
    
  • Python
    from math import prod
    def sp(n): d = list(map(int, str(n))); return sum(d) + prod(d)
    def ok(n): return any(m + sp(m) == n for m in range(n))
    print([k for k in range(111) if ok(k)]) # Michael S. Branicky, Dec 19 2022

Formula

a(n) ~ kn with k approximately 1.108374, see comments. - Charles R Greathouse IV, Nov 16 2022

A358351 Number of values of m such that m + (sum of digits of m) + (product of digits of m) is n.

Original entry on oeis.org

0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 1, 1, 0, 1, 1, 0, 1, 1, 0, 1, 1, 1, 1, 1, 0, 2, 1, 0, 1, 1, 0, 1, 1, 1, 1, 0, 0, 3, 0, 0, 0, 1, 1, 1, 0, 1, 0, 1, 0, 2, 0, 0, 1, 1, 1, 1, 0, 2, 0, 0, 0, 2, 1, 0, 0, 1, 0, 2, 1, 0, 0, 0, 1, 2, 0, 1, 1, 1, 0, 1, 0, 1, 1, 0, 0, 2, 0
Offset: 1

Views

Author

Bernard Schott, Nov 16 2022

Keywords

Comments

a(n) is the number of times n occurs in A161351.
a(n) > 0 iff n is in A358350.

Examples

			A161351(15) = 15 + (1+5) + (1*5) = 26 =  21 + (2+1) + (2*1) = A161351(21), so, a(26) = 2.
		

Crossrefs

Similar: A230093 (m+digitsum), A230103 (m+digitprod).

Programs

  • Mathematica
    f[n_] := n + Total[(d = IntegerDigits[n])] + Times @@ d; With[{m = 100}, BinCounts[Table[f[n], {n, 1, m}], {1, m, 1}]] (* Amiram Eldar, Nov 16 2022 *)
  • PARI
    first(n) = {my(res = vector(n)); for(i = 1, n, c = i + sumdigits(i) + vecprod(digits(i)); if(c <= n, res[c]++ ) ); res } \\ David A. Corneth, Nov 16 2022
    
  • Python
    from itertools import combinations_with_replacement
    from math import prod
    def A358351(n):
        c = set()
        for l in range(1,len(str(n))+1):
            l1, l2 = 10**l, 10**(l-1)
            for d in combinations_with_replacement(tuple(range(10)),l):
                s, p = sum(d), prod(d)
                if l1>(m:=n-s-p)>=l2 and sorted(int(d) for d in str(m)) == list(d):
                    c.add(m)
        return len(c) # Chai Wah Wu, Nov 20 2022

A358352 a(n) is the smallest number k such that A358351(k) = n.

Original entry on oeis.org

1, 3, 26, 38, 380, 1116, 12912, 95131, 342038, 3320210, 494204209, 773089018
Offset: 0

Views

Author

Bernard Schott, Nov 19 2022

Keywords

Examples

			19+sod(19)+pod(19) = 24+sod(24)+pod(24) = 31+sod(31)+pod(31) = 38, and there is no integer < 38 for which function A161351 has 3 preimages, so a(3) = 38.
		

Crossrefs

Programs

  • C
    See Links section.
  • Mathematica
    f[n_] := n + Total[(d = IntegerDigits[n])] + Times @@ d; s = With[{m = 10^7}, BinCounts[Table[f[n], {n, 1, m}], {1, m, 1}]]; FirstPosition[s, #] & /@ Range[0, Max[s]] // Flatten (* Amiram Eldar, Nov 19 2022 *)
  • PARI
    first(n) = my(res = vector(n)); for(i = 1, n, c = i + sumdigits(i) + vecprod(digits(i)); if(c <= n, res[c]++ ) ); res; \\ A358351
    lista(nn) = my(v=first(nn)); for (n=0, 20, my(vs = select(x->(x==n), v, 1)); if (#vs, print1(vs[1], ", "), break);); \\ Michel Marcus, Nov 20 2022
    

Extensions

a(4)-a(5) from Michel Marcus, Nov 19 2022
a(6)-a(9) from Amiram Eldar, Nov 19 2022
a(10)-a(11) from Rémy Sigrist, Nov 20 2022

A358353 Numbers that are not of the form m + (sum of digits of m) + (product of digits of m) for any m.

Original entry on oeis.org

1, 2, 4, 5, 7, 8, 10, 13, 16, 19, 25, 28, 31, 36, 37, 39, 40, 41, 45, 47, 49, 51, 52, 57, 59, 60, 61, 64, 65, 67, 70, 71, 72, 75, 79, 81, 84, 85, 87, 89, 91, 93, 94, 96, 100, 102, 116, 120, 125, 126, 129, 137, 141, 142, 146, 150, 152, 153, 160, 161, 162, 166, 171, 172, 173, 180
Offset: 1

Views

Author

Bernard Schott, Dec 19 2022

Keywords

Comments

Numbers missing from A358350.
The first differences show some periodicity, for example those for values 2184-3811 repeat at terms 5513-7140. - Bill McEachen, Jan 08 2023

Examples

			There is no term du_10 < 36 such that du + (d+u) + (d*u) = 36, so 36 is a term.
		

Crossrefs

Similar: A003052 (m+digitsum), A230104 (m+digitprod).

Programs

  • Maple
    f:= proc(n) local L; L:= convert(n,base,10); n + convert(L,`+`)+convert(L,`*`) end proc:
    sort(convert({$1..200} minus map(f, {$1..200}),list)); # Robert Israel, Dec 22 2022
  • Mathematica
    f[n_] := n + Total[(d = IntegerDigits[n])] + Times @@ d; With[{m = 180}, Complement[Range[m], Table[f[n], {n, 1, m}]]] (* Amiram Eldar, Dec 19 2022 *)
  • PARI
    f(n) = my(d=digits(n)); vecsum(d)+vecprod(d)+n; \\ A161351
    isok(m) = for(i=1, m, if (f(i) == m, return(0))); return(1); \\ Michel Marcus, Jan 09 2023
  • Python
    from math import prod
    def sp(n): d = list(map(int, str(n))); return sum(d) + prod(d)
    def ok(n): return all(m + sp(m) != n for m in range(n+1))
    print([k for k in range(181) if ok(k)]) # Michael S. Branicky, Dec 19 2022
    
Showing 1-4 of 4 results.