Aller au contenu

NSI-Python (thonny) multiple


pablonsi
 Share

Messages recommandés

  • E-Bahut

Bonsoir,

Qu'est-ce qui t'arrête, les multiples de 5 sont ceux pour lesquels la division euclidienne par 5 retourne un reste nul,les multiples de 7 sont ceux pour lesquels la division euclidienne par 7 retourne un reste nul et il ne faut pas compter 2 fois les multiples de 5*7.
Partant de là, il n'y a plus qu'à explorer tous les cas pour un entier variant entre 1 et 2021.

Ou alors, je n'ai rien compris...

Lien vers le commentaire
Partager sur d’autres sites

  • E-Bahut

Tu charries un peu :

Le programme est donné pour des multiples de 3 et 5, et cela jusqu'à 1000.

Toi, tu as besoin d'aller jusqu'à 2021, avec les multiples de 5 et 7.

Tu ne vois pas ce qu'il faut modifier ?

resultat = 0
for i in range(1, 1000):
    if i%3 == 0 or i%5 == 0:
        resultat += i
print(resultat)

for i in range(1, 1000): ==> la variable i varie de 1 à 1000

if i%3 == 0 or i%5 == 0: ==> % est l'opérateur "modulo", c'est à dire qu'il donne le reste de la division du premier terme par le deuxième.

Alors si i%3 = 0, cela signifie que la division de i par 3 donne un reste nul donc que i est un multiple de 3. Pareil pour 5 (ou pour 7 chez toi).

resultat += i ==> pourrait s'écrire aussi : resultat = resultat +  i.

Ce qui veut dire que lorsque l'on tombe sur l'un de multiples cherchés, on l'ajoute à la somme déjà créée avant de le trouver.

 

Ça ne viendra pas tout seul si tu ne fais pas quelques exercices de programmation, en particulier pour comprendre les indentations lors des boucles.

_________________________________________________________

Voilà une version légèrement modifiée qui te donne la progression de la somme au fur et à mesure qu'un multiple de 3 ou 5 est découvert.

resultat = 0
for i in range(1, 32):
    if i%3 == 0 or i%5 == 0:
        resultat += i
        print(i, resultat)

 

Lien vers le commentaire
Partager sur d’autres sites

Rejoindre la conversation

Vous pouvez publier maintenant et vous inscrire plus tard. Si vous avez un compte, connectez-vous maintenant pour publier avec votre compte.

Invité
Répondre à ce sujet…

×   Collé en tant que texte enrichi.   Coller en tant que texte brut à la place

  Seulement 75 émoticônes maximum sont autorisées.

×   Votre lien a été automatiquement intégré.   Afficher plutôt comme un lien

×   Votre contenu précédent a été rétabli.   Vider l’éditeur

×   Vous ne pouvez pas directement coller des images. Envoyez-les depuis votre ordinateur ou insérez-les depuis une URL.

Chargement
 Share

×
×
  • Créer...
spam filtering