👤

Bonjour, je suis en classe de 1er et j’ai un dm à rendre. Il me reste cette question à finir et je ne la comprends absolument pas. Quelqu’un pourrait m’aider svp ?
Merci.


Bonjour Je Suis En Classe De 1er Et Jai Un Dm À Rendre Il Me Reste Cette Question À Finir Et Je Ne La Comprends Absolument Pas Quelquun Pourrait Maider Svp Merc class=

Répondre :

Réponse :

C'est une question piège, ils construisent tous la liste des 5 premiers nombre impairs.

On le voit dans le programme A.

Le programme B utilisé une boucle "for" qui ajoute +1 à n 5 fois en commençant par 0 (Donc n=0 jusqu'à n=4) et ajoute à la liste 2 * n + 1.

Le programme C il faut juste un peu mieux connaître la fonction range et ces arguments: range(start, stop, step)

; donc commence par 1, finis par 11 et ajoute 2 à chaque fois (1+2=3+2=5+2=7+2=9). /!\ Il ne va pas mettre 11 dans la liste. /!\

Le programme D est le même que le programme B, mais en 1 ligne, et qui prends moins de place.

Le programme E utilisé l'opérateur "Modulus" (Le signe pourcentage: %) qui retourne le reste de la division du premier argument par le second. C'est comme si, tu veux arrivé à 11, en partant de 1 et en multipliant par 2, quand on fait 1 * 2 = 2 jusqu'à 5 * 2 = 10, puis 6 * 2 = 12, comme 12 est plus grand que 11, bah on fait 12-11=1. Si ça avait été 12, ou 10, on aurait retourner 0 car ce sont des nombres pair.

Et donc maintenant que modulus est expliqué, je suppose que tu connais la boucle while je vais pas m'attarder dessus, tant que la taille de la liste, la quantité de nombre qu'il y a dans cette liste n'est pas égal à 5, si modulus n = 1 (Donc que le nombre n est impair) on l'ajoute à la liste.

Bien sur on ajoute +1 à n dans la boucle à chaque vérification, sinon elle serai infini; Et elle a été défini en 2ème ligne, elle commence par 0.