2009-09-22 6 views
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) 

Motif: (var * (dernier multiplicateur + itération courante))Besoin d'aide pour convertir motif répétitif dans la formule

Fondamentalement, je veux obtenir sans avoir à itérer jusqu'à ITR le résultat de la formule (ITR).

+0

Je vais oser deviner que c'est votre devoir. Qu'avez-vous essayé jusqu'à présent? N'importe quel code pseduo que vous pouvez partager? –

+0

Ça sent un peu comme les devoirs ... demandez-vous la réponse ou aidez-vous à trouver la réponse? – atk

+0

N'a rien à faire avec les devoirs, a à voir avec un algorithme de prédiction. – joshj

Répondre

6

La valeur de var dans la nth itération est 8 fois la somme des 1..n. La somme de 1..n est donnée par la formule (n)(n+1)/2; par exemple, la somme de 1..6 est 6 * 7/2 = . Par conséquent, var == 4(i)(i+1) sur l'ith

0

Multiply 8 par la somme de 1 à l'itération courante:

>>> def itr(n): return 8 * sum(xrange(n+1)) 
... 
>>> itr(1) 
8 
>>> itr(2) 
24 
>>> itr(3) 
48 
>>> itr(4) 
80 
>>> itr(5) 
120 
Questions connexes