#! /usr/bin/env python3
"""
pe40.py
https://mind.kittttttan.info/py/pe40
"""
def digit_at(n):
d = 1
n -= 1
while 1:
"""
number of 1 digit numbers is 9
number of 2 digit numbers is 90
number of 3 digit numbers is 900
...
number of d digit numbers is 9*10**(d-1)
"""
ds = d * 9 * 10**(d - 1)
if n > ds:
n -= ds
else:
break
d += 1
num = n // d + 10**(d - 1)
return int(str(num)[n % d])
def pe40():
"""
Finding the nth digit of the fractional part of the irrational number.
"""
d = 1
for i in range(7):
d *= digit_at(10**i)
# print(digit_at(10**i))
print(d)
if __name__ == "__main__":
pe40()