Sagot :
Bonjour
Adapter la formule
La première étape c'est d'assurer qu'on sache retranscrire la formule de A en opérateurs que Python comprendra.
Pour ça, voici quelque tips:
- Les multiplications (×) sont notées avec un astérisque *
- Les soustractions et additions gardent leurs signes respectifs: + et -
- Les exposants se notent à l'aide d'un double astérisque **
Quand on sait ça, cette étape semble bien plus simple, la formule étant:
▌ A = n**2 - 2*n + 3
Choisir la méthode
Ce qu'on nous demande de faire c'est de calculer la valeur de A pour un n allant de 0 à 10, donc il faudra faire 11 passages avec la même formule.
En Python qui dit passages rémanents dit... boucle ! On a alors deux choix possibles:
Boucle while
Puisque while signifie en français "tant que", on utilise généralement cette boucle quand on ne sait pas exactement combien de passages seront nécessaires.
Boucle for
C'est souvent la boucle qu'on utilise pour passer sur tous les éléments d'une liste ou d'un tableau. Elle permet également de faire un nombre précis de répétition puisque for peut se traduire "pour [untelle condition]".
Nous en soit on sait qu'on devra faire 11 passages (de 0 à 10 compris). On va donc choisir la méthode for.
Rappel la boucle for
Je suppose que tu as déjà vu en cours ce que c'était, je vais donc simplement te rafraichir la mémoire:
▌ for i in range(x):
▌ code à exécuter à chaque passage (x nombre de passage)
J'ai pris i comme "itérations" (synonyme de répétition) mais n'importe quelle lettre/mot marche évidement.
On peut traduire la première ligne comme: "Pour la valeur de i dans une portée de (x)".
Ecriture du code
Ci-joint tu peux trouver le code final, j'explique ici la démarche.
1. Définition
On définit simplement le tableau "valeurs" qui est vide pour le moment.
2. Boucle for
On déclare la boucle for qui va traiter n dans une portée de 11 (0,1,2,3,...,10).
3. On pose l'équation de A
Puisqu'on est rentrés dans la boucle for, on lui dit ce qu'elle devra appliquer à chaque passage.
J'ai gardé la même présentation pour rendre ça plus compréhensible mais à nouveau les lettres choisies n'ont aucune importance, on aurait pu utiliser v au lieu de A, etc.
4. On ajoute la valeur à la liste[]
Pour ajouter une valeur à la fin d'une liste il y a la méthode .append(). C'est une fonction native de Python qu'il faut connaitre et retenir (au même titre que le print() par exemple).
5. On affiche la liste finale
Une fois qu'on est sorti de la boucle for (ce sont les tabulations qui nous l'indiquent), on peut afficher dans la console la liste des valeurs.
▌ Valeurs de A = [3, 2, 3, 6, 11, 18, 27, 38, 51, 66, 83]
Bonus
En bonus je te mets le code pour faire l'exercice avec une boucle while, ce n'est pas la bonne méthode à employer mais comme ça tu vois au moins comment il faudrait l'utiliser.
Le principal inconvénient c'est que la machine doit vérifier à chaque passage la valeur de n, alors qu'une boucle for demande simplement de répéter x fois, ca demande moins de puissance de calcul.