PDA

Ver la Versión Completa : Tiempo en String


miguel_fr
25-04-2004, 00:25:00
buenas necesitaria que alguien me ayude a resolver este problemillo

yo manejo el tiempo en manera de string

ej. 12:10 seria mi cadena de string

yo quiero ingresar otra cadena con el mismo formato "__:__" y luego incrementar a mi hora actual (que es una cadena string) el tiempo ingresado.

Aclaro con un ejemplo

tiempo actual = 12:10

tiempo a incrementar = 00:25

valor esperado = 12:35



ya tengo el codigo para tomar por separados las horas y minutos de cada tiempo y lo que trato de hacer es lo siguiente

sumo mis minutos (previamente transformados a integer) y mi minuto esperado seria, el resto de dividir dicha suma entre 60, y mi hora total seria la suma de las horas mas la parte entera de la divicion de mis minutos por 60. hasta aqui todo vien, probe valores en exel y es asi como tengo que realizar el calculo. el problema se presenta al querer realizar esto en delphi, no estoy entendiendo el uso de "div" y "mod"



PD: LO QUIERO HACER CON STRING

jachguate
25-04-2004, 00:35:14
The value of x div y is the value of x/y rounded in the direction of zero to the nearest integer.
The mod operator returns the remainder obtained by dividing its operands. In other words, x mod y = x – (x div y) *
y.
como dicen que un ejemplo dice mas que mil palabras...

50 div 12 => 4
50 mod 12 => 2

50 div 10 => 5
50 mod 10 => 0

en una división de aquellas de primaria... con el simbolito |_______

div devuelve el "resultado" entero de la división, y mod el residuo.

Hasta luego.

;)

miguel_fr
25-04-2004, 18:13:17
por cierto "jachguate", muchisimas gracias nuevamente, se nota que vos si ves los hilos nuevos del foro y siempre tienes una respuesta.
sigo con el tema del tiempo, ahora con un nuevo problema, en este caso es de calculo de parte mia, ya que no estoy podiendo encontrar una equivalencia, paso a explicar
quiero obtener un valor que me diga, de acuerdo a una diferencia entre tiempos, el importa a cobrar.

"como dicen que un ejemplo dice mas que mil palabras..."
como bien dice jachguate

tiempo 1 = 1:30
tiempo 2 = 0:45
diferencia = 0:45
tipo de cobro = 1:00 cuesta $1 , 0:45 cuesta $0.75
por lo tanto el valor que tendria que darme seria $0.75

yo tengo dicho proceso en exel
los campos son del tipo tiempo
la resta es automatico
resta = campo2-campo1
y el calculo del tiempo lo realizo de la siguiente manera

(MINUTO(resta)/60)+(HORA(resta))

y el campo es de tipo moneda

me podrian indicar como puedo realizar esto
porfavor

delphi.com.ar
25-04-2004, 19:33:31
Resultado := Valor * (Horas + (Minutos / 60)) ????

jachguate
25-04-2004, 20:06:05
muchisimas gracias nuevamente, se nota que vos si ves los hilos nuevos del foro y siempre tienes una respuesta.


En honor a la verdad, he de aclarar que me parece que ninguna de las dos cosas es totalmente cierta. Me consta que hay muchos otros que están mas pendientes que yo del movimiento de los foros... y si revisás detenidamente, te vas a dar cuenta que no siempre tengo una respuesta. Con esto, no creas que desprecio tu agradecimiento, simplemente dejo constancia que me parece una opinión parcializada.

Hasta luego. ;)