0
var = 8

itr 1:
var == 8 (8 * 1)

itr 2:
var == 24 (8 * 3)

itr 3:
var == 48 (8 * 6)

itr 4:
var == 80 (8 * 10)

itr 5:
var == 120 (8 * 15)

模式:(var *(最后一个乘数 + 当前迭代))

基本上我想得到公式(itr)的结果,而不必迭代到itr。

4

3 回答 3

6

var迭代中的值nth是 1..n 之和的 8 倍。1..n 的总和由公式给出(n)(n+1)/2;例如, 1..6 的总和是 6*7/2 = 21

因此,var == 4(i)(i+1)ith迭代中。

于 2009-09-22T16:58:08.097 回答
2

使用三角数

于 2009-09-22T16:57:34.643 回答
0

将 8 乘以 1 的总和到当前迭代:

>>> def itr(n): return 8 * sum(xrange(n+1))
...
>>> itr(1)
8
>>> itr(2)
24
>>> itr(3)
48
>>> itr(4)
80
>>> itr(5)
120
于 2009-09-22T16:57:48.603 回答