I found an answer, but I do not believe it is necessarily the smallest; found somewhat by trial and error.
Decimal 10077696,
in bases [3175, 216, 57, 26, 15, 11, 8, 7, 6, 5, 4]
has number of digits 2 through 12 respectively.
Here is my function for finding the number of digits of a given base 10 number in some other base.
-----
def ndigits(integer, base):
""" integer is in base 10, returns number of digits in base base """
import math
if math.log(integer,base) % 1 == 0:
return int(math.log(integer,base)) + 1
else:
return math.ceil(math.log(integer,base))
----------
for b in [3175, 216, 57, 26, 15, 11, 8, 7, 6, 5, 4]:
print(ndigits(10077696, b))
OUTPUT:
2
3
4
5
6
7
8
9
10
11
12