Project Euler

Problem 40: Champernowne's constant

An irrational decimal fraction is created by concatenating the positive integers:

0.123456789101112131415161718192021...

It can be seen that the 12th digit of the fractional part is 1. If dn represents the nth digit of the fractional part, find the value of the following expression:

d1 × d10 × d100 × d1000 × d10000 × d100000 × d1000000
Run this solution at repl.io here.

      
        # create the first one million decimal digits of
        # champernowne's constant as a string
        d = ''
        n = 1
        while len(d) < 1000000:
          d = d + str(n)
          n += 1

        # multiply the select digits as requested
        print(int(d[1-1]) * int(d[10-1]) * int(d[100-1]) \
        * int(d[1000-1]) * int(d[10000-1]) * int(d[100000-1]) \
         * int(d[1000000-1]))
      
    

back to code menu