Eu uso esta função e não da erro
function Arredondar(Valor: Double; Dec: Integer): Double;
var
Valor1,
Numero1,
Numero2,
Numero3: Double;
begin
Valor1:=Exp(Ln(10) * (Dec + 1));
Numero1:=Int(Valor * Valor1);
Numero2:=(Numero1 / 10);
Numero3:=Round(Numero2);
Result:=(Numero3 / (Exp
Testei e vi que tinha um acess violation em seu codigo
o correto eh assim:
procedure TForm1.Button1Click(Sender: TObject);
var
NParcela, i : Integer;
ValorTotal : Currency;
Parc: array [1..10] of real;
begin
NParcela := 3;
ValorTotal:= 1000;
For i := 1 to NParcela do
Begin
If i = NParcela T
ah nao sei se vc ja declarou mas RoundTo necessita da declaracao da unit
Math
2009/12/4 Eduardo Melo
>
>
> Leandro estou testando sua função, mas esta apresentando erro em
> NParcela,13,2, dizendo expect but ',' found, segue abaixo como estou
> fazendo
> para teste:
>
> procedure TForm1.Button1C
Desculpa eduardo.. e que n escrevi no compilador ai confundi as funcoes
RoundTo soh trabalha informando o numero de casas decimais e nao como o
FloatToStrF(); erro meu, ficando assim:
RoundTo(Valor,-2); //soh arruma na funcao trocando todos 13,2 por -2 ok
Informacao:
-2 quer dizer que arredondará
Leandro estou testando sua função, mas esta apresentando erro em
NParcela,13,2, dizendo expect but ',' found, segue abaixo como estou fazendo
para teste:
procedure TForm1.Button1Click(Sender: TObject);
var
NParcela, i : Integer;
ValorTotal : Currency;
Parc: array of integer;
begin
NParcela := 3;
V
3 = 3x 333,3,33 x 3 = 999,991000 - 999,99 = 0,01somando-se esse
> 0,01 na última parcela, teria-se 2x333,33 + 1x333,34
> Esse raciocínio serve para qualquer quantidade de parcelas!
>
> Valfrid
>
> --- Em qua, 25/11/09, Tico >
> escreveu:
>
> De: Tico >
> Assu
raciocínio serve para qualquer quantidade de parcelas!
Valfrid
--- Em qua, 25/11/09, Tico escreveu:
De: Tico
Assunto: [delphi-br] Problemas com arredondamento
Para: delphi-br@yahoogrupos.com.br
Data: Quarta-feira, 25 de Novembro de 2009, 16:45
Boa tarde senhores,
Estou tendo um problema com
IO
Pense a respeito e será simples. A resolução também é simples para esse caso.
Sua rotina de arredondamento está completamente equivocada.
To: delphi-br@yahoogrupos.com.br
From: doutort...@gmail.com
Date: Wed, 25 Nov 2009 16:45:29 -0200
Subject: [delphi-br] Problemas com arre
) - (valor subtotal);
4 - As demais parcelas o valor é o calculado no inicio.
Use currency, não use float.
Espero ter ajudado.
- Original Message -
From: Tico
To: delphi-br@yahoogrupos.com.br
Sent: Wednesday, November 25, 2009 4:45 PM
Subject: [delphi-br] Problemas com
Ja tentou aplicar as funcoes div e mod
talvez resolva seu caso ..
att. Marcio.
faça o seguinte:
For i := 1 to NParcela do
Begin
If i = NParcela Then
Parc[i] := ValorTotal - RoundTo(ValorTotal / NParcela,13,2) *
(NParcela - 1)
Else
Parc[i] = RoundTo(ValorTotal / NParcela,13,2);
End;
2009/11/25 Tico
>
>
> Boa tarde senhores,
>
> Estou
Boa tarde senhores,
Estou tendo um problema com arredondamento no meu sistema. É o seguinte:
Se o valor da minha nota é de R$ 1477,00, e preciso dividir em 3 parcelas eu
antes deixava simplesmente 3 parcelas de R$ 492,33.
O problema é que agora, com a NF-e, os clientes estão exigindo que a soma
d
Não li o seu e-mail inteiro (estou com sono) mas...
Faz um Cast nos campos para que eles fiquem iguais
Tipo.. Cast(camp1 as numeric(12,4)) (mesmo que ele esteja definido como
numeric(12,3)... faça isso e vê se dá certo...
outra coisa...
Tente multiplicar/dividir por 100.000 por exemplo (onde ".
Bom dia Galera.
Seguinte, estou enfrentando um problema no firebird e não estou conseguindo
solucionar.
Estou desenvolvendo um sistema de restaurante, e
Eu tenho uma tabela de produtos, e nesta tabela eu tenho os seguintes
campos:
- PRODUTO PK
- CATEGORIAPRODUTO = FK
- NOMEPR
14 matches
Mail list logo