我正在研究一个挑战,即仅使用算术运算符和单个for循环从整数中构建弗洛伊德三角形.有数百个教程使用双for循环和字符串操作,但我没有看到任何使用数学的教程.
使用重复整数的输出示例:
1
22
333
4444
我正在接近这样的解决方案逻辑:
1 * (1) = 1
2 * (1 + 10) = 22
3 * (1 + 10 + 100) = 333
作为一名新的Python学习者,我无法构建逻辑循环.有什么 idea 或替代方法吗?这里不允许字符串操作,只允许数学!
我正在研究一个挑战,即仅使用算术运算符和单个for循环从整数中构建弗洛伊德三角形.有数百个教程使用双for循环和字符串操作,但我没有看到任何使用数学的教程.
使用重复整数的输出示例:
1
22
333
4444
我正在接近这样的解决方案逻辑:
1 * (1) = 1
2 * (1 + 10) = 22
3 * (1 + 10 + 100) = 333
作为一名新的Python学习者,我无法构建逻辑循环.有什么 idea 或替代方法吗?这里不允许字符串操作,只允许数学!
这对我有用:)
n = 4
val=0
for i in range(n):
val+=10**i
print(val*(i+1))
Val是1,然后是11,然后是111.我不确定这是否是你所期待的.