Calcul d'une somme par un programme python, algobox ou sur calculatrice

Question

Écrire un programme Python calculant la somme des n premiers inverses des puissances de 2.

Indice

On pourra demander à l'utilisateur de saisir la valeur de n. Pour cela l'instruction Python est :

n=input("Saisir la valeur de n ")

Indice

S'inspirer du programme vu ici.

En python 2.7, on s'assurera que le programme commence par la ligne from __future__ import division afin d'avoir un comportement "normal" de la division.

Solution

En python :
1
#from __future__ import division #on enlèvera le # avec python 2.7
2
n=input("Saisir la valeur de n ")
3
somme=0
4
for index in range(n):
5
  somme=somme+1/2**index
6
print somme
Avec algobox
Avec algobox

Question

Calcul d'une somme par un programme sur la calculatrice

Question

Calculer les valeurs de cette somme pour n=5, n=10 et n=20 et n=30.

Que constate t-on ?

Solution

n=5

>>>

Saisir 5 pour la valeur de n

On obtient 1.9375

n=10

>>>

Saisir 10 pour la valeur de n.

On obtient 1.998046875

n=20

>>>

Saisir 20 pour la valeur de n.

On obtient 1.999998093

n=30

>>>

Saisir 30 pour la valeur de n.

On obtient 1.999999998

On constate que plus n est grand, plus la somme semble se rapprocher de 2. C'est le phénomène que nous allons étudier dans le paragraphe suivant. On dira que la somme tend vers 2 quand le nombre de termes augmente.