Valor a pagar pela Hora usada??

23/12/2005

0

salve galera, hoje eu uso esse procedimento para calcular quanto tempo o cliente vai usar de acordo com o que ele quer gastar...

procedure TForm1.Button1Click(Sender: TObject); 
var valor_pago,valor_hora : double; 
    horas,minutos : integer; 
begin 
   valor_pago := StrToFloat(Edit1.Text); 
   valor_hora := StrToFloat(Edit2.Text); 
   horas := Trunc(valor_pago/valor_hora); 
   minutos := round(((valor_pago/valor_hora) - Trunc(valor_pago/valor_hora)) * 60); 
   Label1.Caption := inttostr(horas) + ´:´ + inttostr(minutos) + ´h´; 
end;


[b:f053543653]mais gostaria de fazer o inverso, o cliente vai usar o tempo aberto, eu informo o valor da HORA e o tempo que ele usou, quero saber quanto vai pagar?[/b:f053543653]

forcinha galera, não to conseguindo! :wink:


Paullsoftware

Paullsoftware

Responder

Posts

24/12/2005

Edilcimar

tempo := horafinal - horainicial;
total := tempo * valorhora;
a única coisa que vai ter que considerar é se vai cobrar hora fracionada ou não


Responder

26/12/2005

Paullsoftware

tempo := horafinal - horainicial; total := tempo * valorhora; a única coisa que vai ter que considerar é se vai cobrar hora fracionada ou não


Valeu pela ajuda, [b:0e811d82ab]´Edilcimar´[/b:0e811d82ab] consegui resolver o problema...
a minha dificuldades era como passar o calculo para o código em Delphi!!!

ficou assim o meu código...
var ValorParcial,ValorTotal,ValorHora,ValorReajuste,Tempo:Double;
begin

ValorHora     := EditValorHora.Value;
ValorReajuste := EditReajuste.Value;
Tempo         := StrToTime(lblStatusTempo.Caption);
ValorParcial  := ( ValorHora * HoraParaMinuto(FormatDateTime(´hh:mm:ss´,Tempo)) ) / 60;
ValorTotal    := ValorParcial + ValorReajuste;
lblTotalAPagar.Caption := ´R$ ´ + FormatFloat(´#,,0.00´,ValorTotal);

um forte abraço e qq coisa estamos ai! :wink:


Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

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

Aceitar