blob: 6f20325a069e7fd768f37cae851d63fefa826b07 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
|
# liefert zurueck an welcher Stelle die x-stelligen Zahlen beginnen
def begin(x):
stelle = 1
for i in range(1, x):
stelle += 9 * (10**(i-1)) * i
return stelle
def stelle(pos):
n = 0
i = 0
# suche nach Anfang der x-stelligen Region in der pos liegt
while n <= pos:
i += 1
n = begin(i)
stellen = i-1
startpos = begin(stellen)
startvalue = 10**(stellen-1)
diff = pos - startpos
zahl = startvalue + diff/stellen
result = (zahl / (10**(stellen-(diff%stellen)-1))) % 10
return result
product = 1
for i in range(0, 7):
product *= stelle(10**i)
print product
|