我正在研究一个挑战,即仅使用算术运算符和单个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.我不确定这是否是你所期待的.

Python相关问答推荐

如何避免Chained when/then分配中的Mypy不兼容类型警告?

从numpy数组和参数创建收件箱

pandas滚动和窗口中有效观察的最大数量

管道冻结和管道卸载

如何在Django基于类的视图中有效地使用UTE和RST HTIP方法?

joblib:无法从父目录的另一个子文件夹加载转储模型

实现神经网络代码时的TypeError

如何指定列数据类型

让函数调用方程

如何使regex代码只适用于空的目标单元格

lityter不让我输入左边的方括号,'

python panda ExcelWriter切换动态公式到数组公式

关于两个表达式的区别

如何在Python请求中组合多个适配器?

将一个双框爆炸到另一个双框的范围内

BeautifulSoup:超过24个字符(从a到z)的迭代失败:降低了首次深入了解数据集的复杂性:

使用Python异步地持久跟踪用户输入

为用户输入的整数查找根/幂整数对的Python练习

对包含JSON列的DataFrame进行分组

按最大属性值Django对对象进行排序