Programa Hora
Publicado por codr (3 intervenciones) el 07/10/2006 23:56:08
Buenas, estoy intentando hacer un programa en el cual, pida al usuario una hora, un minuto, y un segundo, y te muestre por pantalla la hora anterior (es decir, un segundo antes) y la hora posterior ( un segundo despues) con su control de errores y todo.
Pero tengo un pequeño, con el init, que no se si lo hago bien, y sobretodo con las funciones ya que no lo domino aun demasiado, os copio lo que tengo de programa.
#Crear la estructura Hora
class Hora:
def __init__(self, horas, minutos, segundos):
self.h = horas
self.m = minutos
self.s = segundos
#Funcion que pide al usuario la hora.
def demanarHora():
Hora.h = int(raw_input("Hora? : "))
Hora.m = int(raw_input("Minut? : "))
Hora.s = int(raw_input("Segon?: "))
print
#Comprobar que son las horas son válidas
def comprobarHora():
es_correcta = True
if Hora.horas<0 or Hora.horas>23:
print "Error hora"
es_correcta = False
if Hora.minutos<0 or Hora.minutos>59:
print "Error minut"
es_correcta = False
if Hora.segundos<0 or Hora.segundos>59:
print "Error segons"
es_correcta = False
#Funcion que calcula Hora
def calculaAnterior():
if es_correcta:
ha = Hora.horas
ma = Hora.minutos
sa = Hora.segundos
sa = sa - 1
if sa < 0:
sa = 59
ma = ma - 1
if ma < 0:
ma = 59
ha = ha - 1
if ha < 0:
ha = 23
No se que pasa, que el raw_input no me pide nada. Saludos
Pero tengo un pequeño, con el init, que no se si lo hago bien, y sobretodo con las funciones ya que no lo domino aun demasiado, os copio lo que tengo de programa.
#Crear la estructura Hora
class Hora:
def __init__(self, horas, minutos, segundos):
self.h = horas
self.m = minutos
self.s = segundos
#Funcion que pide al usuario la hora.
def demanarHora():
Hora.h = int(raw_input("Hora? : "))
Hora.m = int(raw_input("Minut? : "))
Hora.s = int(raw_input("Segon?: "))
#Comprobar que son las horas son válidas
def comprobarHora():
es_correcta = True
if Hora.horas<0 or Hora.horas>23:
print "Error hora"
es_correcta = False
if Hora.minutos<0 or Hora.minutos>59:
print "Error minut"
es_correcta = False
if Hora.segundos<0 or Hora.segundos>59:
print "Error segons"
es_correcta = False
#Funcion que calcula Hora
def calculaAnterior():
if es_correcta:
ha = Hora.horas
ma = Hora.minutos
sa = Hora.segundos
sa = sa - 1
if sa < 0:
sa = 59
ma = ma - 1
if ma < 0:
ma = 59
ha = ha - 1
if ha < 0:
ha = 23
No se que pasa, que el raw_input no me pide nada. Saludos
Valora esta pregunta


0