GARANTIR DESCONTO

Fórum Função para converter horas em decimal??? #196462

21/11/2003

0

existe alguma funão específica para a conversão de horas para decimal.
preciso fazer uma media peças/hora, pensei em fazer uma formula mas talves o delphi tenha alguma função especifica.


Gandalf

Gandalf

Responder

Posts

21/11/2003

Koplin

Se as variaveis sao do tipo TTime ou TDateTime ou mesmo TDate já são tratadas pelo Delphi como numeros de ponto flutuante.
Basta jogar o resultado de seu calculo (hora1 - hora2 por exemplo) em uma variavel do tipo float

Se eu entendi é isso Agora: se voce quer representar 1 hora e meia como 1,5 ou duas horas e quinze como 2,15 tem que fazer na unha.


Responder

Gostei + 0

24/11/2003

Gandalf

NA UNHA DEU ISSO:

horas_antes := strtotime(MaskEdit4.EditText);
horas_depois := strtotime(MaskEdit5.EditText);
resultado_string := timetostr(horas_depois - horas_antes);
horas := copy (resultado_string,0,2);
minutos := copy (resultado_string,4,2);
decimal_minutos := (strtofloat(minutos))/60;
decimal_minutos_str := floattostr (decimal_minutos);
final := (horas) + (copy (decimal_minutos_str, 2,3));
final_double := strtofloat(final);


Responder

Gostei + 0

17/03/2011

Rafael

NA UNHA DEU ISSO:

horas_antes := strtotime(MaskEdit4.EditText);
horas_depois := strtotime(MaskEdit5.EditText);
resultado_string := timetostr(horas_depois - horas_antes);
horas := copy (resultado_string,0,2);
minutos := copy (resultado_string,4,2);
decimal_minutos := (strtofloat(minutos))/60;
decimal_minutos_str := floattostr (decimal_minutos);
final := (horas) + (copy (decimal_minutos_str, 2,3));
final_double := strtofloat(final);




Rapaz, essa informação me ajudou muito!! Saberia me informar como faço para adaptar o código acima caonsiderando os segundos também?

Muito Obrigado!
Responder

Gostei + 0

17/03/2011

Rafael

NA UNHA DEU ISSO:

horas_antes := strtotime(MaskEdit4.EditText);
horas_depois := strtotime(MaskEdit5.EditText);
resultado_string := timetostr(horas_depois - horas_antes);
horas := copy (resultado_string,0,2);
minutos := copy (resultado_string,4,2);
decimal_minutos := (strtofloat(minutos))/60;
decimal_minutos_str := floattostr (decimal_minutos);
final := (horas) + (copy (decimal_minutos_str, 2,3));
final_double := strtofloat(final);




Rapaz, essa informação me ajudou muito!! Saberia me informar como faço para adaptar o código acima caonsiderando os segundos também?

Muito Obrigado!


Por Exemplo, queria que o tempo 26:59:44h no final fosse representado somente como hora: 67,5h.


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar