python
a
Introducci´n a la Programaci´n
o
o
Prof. Jos´ Alonso Pe˜ arrieta Escobedo
e
n
Abril 2014
Funciones: Los siguientes ejercicios deben ser resueltos utilizando recursividad y sinutilizar bucles
para nada, sin for o while.
1. Crear una funcion llanada “listarNumeros” que reciba dos enteros como par´metros “inicio” y
a
“fin” e imprima en pantalla todos los numeros desdeinicio hasta fin.
2. Reescriba la funci´n anterior para que imprima la misma secuencia pero de forma descendente.
o
(la funci´n puede recibir m´s par´metros, de ser necesario)
o
a
a
3. Escriba unafunci´n con la siguiente cabecera “def mult(a, b)” que calcule el producto (multiplio
caci´n) de dos n´meros no negativos “a” y “b”, sin utilizar el operador “*”.
o
u
4. Implemente la funci´n “defpower(base, exponente)” que calcule baseexponente . Puede asumir que
o
“exponente” es un entero mayor igual a 0. Puede utilizar el operador “*” mas n´ el operador
o
“**”.
5. Implemente la funci´n“def harmonicSum(n)” que calcule y retorne la suma 1+1/2+1/3+...+1/n.
o
6. Implemente la funci´n “def sumarDigitos(n)” que calcule y retorne la suma de todos los digitos
o
del entero positivo “n”.Por ejemplo para n = 12345 la funci´n deber´ retornar 15.
o
a
7. Implemente la funci´n “def reverse(n)” que retorne el reverso de los d´
o
ıgitos del par´metro n. Por
a
ejemplo para n = 12345,la funci´n deber´ retornar 54321.
o
a
8. Implemente una funci´n que eval´e si un n´mero es o no capic´a.
o
u
u
u
9. Calcule el resultado de la siguiente funci´n para n = 1, 2, 3, 4, 5, 6, 7, 8,9
o
def puzzle(int n):
if (n == 1):
return 1
if (n % 2 == 0):
return puzzle(n / 2)
else:
return puzzle(3 * n + 1)
10. ¿Que imprime el siguiente programa?
def my_meth(n):
j = 0
for i inrange(0, n+1):
j = j + i
return j
11. Escriba la versi´n recursiva del programa anterior.
o
12. Escriba una o varias funciones recursivas que permitan imprimir las siguientes figuras, dado...
Regístrate para leer el documento completo.