Um número elevado a outro
Tenho no meu sistema dois campos tipo DATA, vencimento e Pago em. Em outro campo do tipo numérico, fica registrado a diferença entre essas duas datas, que corresponde aos dias de atraso.
O que não estou conseguindo fazer é elevar o valor da mensalidade, ao número de dias em atraso.
A expressão que estou utilizando é:
Mensalidade*(1+Juros)^DiasDeAtraso.
Resumindo, quero saber apenas como trabalha com um valor elevado a outro.
O sinal de ^ (circunflexo) assim como acontece no Excel, realmente eleva um valor a outro.
Certo da cooperação de todos, antecipadamente agradeço.
O que não estou conseguindo fazer é elevar o valor da mensalidade, ao número de dias em atraso.
A expressão que estou utilizando é:
Mensalidade*(1+Juros)^DiasDeAtraso.
Resumindo, quero saber apenas como trabalha com um valor elevado a outro.
O sinal de ^ (circunflexo) assim como acontece no Excel, realmente eleva um valor a outro.
Certo da cooperação de todos, antecipadamente agradeço.
Pro-luck
Curtidas 0
Respostas
Afarias
10/09/2004
Vc deve usar a função Power (unit MATH) para isso, ex::
Result := Mensalidade * Power((1+Juros), DiasDeAtraso);
T+
Result := Mensalidade * Power((1+Juros), DiasDeAtraso);
T+
GOSTEI 0
Pro-luck
10/09/2004
Sobe
GOSTEI 0
Pro-luck
10/09/2004
Pelo que percebi a declaração da Unit Math, não funciona do Delphi 3, assim sendo, quero saber se vc tem uma outra dica para me dar.
Só quero pegar o valor de DBEdit e elevá-lo ao valor de um outro DBEdit.
Certo de vossa atenção e boa vontade, antecipadamente agradeço.
Só quero pegar o valor de DBEdit e elevá-lo ao valor de um outro DBEdit.
Certo de vossa atenção e boa vontade, antecipadamente agradeço.
GOSTEI 0
Tatuweb
10/09/2004
Colega,
a unit math existe no Delphi 3. Eu mesmo tenho o Delphi 3 instalado e aqui funciona sem problemas. Ou vc está declarando a unit no local errado ou o arquivo deve ter sido deletado do micro. Em todo caso use a função abaixo. Ela é a função Power da unit math.
a unit math existe no Delphi 3. Eu mesmo tenho o Delphi 3 instalado e aqui funciona sem problemas. Ou vc está declarando a unit no local errado ou o arquivo deve ter sido deletado do micro. Em todo caso use a função abaixo. Ela é a função Power da unit math.
function Power (Base: Extended; Exponent: Integer): Extended; asm mov ecx, eax cdq fld1 xor eax, edx sub eax, edx jz @@3 fld Base jmp @@2 @@1: fmul ST, ST @@2: shr eax,1 jnc @@1 fmul ST(1),ST jnz @@1 fstp st cmp ecx, 0 jge @@3 fld1 fdivrp @@3: fwait end;
GOSTEI 0