tengo en siguiente problema con este programa, se supone que debería entregar estos resultados:
Código:
Sumar y restar dos instantes de tiempo
Primer instante (HHMMSS) ? 104530
Segundo instante (HHMMSS) ? 013040
Suma = 12:16:10
Mayor = 10:45:30
Menor = 01:30:40
Resta = 09:14:50
pero el problema es que la hora me la entrega como cero pensado que la hora del segundo dígito es 01.
el programa es este:
Código Python:
Ver originalprint "Sumar y restar dos instantes de tiempo"
d1=int(input("Primer instante (HMMSS) ?"))
d2=int(input("Segundo instante (HMMSS) ?"))
def horas(x):
return x/10000
def segundos(x):
return x - (x/100)*100
def minutos(x):
return (x/100) - (x/10000)*100
def totalSegundos(x):
s= segundos(x)
m= minutos(x)*60
h= horas(x)*3600
return (s+m+h)
def escribir(x):
s=x%60
m=x/60%60
h=x/3600
print h,":",m,":",s
st1= totalSegundos(d1)
st2= totalSegundos(d2)
def mayor(x,y):
r=max(x,y)
return r
def menor(x,y):
r=min(x,y)
return r
def resta(x,y):
if x>y:
return x-y
elif x<y:
return y-x
def suma(x,y):
return x+y
print
print "Los segundos totales del primer digito son:",st1," = ",
escribir(st1)
print "Los segundos totales del segundo digito son:",st2," = ",
escribir(st2)
print
print "Suma =",
escribir(suma(st1,st2))
print "Mayor =",
escribir(mayor(st1,st2))
print "Menor =",
escribir(menor(st1, st2))
print "Resta =",
escribir(resta(st1, st2))
y me entrega este resultado que no es el que me debería dar:
Código:
Sumar y restar dos instantes de tiempo
Primer instante (HHMMSS) ?100910
Segundo instante (HHMMSS) ?104530
Los segundos totales del primer digito son: 36550 = 10 : 9 : 10
Los segundos totales del segundo digito son: 38730 = 10 : 45 : 30
Suma = 20 : 54 : 40
Mayor = 10 : 45 : 30
Menor = 10 : 9 : 10
Resta = 0 : 36 : 20
por que ocurre eso al sacar solo las horas en el codigo ?
saludos