Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Faian

[RESOLVIDO] Como somar valores?

Recommended Posts

Olá pessoal sou novo aqui no forum e novo em programação será que alguem poderia me ajudar.

Estou tentando somar os valores mas no final da soma e aparece um resultado nada haver ex: 545,00+1.000,00+5.464,00=551.464 onde o correto seria 7.009,00

 

Alguem poderia me ajudar por favor

 

<html><head><title>-</title><script language="javascript">function Calcula(){var Parametro1=document.frm.Valor1.value;var Parametro2=document.frm.Valor2.value;var Parametro3=document.frm.Valor3.value;var Soma=((parseFloat(Parametro1))+(parseFloat(Parametro2))+(parseFloat(Parametro3))); document.frm.EditValorTotal.value=Soma;}// Função para mascara de números (padrão brasileiro), porém pode-se escolher quantas casas decimais// param3 = número de casas decimaisfunction MascaraNumero(param1,param2,param3){tecla = String.fromCharCode(param2);if (param1.value.indexOf(',')>0){casas=param1.value.split(",");if (casas[1].length>param3){event.returnValue = false;return;}}if (tecla>=0 && tecla<=9)event.returnValue = true;else if (tecla=="," && param1.value.indexOf(',')==-1 && param1.value.length>0 && param3>0)event.returnValue = true;elseevent.returnValue = false;}// Função para formatar um número colocando separador de milhar e o número de casas decimais.// A função não verifica se o parametro numero é mesmo um número. numero deve estar no padrão brasileiro.function FormataNumero(numero,casas){negativo=false;if (numBrToUsa(numero)<0){negativo=true;numero=numero.replace("-","");} if (numero=="" || numero=="0")return "0,00";numero=numero.replace(".","");if (numero.indexOf(',')==-1)numero+= ",00";num=numero.split(",");aux="";y=1;for (x=num[0].length;x>0;x--){aux+= num[0].substr(x-1,1);if (y%3==0 && x>1)aux+=".";y++;}ret="";for (x=aux.length;x>0;x--)ret+= aux.substr(x-1,1);if (casas>0)ret+=",";if (num[1].length>=casas)len=casaselselen=num[1].length;for (x=0;x<len;x++)ret+= num[1].substr(x,1);for (y=x;y<casas;y++)ret+= "0";if (negativo)ret="-"+ret;return ret;}// Função para converter um número do padrão brasileiro para o padrão americanofunction numBrToUsa(numero){if (numero=="")return "0.00";aux=numero.replace(".","");return parseFloat(aux.replace(",","."));}// Função para converter um número do padrão americano para o padrão brasileirofunction numUsaToBr(numero){if (numero=="")return "0,00";numero=numero.toString();if (numero.indexOf('.')==-1)numero+= ".00";return numero.replace(".",",");}</script></head><body><form name="frm"><input type="text" name="Valor1" onKeyUp="Calcula()" onKeyPress="return MascaraNumero(this,window.event.keyCode,2)" onBlur="this.value=FormataNumero(this.value,2)" size="20" style="border: 1px solid #808080"><BR><input type="text" name="Valor2" onKeyUp="Calcula()" onKeyPress="return MascaraNumero(this,window.event.keyCode,2)" onBlur="this.value=FormataNumero(this.value,2)" size="20" style="border: 1px solid #808080"><BR><BR><input type="text" name="Valor3" onKeyUp="Calcula()" onKeyPress="return MascaraNumero(this,window.event.keyCode,2)" onBlur="this.value=FormataNumero(this.value,2)" size="20" style="border: 1px solid #808080"><BR><BR>total:<input type="text" name="EditValorTotal" size="20" style="border: 1px solid #FFFFFF"><BR><BR></form></body></html>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cara,não sei pra que serve o parseFloat, mas eu utilizo sempre o parseInt, para estas coisas....tomara q eu consiga ter ajudado.abraçops: ateh era bom me dizer pra que serve o parseFloat!vlw

Compartilhar este post


Link para o post
Compartilhar em outros sites
parseFloat = Converte um string em ponto flutuante, se for um string com números ele pega somente os números. Agora no caso de números, ele pega somente a parte inteira, ou seja, EX: 23,45 com o parseFloat fica assim: 23, entendeu?

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.