我必须编写一个函数('def stackHeights'),在这个函数中,假设一个参数要有多个杯子,然后返回可以用这个杯子数构建的堆栈的最大高度。例如,如果您有7个杯子,您可以构建高度为3的堆栈,但是对于高度为4的堆栈,您没有足够的空间,因为底部一行只有一个杯子,您需要4个杯子。在
“提示:使用一段时间从上到下构建。在
输出:
>>> stackHeight (7)
3
>>> stackHeight (3)
2
>>> stackHeight (12)
4
这就是我现在所拥有的:
^{pr2}$我做错什么了?代码似乎由于某种原因无法运行。请记住,我对编程还是相当陌生的,所以为集群感到抱歉。在
您所指的是一个称为Triangular Numbers的数字序列,它有一个计算第n个数字的等式:
使用二次公式可以将其转化为:
^{pr2}$因此,您的代码将是:
和测试:
我注意到你的代码有很多问题。首先,
input()
的次数太多了,input()
会在等待用户输入时冻结程序。你可能想要input("string that tells the user what to put here")
。另外,您有一个变量nCups
,但是nCups
被设置为input()
,因此它完全使变量的点无用。另外,如果您希望它在您的示例中是怎样的,您不希望在循环中print()
。另一件事是,当你做cups={}
时,你是在把它变成一个字典,但是你以后要用一个整数作为索引,所以你需要一个list[]。在相关问题 更多 >
编程相关推荐