A007602 Numbers that are divisible by the product of their digits.
1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 15, 24, 36, 111, 112, 115, 128, 132, 135, 144, 175, 212, 216, 224, 312, 315, 384, 432, 612, 624, 672, 735, 816, 1111, 1112, 1113, 1115, 1116, 1131, 1176, 1184, 1197, 1212, 1296, 1311, 1332, 1344, 1416, 1575, 1715, 2112, 2144
Offset: 1
References
- N. J. A. Sloane and Simon Plouffe, The Encyclopedia of Integer Sequences, Academic Press, 1995 (includes this sequence).
- James J. Tattersall, Elementary Number Theory in Nine Chapters (2005), 2nd Edition, p. 86 (see problems 44-45).
Links
- Reinhard Zumkeller and Zak Seidov, Table of n, a(n) for n = 1..10000
- Jean-Marie De Koninck and Florian Luca, Positive integers divisible by the product of their nonzero digits, Port. Math. 64 (2007) 75-85. (This proof for upper bounds contains an error. See the paper below)
- Jean-Marie De Koninck and Florian Luca, Corrigendum to "Positive integers divisible by the product of their nonzero digits", Portugaliae Math. 64 (2007), 1: 75-85, Port. Math. 74 (2017), 169-170.
- Qizheng He and Carlo Sanna, Counting numbers that are divisible by the product of their digits, arXiv:2403.14812 [math.NT], 2024.
- Giovanni Resta, Zuckerman numbers, Numbers Aplenty.
- Index entries for Colombian or self numbers and related sequences
Crossrefs
Programs
-
Haskell
import Data.List (elemIndices) a007602 n = a007602_list !! (n-1) a007602_list = map succ $ elemIndices 1 $ map a188642 [1..] -- Reinhard Zumkeller, Apr 07 2011
-
Magma
[ n: n in [1..2144] | not IsZero(&*Intseq(n)) and IsZero(n mod &*Intseq(n)) ]; // Bruno Berselli, May 28 2011
-
Maple
filter:= proc(n) local p; p:= convert(convert(n,base,10),`*`); p <> 0 and n mod p = 0 end proc; select(filter, [$1..10000]); # Robert Israel, Aug 24 2014
-
Mathematica
zuckerQ[n_] := Module[{d = IntegerDigits[n], prod}, prod = Times @@ d; prod > 0 && Mod[n, prod] == 0]; Select[Range[5000], zuckerQ] (* Alonso del Arte, Aug 04 2004 *)
-
PARI
for(n=1,10^5,d=digits(n);p=prod(i=1,#d,d[i]);if(p&&n%p==0,print1(n,", "))) \\ Derek Orr, Aug 25 2014
-
Python
from operator import mul from functools import reduce A007602 = [n for n in range(1,10**5) if not (str(n).count('0') or n % reduce(mul, (int(d) for d in str(n))))] # Chai Wah Wu, Aug 25 2014
Comments