You are on page 1of 2

Ejercicio 1: Crear una calculadora

Esta calculadora tendr� que ser capaz de: sumar, restar,


multiplicar y dividir. Pero adem�s, deber� tener un men� para poder decir
qu� operaci�n queremos hacer. Recordaros que s�lo se tendr�n que poder introducir
n�meros y esto os obligar� a controlar la introducci�n de datos. Como pista os
pongo
los operadores aritm�ticos para que no teng�is tanto problema:
Suma +
Resta �
Multiplicaci�n *
Divisi�n /

Ejercicio 2

En este ejercicio quiero que coj�is una lista de n�meros y se ordenen de mayor
a menor, o viceversa. Una vez logrado esto, quiero que hag�is lo mismo pero con
letras, de
manera que est�n ordenadas seg�n el abecedario.
Ejercicio 3

Cogeremos el algoritmo del ejercicio 2 para ordenar una lista de palabras que se
encuentre
en un fichero. De modo que ordenaremos la lista de palabras por orden alfab�tico,
lo mostraremos
por pantalla y luego lo escribiremos en un fichero.
Ejercicio 4

Dadas dos listas de palabras, unificar dichas listas de manera ordenada y devolver
el valor
por pantalla y en un fichero.

Con estos ejercicios repasaremos la creaci�n de funciones, bucles, sentencias


condicionales y
manejo de ficheros. Os voy a plantear un �ltimo ejercicio que ser� un reto, pero
creo que os resultara �til.
Se trata de resolver el problema de las torres de Han�i.

Este problema se plantea del siguiente modo:

Ejemplo de torres de Hanoi

Tendremos que llevar los discos de la primera torre a la �ltima. Pero nunca puede
haber un disco
menor debajo de uno mayor, es decir los discos grandes siempre tienen que estar
debajo de los peque�os.

Este es un problema que se suele resolver con llamadas recursivas. Es una t�cnica
que no he explicado
a lo largo del curso debido a que no es un recurso muy utilizado, pero que a veces
resulta muy �til
como en el caso de resolver el problema de las torres de Han�i.

Las llamadas recursivas son aquellas funciones que en su algoritmo, hacen


referencia s� misma. Esto
puede acarrear un problema y es que se quede la funci�n en un bucle infinito, por
lo que hay que dejar
muy bien definido el m�todo para que siempre tenga fin.
Un ejemplo de funci�n recursiva ser�a el c�lculo del n�mero factorial de un n�mero.
Sabemos que para
calcular el factorial de un n�mero tenemos que hacer lo siguiente:

n!=1�2���n

De esta ecuaci�n deducimos que:

n!=n�(n-1)!

Su algoritmo en python ser�a:


1
def factorial(num):
2

3
if num == 0 or num == 1:
4
return 1
5
else:
6
return num * factorial(num - 1)

Esto es todo por hoy, mucha suerte con los ejercicios y sobretodo con el �ltimo
reto, en la pr�xima entrega os dar� todas las soluciones. Estaros tranquilos que
si algo no os sale, el mejor consejo que os puedo dar es que lo pint�is en papel
primero, e intent�is reproducir el algoritmo a mano, una vez que ve�is que puede
ser el correcto lo empec�is a programar.

You might also like