somme_chiffre (4/15), un bug?


#1

j'ai écrit le code suivant:

def somme_chiffre(n):
    a=str(n)
    total=0
    for x in range(len(a)):
        b=a[x]
        total+=int(b)
    return total

Le code fonctionne parfaitement mais un message d'erreur "Oups, merci de réessayer. Votre fonction a échoué sur 434 comme entrée car votre fonction indique 'int object is not callable' error."
Quelqu'un pourrait-il m'aider ?
merci d'avance.

Finalement j'ai réussi à passer cet exercice qui est complètement bugé, en collant le code suivant au début de mon code.

class str(object):
def add(self,other):
return True

Le mot en gras est encadré de "__"


#2

Bonjour voctor1507,

j'ai aussi le même problème :

    def somme_chiffre (n) :
        somme = 0
        s = str(n)
        for c in range(0, len(s)) :
            somme += int(s[c])
        return somme

Est-ce que tu as trouvé la solution ?


#3

tu sais meme :
def somme_chiffre(x):
return x
meme erreur c'est pour te dire


#4

Même erreur, alors que ma fonction retourne le bon résultat quand j'utilise
python sur mon pc.

def somme_chiffre(n):
    somme = 0
    mot = str(n)
    for i in range(0,len(str(n))):
        somme = somme + int(mot[i])
    print somme
    return somme

Merci victor1507, avec ton astuce j'ai pu sauter le bug.
class str(object):
def add(self, other):
return True


#5

Bonjour,
Ya pas de quoi :blush: !
(il fallait que mon post fasse au moins 20 caractères donc g rajouté cette ligne)


#6

Bonsoir,
j'ai eu l'astuce ailleurs, mais elle ne donne rien chez moi. J'ai ce cinglant message d'erreur :
Traceback (most recent call last):
File "python", line 13, in
File "python", line 7, in somme_chiffre
TypeError: object.new() takes no parameters

Edit : à tout hasard j'ai relancé Firefox, et l'exercice est passé ... Comprenne qui pourra.