Soluciones de los ejercicios gráficos (parte 1)

Ejercicios Python con librería PyQt4
Ejercicios Python con librería PyQt4

Aquí dejare las soluciones a los Ejercicios gráficos de programación python (parte 1) . La librería que utilice para resolver los ejercicios fue PyQt4, pero recuerda que puedas resolver los ejercicios con la librería de tu preferencia. 


Ejercicio 1.1 - Contador creciente


Como pide la letra del ejercicio, creo una ventana parecida y dentro de ella coloco una etiqueta "Contador", un lineEdit al cual le destildo la propiedad "enabled" para que no se pueda modificar y lo inicializo en 0, y un botón "+".


El gráfico queda así:


Contador Creciente en Python
Contador Creciente en Python



Y acá va el código:

#Diego Caraballo
#www.pythondiario.com
#Contador creciente en PyQt4
#!/usr/bin/env python
# -*- coding: utf-8 -*-

import sys
from PyQt4 import QtCore, QtGui, uic
 
# Cargar nuestro archivo .ui
form_class = uic.loadUiType("C:UsersAdminDesktopcontCreciente.ui")[0]
 
class MyWindowClass(QtGui.QMainWindow, form_class):
 def __init__(self, parent=None):
  QtGui.QMainWindow.__init__(self, parent)
  self.setupUi(self)
  self.btnMas.clicked.connect(self.btn_mas_clicked)
  
 # Evento del boton +
 def btn_mas_clicked(self):
  x = int(self.valor.text())
  resultado = x + 1
  self.valor.setText(str(resultado))
 
  
app = QtGui.QApplication(sys.argv)
MyWindow = MyWindowClass(None)
MyWindow.show()
app.exec_()


Ejercicio 1.2 - Contador Decreciente


Como dice la letra, realizo un gráfico lo más parecido y me pongo a trabajar en el:

Aquí el gráfico:


Contador decreciente en Python
Contador decreciente en Python





Aquí va el código: 

#www.pythondiario.com
#Diego Caraballo
#Contador decreciente en PyQt4
#!/usr/bin/env python
# -*- coding: utf-8 -*-

import sys
from PyQt4 import QtCore, QtGui, uic
 
# Cargar nuestro archivo .ui
form_class = uic.loadUiType("C:UsersAdminDesktopconDecreciente.ui")[0]
 
class MyWindowClass(QtGui.QMainWindow, form_class):
 def __init__(self, parent=None):
  QtGui.QMainWindow.__init__(self, parent)
  self.setupUi(self)
  self.btnMenos.clicked.connect(self.btn_menos_clicked)
  
 # Evento del boton -
 def btn_menos_clicked(self):
  x = int(self.valor.text())
  resultado = x - 1
  self.valor.setText(str(resultado))
 
  
app = QtGui.QApplication(sys.argv)
MyWindow = MyWindowClass(None)
MyWindow.show()
app.exec_()

Ejercicio 1.3 - Factorial

Siguiendo el ejercicio al pie de la letra, aquí va el gráfico:
Para calcular el factorial utilice la solución de José, Gracias!!!


Factorial en PyQt4
Factorial en PyQt4

Aquí va el código:

#Diego Caraballo
#www.pythondiario.com
#Calcula el factorial en PyQt
#!/usr/bin/env python
# -*- coding: utf-8 -*-

import sys
from PyQt4 import QtCore, QtGui, uic
 
# Cargar nuestro archivo .ui
form_class = uic.loadUiType("C:UsersAdminDesktopFactorial.ui")[0]


class MyWindowClass(QtGui.QMainWindow, form_class):
 def __init__(self, parent=None):
  QtGui.QMainWindow.__init__(self, parent)
  self.setupUi(self)
  self.btnSiguiente.clicked.connect(self.btn_siguiente_clicked)
  
  
 # Evento del boton Siguiente
 def btn_siguiente_clicked(self):
  var_creciente = int(self.valor.text()) + 1 
  self.valor.setText (str(var_creciente))
  #realizo el factorial
  var_factorial = 1 
  for a in range (1 , int(self.valor.text())):
   var_factorial = var_factorial * (a+1)
  self.factorial.setText (str(var_factorial))
  
 
  
app = QtGui.QApplication(sys.argv)
MyWindow = MyWindowClass(None)
MyWindow.show()
app.exec_()

Ejercicio 1.4 - Contador


Tal cual la descripción del ejercicio pongo en marcha el gráfico y luego el código:


Contador en Python y PyQt4
Contador en Python y PyQt4



Aquí el código:

#Diego Caraballo
#www.pythondiario.com
#Contador en PyQt
#!/usr/bin/env python
# -*- coding: utf-8 -*-

import sys
from PyQt4 import QtCore, QtGui, uic
 
# Cargar nuestro archivo .ui
form_class = uic.loadUiType("C:UsersAdminDesktopContador.ui")[0]

class MyWindowClass(QtGui.QMainWindow, form_class):
 def __init__(self, parent=None):
  QtGui.QMainWindow.__init__(self, parent)
  self.setupUi(self)
  self.btnUp.clicked.connect(self.btn_Up_clicked)
  self.btnDown.clicked.connect(self.btn_Down_clicked)
  self.btnReset.clicked.connect(self.btn_Reset_clicked)
  
  
 # Evento del boton Count Up
 def btn_Up_clicked(self):
  masUno = int(self.valor.text()) + 1
  self.valor.setText(str (masUno))
   
 # Evento del boton Count Down
 def btn_Down_clicked(self):
  menosUno = int(self.valor.text()) - 1
  self.valor.setText(str (menosUno))
  
 # Evento del boton Reset
 def btn_Reset_clicked(self):
  self.valor.setText(str (0))
  
 
  
app = QtGui.QApplication(sys.argv)
MyWindow = MyWindowClass(None)
MyWindow.show()
app.exec_()

Bueno hasta aquí dejo toda la primera parte de los ejercicios gráficos en Python. Espero les sea de ayuda y como siempre les digo, no duden en dejar cualquier tipo de comentario, todo suma. Saludos, Diego...

  1. Anónimo dice:

    Este comentario ha sido eliminado por el autor.

  2. Anónimo dice:

    Excelente. Podríamos hacer más ejercicios como estos pero que en los cometarios se dejen las soluciones. Quisiera poder aportar aquí.

    1. PythonDiario dice:

      Claro, las soluciones tambien son bienvenidas. Saludos y gracias por pasarte por el blog.

  3. caizedo cimarron dice:

    maravilloso para mi que soy novato y me interesa la programasion muy importante estos ejercicios

    1. PythonDiario dice:

      Me alegra te sean de ayuda. Gracias por visitar el bog!!!

  4. carijote80 dice:

    Excelente...Bueno como te comente en el artículo anterior ya los resolvi todos pero lo hice con Tkinter solo me faltaba el del juego matemático y ya lo hice anoche, también quisiera poner los codigos para que el resto de la comunidad los vea pero nose como hacerlo disculpen!! Ah solo me falta ponerle el lcd number para que haga la cuenta regresiva pero nose como hacerlo en Tkinter si alguien me puede decir como hacerlo? gracias

  5. Unknown dice:

    Oye tío ya existe la versión 5 ay que actualizar no te parece?

  6. Unknown dice:

    Hola, buenos días a todos:
    Agradecer a todos y en especial a los creadores de esta pagina pues estoy empezando en el mundo de la programación y con Python, y me parece un gran aporte y trabajo lo que estoy viendo aqui. Muchas gracias, Un Saludo!

    1. PythonDiario dice:

      Gracias iago. La verdad aveces se nos complica un poco por los tiempos, pero la idea es compartir ;). Saludos

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Subir

Te has suscrito correctamente al boletín

Se produjo un error al intentar enviar tu solicitud. Inténtalo de nuevo.

Mi Diario Python will use the information you provide on this form to be in touch with you and to provide updates and marketing.