Le programme ci-dessous calcule la somme S des N premiers entiers naturels, c’est à dire S = 1 + 2 + ··· + N.
1. Calculer à la main : 1 + 2 + 3 + 4 + 5.
2. Vérifier que le résultat donné par le programme est le même.
Explications :
Le mot clé for permet d’exécuter une boucle, c’est à dire de répéter en boucle, un certain nombre de fois, une ou plusieurs instructions.
Ici, l’instruction S = S + i est répétée N fois, c’est à dire pour i allant de 1 à N.
Pour cela, on utilise une liste de nombres entiers que la variable i va parcourir : range(1,N).
Mais, attention, Python considère que les intervalles entiers fournis par range sont fermés à gauche et ouverts à droite.
3. Exécutez ci-dessous l’instruction print(range(1,5)). Qu’obtient-on ? Modifiez-la pour obtenir l’affichage de [1, 2, 3, 4, 5], puis [7, 8, 9, 10, 11].
4. Recopier et compléter sur votre classeur le tableau suivant, qui reproduit l’exécution du programme du haut de cette page, pour N = 5 :
Etape | N | i | S |
0 | 5 | 0 | |
1 | 5 | 1 | 1 |
2 | 5 | 2 | 3 |
3 | 5 | 3 | 6 |
… | … | … | … |
Vous pourrez vous aider de la page suivante, qui permet d’exécuter le programme pas à pas : Lien vers pythontutor.com .
Exercice 1 :
Compléter le programme suivant pour qu’il affiche la table de multiplication de N (de 0 jusqu’à 10) d’un nombre entier naturel N saisi par l’utilisateur.
(il faut modifier les ???)
Exercice 2 :
Ecrire ci-dessous un programme permettant de calculer la factorielle d’un nombre entier N.
La factorielle de N, notée N! est définie par N! = 1 x 2 x 3 x 4 x … x N
Ainsi, 4! = 24.
Calculer la factorielle de 10 et faire vérifier le résultat (et votre programme) par votre professeur avant de passer à la suite.