Un mathématicien se pose la question de savoir combien de séries d'entiers consécutifs strictement positifs existent, dont la somme est égale à un nombe entier donné n. Donc on considère des séries i,i+1,i+2,…,i+k où i>0 et i + i+1 + i+2 + … + i+k = n.
Par exemple, pour n = 100, la somme de la série 18,19,20,21,22 est 18 + 19 + 20 + 21 + 22 = 100. Mais combien de telles séries existent dont la somme est égale à n ? Pour n = 100, il y en a 3 :
- 9, 10, 11, 12, 13, 14, 15, 16
- 18, 19, 20, 21, 22
- 100
Implémentez une fonction combien(n)
qui, pour un nombre entier strictement positif n
, retourne un entier représentant le nombre de séries d'entiers consécutifs strictement positifs dont la somme est égale à n
. Par exemple : combien(100)
retourne 3.
def combien(n) : """ @pre: n est un nombre entier > 0 @post: retourne le nombre de series d’entiers consecutifs strictement positifs dont la somme est egale a n """ # à compléter
Si nécessaire vous pouvez aussi définir des fonctions auxiliaires.