![]() |
Ejercicios Gráficos de Programación |
Puedes realizar los ejercicios con la librería que más te guste o prefieras (Tkinter, wxPython, Qt, etc), la idea es compartir el código y especificar con que librería fue realizado dicho código (por un tema de orden y no marearnos con las diferentes librerías).
Quizá estas entradas te puedan ayudar:
1 - Como instalar PyQt 4 en python
2 - Primera aplicación con Qt Designer y python
3 - Aplicaciones gráficas con Tkinter y python
4 - Diálogos y mensajes en Python con Tkinter
Las mejores soluciones serán publicadas en otra entrada referenciando al Autor de la solución.
Los códigos de las soluciones pueden dejarlo como comentario y servirán de referencia para los que recién comienzan con las aplicaciones gráficas en python. Recuerda que al dejar un comentario con código Python en el Blog, el mismo pierde la identación y puede ser confuso (en ese caso puedes hacer la identación con ---- 4 guiones por identación).
Ejemplo:
def Saludo():
----print "Hola Mundo"
Ejercicios de aplicaciones GUI en Python
Ejercicio 1.1 - Contador Creciente
![]() |
Ejercicio 1.1 |
El programa lleva 3 componentes:
1 - Una Etiqueta "Contador"
2 - Un lineEdit no editable, que muestre el valor del contador
3 - Un Botón "+"
Ejercicio 1.2 - Contador Decreciente
![]() |
Ejercicio 1.2 |
El programa lleva 3 componentes:
1 - Una Etiqueta "Contador"
2 - Un lineEdit no editable, que muestre el valor de contador y que inicie con el número 88
3 - Un Botón "-"
Ejercicio 1.3 - Factorial
![]() |
Ejercicio 1.3 |
Formula de factorial
Factorial de 5 = 1 x 2 x 3 x 4 x 5 = 120
Factorial de 3 = 1 x 2 x 3 = 6
La aplicación lleva:
1 - Dos etiquetas: una para n y otra para Factorial (n)
2 - Dos lineEdit no editables
3 - Un botón siguiente
Ejercicio 1.4 Contador
![]() |
Ejercicio 1.4 |
La aplicación lleva:
1 - Una etiqueta "Contador"
2 - Un lineEdit no editable, que muestre el contador y que inicie en 0
3 - 3 Botones
Ejercicios gráficos un poco más complejos
Ejercicio 2.1 Calculadora![]() |
Ejercicio 2.1 |
La aplicación lleva:
1 - Tres etiquetas (Primer número, Segundo número y Resultado)
2 - 3 lineEdit (el lineEdit de Resultado no se puede modificar)
3 - 6 Botones (+, -, *, /, % y RESET). El botón CLEAR debe borrar los 3 lineEdit. Al presionar (+, -, *, / o %) el único campo que se modifica es Resultado.
Ejercicio 2.2 Peliculas
![]() |
Ejercicio 2.2 |
La aplicación lleva:
1 - 2 Etiquetas (Escribe el título de una película y Películas)
2 - Un lineEdit donde se escribirá el nombre de la película
3 - Un listWidget que registra las películas añadidas
4 - Un botón "Añadir"
Ejercicio 2.3 Generador de números
![]() |
Ejercicio 2.3 |
La aplicación lleva:
1 - 3 Etiquetas (Número 1, Número 2 y Número Generado)
2 - 2 Spin Box
3 - 1 lineEdit que no pueda ser modificado
4 - 1 Botón "Generar"
Ejercicio 2.4 Calculadora 2
![]() |
Ejercicio 2.4 |
La aplicación lleva:
1 - 4 Etiquetas (Valor 1, Valor 2, Resultado y Operaciones)
2 - 4 radioButton (Sumar, Restar, Multiplicar y Dividir)
3 - 3 lineEdit (el lineEdit Resultado no puede ser modificado)
4 - 1 botón Calcular, que al ser presionado realice la operación correspondiente.
"Desafío para los más valientes..."
Juego Matemático
![]() |
Juego Matemático |
Escribir una aplicación GUI (llamada Juego Matemático) como la que se ve en la figura.
La aplicación lleva:
1 - 7 etiquetas (Juegos:, 2, Buenos:, 1, Malos:, 1 y -) las etiquetas que son números arrancan en vacías. La etiqueta - (entre medio de los dos lineEdit) arranca con signo de pregunta (?) y cambia dependiendo el valor del radioButton (Sumar = +, Restar = -, Multiplicar = * y Dividir = /).
2 - 3 lineEdit (Sólo el lineEdit Resultado puede ser modificado)
3 - 2 Botones (Nuevo Numero y Resultado)
Como funciona:
El jugador arranca con los radioButton y los lineEdit vacíos. Cuando el jugador presione Nuevo Juego saldrán 2 numero aleatorios (en los lineEdit de arriba) junto con 1 radioButton. El jugador debe poner un resultado dependiendo de la operación y presionar el botón Resultado. Si el jugador gana, Juego: suma 1 y Buenos: suma 1. El jugador presiona Nuevo Juego, salen dos números aleatorios nuevos y una operación nueva (todo aleatorio). El jugador hace un mal cálculo y pierde (Juegos: suma 1 y queda en 2, Malos: suma 1). Así sigue hasta que se aburra o se convierta en un genio jeje...
Hasta aquí están perdonados, pero...
Un poco más de complejidad ¿Porqué no?
Puedes agregar 3 radioButton más para que el jugador pueda elegir la dificultad. Si elige Fácil (los número aleatorios serán de 0 a 10), si elige Medio (los números aleatorios serán de 0 a 100) y si elige Difícil (los números aleatorios serán de 0 a 1000). Cada ves que elija una dificultad todo vuelve a 0.
![]() |
Dificultad |
![]() |
Tiempo |
Bueno espero que disfruten esta entrada y cualquier comentarios siempre es bienvenido.
Saludos, Diego.
Hice el ejercicio 1, lo comparto en este link para que lo vean, voy a ir intentando hacer los otros y los voy a ir poniendo ahi.
ResponderEliminarSaludos
https://copy.com/xgXqq1SZkHpy3hy4
Excelente José, gracias por compartir...
EliminarTerminado! En el mismo link dejé todos los ejercicios. Cualquiera que tenga una sugerencia para que sea mas simple bienvenido.
EliminarEstán todos los ejercicios, menos el último en la versión compleja (después voy a tratar de hacerlo).
Gracias Diego.
Abrazo.
Excelente José, después les doy una revisada. Como te comente, me tengo que poner en campaña y darle una solución a los ejercicios. Saludos
EliminarHola José como hago para poder ver las soluciones entré al link que dejaste pero no puedo verlo, empeze con esto de la programacion en python y estuve practicando pero todavia me falta. gracias
EliminarHola, hice el ejercicio 2.1, La Calculadora.
ResponderEliminarLa hice usando PyQt4 (con la herramienta QtDesigner) y Python 2.7, luego investigué más a fondo y me di cuenta que le puedes aplicar estilos a tu calculadora (con código css). Al final resulto una genial calculadora de escritorio. Por acá les dejo el código: https://github.com/CarMoreno/Vibora . Espero sea de ayuda.
Saludos.
y puedes compartirlo por favor?
EliminarHola ya hice casi todos los ejercicios pero no he podido hacer el del juego matemático porque no entiendo la función del juego no lo tengo claro...porque si se hace click a nuevo juego o nuevo número se supone que ya se sabe cuanto es el resultado de la operación y que operación es porque ya lo trae aleatoria mente. ..por favor podrían ser mas específicos para poder hacer está aplicación? Muchas gracias
ResponderEliminarY además tampoco entiendo que hace el botón resultado...soy el mismo que escribió como anónimo disculpen
ResponderEliminarLos dos números de arriba son aleatorios, el del resultado lo coloca el que va a jugar y luego presiona sobre el botón "Resultado" para comprobar si esta correcto. ¿Entiendes? Saludos y gracias por visitar el blog!!!
EliminarLa verdad sigo sin entender disculpa, yo entiendo que los números de arriba son aleatorios al igual que el radiobutton y por ende el signo que va en medio de los dos números todo eso es aleatorio...pero entonces que sentido tiene poner un resultado en el lineEdit que se puede editar (Resultado) si ya de antemano se como en el ejemplo que esta en el blog que 10 - 5 va hacer igual a 5 para que voy a comprobar algo que ya es obvio...no se si me entiendes..gracias y disculpa el fastidio pero quisiera estar bien claro como funciona
EliminarLa idea es pensar el problema y resolverlo. Se que el ejemlo de 10 - 5 es muy fácil, pero quizá 721 * 13 es más complicado. Si quieres puedes ponerle una cuenta regresiva de 10 segundos para que la persona conteste antes de ese tiempo, de lo contrario pierde. Te parece?
EliminarSaludos
Ah ok!! entendido ahora si lo tengo claro, gracias por responder Diego
EliminarFelicidades por tu blog....es bueno; me gustaría pertenecer a una comunidad que sea sobre python(soy autodidacta) y no encuentro con quien compartir...Gracias.Un abrazo desde Rep Dom
ResponderEliminarEs la gran parte del código
ResponderEliminargracias
Este comentario ha sido eliminado por el autor.
ResponderEliminarHola Diego como hago para poder ver las soluciones de la parte 2... entré al link que dejo josé pero no puedo verlo, empeze con esto de la programacion en python y estuve practicando pero todavia me falta. gracias
ResponderEliminarMichael, lo comparto de nuevo, se habían caído porque no existe mas Copy.com.
EliminarGracias!
https://drive.google.com/open?id=0B9Y0TvmkaKklM0hDOWdFSjFveEk
Hola chicos disculpen por casualidad alguno tiene la calculadora en tkinter, si fuera asi se los agradecería mucho
ResponderEliminarAlguno tiene el 1.1, 1.3 y 2.2 pero con tkinter?
ResponderEliminar