La boucle WHILE

Fermé
koene2 Messages postés 1 Date d'inscription mardi 26 juin 2018 Statut Membre Dernière intervention 26 juin 2018 - 26 juin 2018 à 11:38
yg_be Messages postés 22707 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 19 avril 2024 - 28 juin 2018 à 22:45
je suis débutant en programmation et en python. je dispose du petit exercice suivant:
soient a et b deux bornes entières. je désire écrire un programme qui additionne tous les multiples de 3 et 5 qui se trouvent entre cette borne.
par exemple si a=0 et b=40, j'aimerai que le programme me retourne 45 (en sommant 0+15+30) comme résultat.
la contrainte c'est que je désire que ce soit avec la boucle WHILE et non avec la boucle FOR...IN...
merci!

2 réponses

ubumeun Messages postés 1 Date d'inscription dimanche 24 juin 2018 Statut Membre Dernière intervention 28 juin 2018
28 juin 2018 à 21:51
Bonjour, je pense que cela ne valait pas un post sur un forum mais bon..
Il faut que tu additionnes les multiples de 3 ET 5 (donc les multiples de 15), ou les multiples de 3 OU 5 ?

un exemple avec multiples de 3 et 5 :

S=0
r=a #le "point de départ" est a
while r<=b: #je regarde si je ne vais pas trop loin..
if r%15==0: #je regarde si r est un multiple de 3 et de 5 (donc de 15)
S=S+r #si oui : je l'additionne à ma somme S
r=r+1 #au prochain tour de boucle, je regarderai l'entier suivant (*1)
print(S) #j'affiche S


(*1) : cette ligne est super importante car elle permet de faire terminer l'algorithme càd de ne pas faire "une boucle infini". C'est en fait le gros problème de while comparé à for : for fait un certain nombre de tour de boucle (que l'on détermine dans le "in range") alors que le while attend quelque chose pour s’arrêter... on le lui donne ici en faisant croître r et quand r est plus grand que b : bim ! ça s’arrête !
0
yg_be Messages postés 22707 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 19 avril 2024 1 471
28 juin 2018 à 22:45
si r est un multiple de 15, tu peux ajouter 15 à r, tu ne trouveras pas de multiple de 15 entre r et r+15.
0
yg_be Messages postés 22707 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 19 avril 2024 1 471
28 juin 2018 à 22:43
bonsoir, moi j’essaierais plutôt de déterminer quel est le plus petit multiple de 15 supérieur ou égal au premier nombre, ensuite combien il y a de multiples de 15 entre ces deux nombres, et puis calculer leur somme.
0