elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Guía rápida para descarga de herramientas gratuitas de seguridad y desinfección


+  Foro de elhacker.net
|-+  Programación
| |-+  Scripting
| | |-+  [Código-PyQT4]Binario a decimal y su inverso - JaAViEr | 0x5d
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: [Código-PyQT4]Binario a decimal y su inverso - JaAViEr | 0x5d  (Leído 2,160 veces)
0x5d

Desconectado Desconectado

Mensajes: 241



Ver Perfil WWW
[Código-PyQT4]Binario a decimal y su inverso - JaAViEr | 0x5d
« en: 6 Abril 2012, 23:39 pm »

Hola a todos !

Como le he vuelto a dar la vida a mi PC. Instalé el Debian de nuevo, no podía faltar instalar el amado QT4. Así que me propuse como práctica crear este mismo código Consola ~> [Python]Decimal a binario y su invero, que por cierto también pasé a la web ~> Binary Converter Online. Esta vez en PyQT4 primero les dejo el screenshot de como se ve:


Y Su código :
Código
  1. # -*- coding: utf-8 -*-
  2. # Autor : 0x5d ~> JaAViEr
  3. # Sitio Web ~> www.rootcodes.com
  4. # Twitter ~> @0x5d
  5.  
  6. from PyQt4 import QtGui, QtCore
  7. import sys
  8.  
  9. class testeo(QtGui.QWidget):
  10.  def __init__(self, parent=None):
  11.    QtGui.QWidget.__init__(self, parent)
  12.    self.setWindowTitle("Bin to Dec | 0x5d")
  13.    self.label_binario = QtGui.QLabel("Binario :", self).setGeometry(2,15,59,17)
  14.    self.input_binario = QtGui.QLineEdit(self)
  15.    self.input_binario.setGeometry(60,10,230,27)
  16.    self.label_resultado = QtGui.QLabel("Resultado :", self).setGeometry(2,50,80,17)
  17.    self.input_salida = QtGui.QLineEdit(self)
  18.    self.input_salida.setGeometry(80,43,210,27)
  19.    self.input_salida.setReadOnly(True)
  20.    self.boton_limpiar = QtGui.QPushButton("Limpiar campos", self)
  21.    self.boton_limpiar.setGeometry(1,75,140,27)
  22.    self.boton_convertir = QtGui.QPushButton("Convertir", self)
  23.    self.boton_convertir.setGeometry(145,75,140,27)
  24.    self.connect(self.boton_limpiar, QtCore.SIGNAL("clicked()"), self.clear_inputs)
  25.    self.connect(self.boton_convertir, QtCore.SIGNAL("clicked()"), self.conversor)
  26.  
  27.  def clear_inputs(self):
  28.    self.input_binario.setText("")
  29.    self.input_salida.setText("")
  30.  
  31.  def conversor(self):
  32.    numero = str(self.input_binario.text())
  33.    t = 0
  34.    for i,h in zip(numero[::-1],range(0,len(numero))): t+=int(i)*2**int(h)
  35.    self.input_salida.setText(str(t))
  36.  
  37. app = QtGui.QApplication(sys.argv)
  38. form = testeo()
  39. form.show()
  40. app.exec_()
  41.  
Y Decimal a Binario:

Código ~>:
Código
  1. # -*- coding: utf-8 -*-
  2. # Autor : 0x5d ~> JaAViEr
  3. # Sitio Web ~> www.rootcodes.com
  4. # Twitter ~> @0x5d
  5.  
  6. from PyQt4 import QtGui, QtCore
  7. import sys
  8.  
  9. class testeo(QtGui.QWidget):
  10.  def __init__(self, parent=None):
  11.    QtGui.QWidget.__init__(self, parent)
  12.    self.setWindowTitle("Dec to Bin | 0x5d")
  13.    self.label_binario = QtGui.QLabel("Decimal:", self).setGeometry(2,15,59,17)
  14.    self.input_binario = QtGui.QLineEdit(self)
  15.    self.input_binario.setGeometry(60,10,230,27)
  16.    self.label_resultado = QtGui.QLabel("Resultado :", self).setGeometry(2,50,80,17)
  17.    self.input_salida = QtGui.QLineEdit(self)
  18.    self.input_salida.setGeometry(80,43,210,27)
  19.    self.input_salida.setReadOnly(True)
  20.    self.boton_limpiar = QtGui.QPushButton("Limpiar campos", self)
  21.    self.boton_limpiar.setGeometry(1,75,140,27)
  22.    self.boton_convertir = QtGui.QPushButton("Convertir", self)
  23.    self.boton_convertir.setGeometry(145,75,140,27)
  24.    self.connect(self.boton_limpiar, QtCore.SIGNAL("clicked()"), self.clear_inputs)
  25.    self.connect(self.boton_convertir, QtCore.SIGNAL("clicked()"), self.conversor)
  26.  
  27.  def clear_inputs(self):
  28.    self.input_binario.setText("")
  29.    self.input_salida.setText("")
  30.  
  31.  def conversor(self):
  32.    resto = []
  33.    nuevo = [int(self.input_binario.text())]
  34.    while nuevo[-1]!=0:
  35.      resto.append(nuevo[-1]%2)
  36.      nuevo.append(nuevo[-1]/2)
  37.    s = ""
  38.    for i in resto[::-1]: s+="%s"%i
  39.    self.input_salida.setText(str(s))
  40.  
  41. app = QtGui.QApplication(sys.argv)
  42. form = testeo()
  43. form.show()
  44. app.exec_()
  45.  

Fuente : http://rootcodes.com/pyqt4binario-a-decimal-y-su-inverso/

Saludos, Javier.


En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
[Código-PyQT4]Extractor de imágenes - JaAViEr(0x5d)
Scripting
0x5d 0 2,056 Último mensaje 24 Diciembre 2011, 23:22 pm
por 0x5d
[Código-PyQT4]Calculadora por secuencias - JaAViEr(0x5d)
Scripting
0x5d 2 2,843 Último mensaje 27 Diciembre 2011, 02:19 am
por 0x5d
[Código-PyQT4]All in one - JaAViEr(0x5d)
Scripting
0x5d 0 2,003 Último mensaje 11 Febrero 2012, 05:11 am
por 0x5d
[Código-PyQT4]Detectar campos de un formulario web - JaAViEr|0x5d
Scripting
0x5d 5 3,455 Último mensaje 9 Abril 2012, 19:39 pm
por Runex
[Código-PyQT4] Escaner de Puertos - JaAViEr | 0x5d
Scripting
0x5d 0 2,127 Último mensaje 31 Octubre 2013, 04:59 am
por 0x5d
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines