您需要按以下顺序找到数字的总和: 2, 22, 222, 2222, ..., 2(n), - 其中,n 是最后一个数字的位数
例如,n = 5,最后一个数字是 22222,序列中数字的总和是 24690。
n = 5 # кол-во разрядов
last_num = 0 # итоговое число
i = 1 # счетчик разрядов
sum = 0 # 2 + 22 + 222 + 2222 + 22222 => 24690
while n > 0:
last_num += 2 * i
i *= 10
n -= 1
print(last_num)
while last_num != 0:
sum += last_num // 10
last_num //= 10
print(sum)
我知道代码是一条曲线,因为我刚开始学习 Python。请告诉我如何找到数字的总和,因为条件 sum += last_num // 10 “切断”了前两个,因此,总和是从数字 2222 + 222 + 22 + 2 = 2468 中获得的, 而不是 22222 + 2222 + 222 + 22 + 2 = 24690。
