我需要編寫一個python程序,給定一個整數作爲輸入,計算一個自然數的連續行中的數字,從1開始並繼續到無限(例如12345678910111213141516171819202122等...)例如,如果我們輸入17它計算在這一行中的第17位,這是3.在Python中解決方程。計算第n位
我寫了一個程序,可以計算到第189位,但我需要使它爲非常大的數字(直到位置2 ** 31-1 )
def digit_finder():
if pos < 10: #Position is equal to digit.
digit=pos
return(digit)
elif pos >= 10 en pos < 189: #Number between 10 and 99.
number=(pos-9)
if pos%2==0:
new_number=(10+(number//2))
digit=(new_number//10)
return digit
else:
new_number=(9+(number//2))
digit=(new_number-((new_number//10)*10))
return digit
我不知道如何繼續更大的數字。 請幫忙!
謝謝你的回答! – buster