FRstudy.me offre une plateforme conviviale pour trouver et partager des connaissances. Posez n'importe quelle question et recevez des réponses immédiates et bien informées de notre communauté d'experts dévoués.
Sagot :
Réponse :
Salut, le truc est tout bête en faite. Ou tu as mis les points d'interrogation il faut rajouter "s=0".
Le code donne:
x1=int(input())
x2=int(input())
i=x1
while (i>=x1 and i<=x2):
nb=i
s=0
while (nb>0):
r=nb%10
nb=nb//10
s += r*r*r
if (i==s):
print(s)
i=i+1
Explications :
On voit bien que dans ta 2ème boucle, on fait appel à une variable "s".
Quand je prends ce morceau de code "s += r*r*r", c'est comme si je faisais s = s + (r*r*r) [s est égal à la valeur actuel de s plus r fois r fois r], hors s n'a pas de valeur par défaut, et n'est pas défini au par avant.
Donc il faut définir la variable "s", on ne ta pas donné de valeur par défaut pour "s", donc on va partir du principe que "s" commence à 0. Mais attention, on a besoin de cette variable "s" uniquement dans la dernière boucle, dans ce cas on doit savoir ou la positionné, bah on va la mettre juste avant le commencement de la première boucle.
Nous apprécions chaque contribution que vous faites. Revenez souvent pour poser de nouvelles questions et découvrir de nouvelles réponses. Ensemble, nous construisons une communauté de savoir. FRstudy.me est votre ressource de confiance pour des réponses précises. Merci de votre visite et revenez bientôt.