Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
e ae pessoal..
seguinte meu problema agora é:
eu tenho um valor por exemplo 100 e tenho outro valor que divide o primeiro valo, que no caso é por exemplo 3.
ao dividir o 100 por 3 o resultado é 3,333333333333... certo? eu estou fazendo o contas a pagar do meu sistema e no caso o 3 seria o tanto de parcelas e o 100 o valor da compra. no caso iriam ficar 3 parcelas de 3,3333333, o que eu precizo é que a 1° parcela seja arredondada para 3,34 e as outras fiquem em 3,33, entenderam? é para nãp perder nenhum centavo..
alguma dica ai??
tem que usar a operação de mod(%, resto de divisão).
var valor_parcelas = ((100-(100%3))/3);
var valor_primeira_parcela = valor_parcelas + (100%3);
uma funcão simples que poderia resolver:
function getValorParcelas(precoTotal,numeroParcelas){
var valorParcela = ((precoTotal-(precoTotal%numeroParcelas))/ numeroParcelas);
var valorPrimeiraParcela = valorParcela + (precoTotal%numeroParcelas);
return { 'valor_primeira_parcela': valorPrimeiraParcela , 'valor_parcela': valorParcela, 'numero_parcelas': numeroParcelas };
}
usando a função
var parcelaObj = getValorParcelas(100,3);
alert(parcelaObj.valor_primeira_parcela);
alert(parcelaObj.valor_parcela);
alert(parcelaObj.numero_parcelas);
Abraço
Joga cada parcela em um indice de um array.
Usa uma variavel soma para no final ver a diferença q falta pro valor final, mais exclui a primeira parcela.
Depois de preencher as parcelas no for, você diminui do total a soma das parcelas e joga no primeiro indice do array parcelas, assim nao perdendo os centavos.