Delphi - necesito sumar una hora

 
Vista:

necesito sumar una hora

Publicado por Zoveida montoya (23 intervenciones) el 04/09/2001 00:03:26
Hola..
Espero que alguien me pueda ayudar con esto....Despues de que saco la hora del sistema solamente necesito sumarle una hora mas..como lo hago. He intentado convwertir la hora a tipo String y sumarle los 60 minutos pero no funciona.

Agradeceria mucho su ayuda.

Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:necesito sumar una hora

Publicado por Ernesto D'Spirito (706 intervenciones) el 04/09/2001 00:31:50
Las fechas/horas en Delphi son números en punto flotante donde el entero 1 (uno) representaría un día, y entonces 0.5 significaría medio día, o sea 12 horas... Por lo tanto, si quieres sumarle 5 horas a una fecha hora, simplemente haces así:

hora := hora + 5 / 24;

1 / 24 es una fracción que representa una hora, y multiplicándola por 5, el resultado es una fracción que representa 5 horas.

Espero haberme explicado.

Ernesto
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:necesito sumar una hora

Publicado por Zoveida Montoya (23 intervenciones) el 04/09/2001 00:37:11
Gracias por resolver mi duda
Era justo lo que necesitaba, habia leido en la ayuda algo sobre lo que tu me dices aqui pero no sabia que onda con la conversion de numeros...
Gracias otra vez..
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:necesito sumar una hora

Publicado por Ernesto D'Spirito (706 intervenciones) el 04/09/2001 02:09:13
No hay de qué. Si quieres sumar minutos o segundos, usa una fórmula como esta:

hora := hora + horas / 24 + minutos / 1440 + segundos / 86400;

Un día (una unidad) tiene 24 horas, o sea que cada hora es 1/24, un día tiene 1440, o sea que cada minuto es 1/1440, y un día tiene 86400 segundos, o sea que cada segundo es un 1/86400.

Matemáticamente, esto también vale:

hora := hora + (horas*3600 + minutos*60 + segundos) / 86400;

Simplemente se ha pasado a común denomidor. Un minuto tiene 60 segundos, y una hora tiene 60 minutos, es decir 60 x 60 = 3600 segundos, así que haciendo las multiplicaciones obtenemos en el numerador el total de segundos que queremos sumar, el que dividimos por 86400 que es el total de segundos que tiene un día para así obtener la fracción del día al que corresponde ese tiempo.

Espero que la ampliación te sirva.

Ernesto
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar