Exemple pratique Python 24
Problème :Il y a une suite de fractions : 2/1, 3/2, 5/3, 8/5, 13/8, 21/13... Trouvez la somme des 20 premiers termes de cette suite.
Analyse du programme :Veuillez bien comprendre le schéma d'évolution du numérateur et du dénominateur.
Code source du programme :
Méthode 1 :
Exemple
#!/usr/bin/python
# -*- coding: UTF-8 -*-
a = 2.0
b = 1.0
s = 0
for n in range(1,21):
s += a / b
t = a
a = a + b
b = t
print (s)
Méthode 2 :
Exemple
#!/usr/bin/python
# -*- coding: UTF-8 -*-
a = 2.0
b = 1.0
s = 0.0
for n in range(1,21):
s += a / b
b,a = a , a + b
print (s)
s = 0.0
for n in range(1,21):
s += a / b
b,a = a , a + b
print (s)
Méthode 3 :
Exemple (Python 2.x)
#!/usr/bin/python
# -*- coding: UTF-8 -*-
a = 2.0
b = 1.0
l = []
l.append(a / b)
for n in range(1,20):
b,a = a,a + b
l.append(a / b)
print reduce(lambda x,y: x + y,l)
Exemple (Python 3.x)
#!/usr/bin/python
from functools import reduce
a = 2.0
b = 1.0
l = []
l.append(a / b)
for n in range(1,20):
b,a = a,a + b
l.append(a / b)
print (reduce(lambda x,y: x + y,l))
La sortie de l'exemple ci-dessus est :
32.6602607986Autres extensions
100 exemples Python