Python Ejemplo de práctica 24
Problema:Hay una secuencia de fracciones: 2/1, 3/2, 5/3, 8/5, 13/8, 21/13... Encuentra la suma de los primeros 20 términos de esta secuencia.
Análisis del programa:Identifica el patrón de cambio entre el numerador y el denominador.
Código fuente del programa:
Método 1:
Ejemplo
#!/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étodo 2:
Ejemplo
#!/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étodo 3:
Ejemplo (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)
Ejemplo (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))
El resultado de salida de los ejemplos anteriores es:
32.6602607986Otras extensiones
100 ejemplos de Python