Ir para conteúdo

POWERED BY:

Arquivado

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

Hiltonmm

Calculo de Porcentagen com Arredondamento

Recommended Posts

Bom dia

 

Estou terminando um programinha em php mas esbarrei em um problema que nem sei como começar.

 

bem o q eu tenho que fazer é o seguinte

 

em uma consulta a uma das tabelas eu recebo um resultado de 23.33

 

o meu problema e o seguinte, eu tenho q pegar esse valor e fazer a seguite conta

 

23.33 * 20% = 4.666 so que eu tenho que arredondar esse resultado para Baixo despresando as casas exedentes o resultado real dessa conta deve ser 4.66.

23.33 * 5% = 1.1665 e o resultado real dessa deve ser 1.16

 

a minha conta comleta seria.

 

23.33 * 20% = 4.66

23.33 * 5% = 1.16

1.16 + 4.66 + 23.33 = 29.15

 

Eu não posso fazer a conta direto porque em alguns casos vai dar diferença

23.33 * 25% = 5.83 + 23.33 = 29.16 diferença de 1 centavo mas isso vai dar problema.

 

Peço uma ajudinha para vocês pois já fiz o programa todo mas travei nessa parte e não sei nem como começar.

 

Obrigado

Compartilhar este post


Link para o post
Compartilhar em outros sites

Usa o number_format()

 

Exemplo:

$numero "1.1665";

$numero_final = number_format($numero,2,".",".");

echo $numero_final;

 

resultado vai lhe dar 1.16

Compartilhar este post


Link para o post
Compartilhar em outros sites

Usa o number_format()

 

Exemplo:

$numero "1.1665";

$numero_final = number_format($numero,2,".",".");

echo $numero_final;

 

resultado vai lhe dar 1.16

Amigo Otima dica só que o resultado que ta dando é 1.17 ou seja ele ta arredondando para +

 

tem como você me dar outra ajudinha ai pq eu preciso de 1.16

 

Obrigadão

Compartilhar este post


Link para o post
Compartilhar em outros sites

umm....

 

 

Olha.. naum sei como fazer.. dai fiz uma função simples para você poder utilizar...

 

PHP
<?

function FormatarNumero( $numero, $casas ) {

        $n = explode('.', $numero);

        $decimais = substr($n[1],0,$casas);

        $resultado = $n[0].".".$decimais;

    return $resultado;

}

 

$numero = FormatarNumero("1.1665", "2");

 

echo $numero;

?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

umm....

 

 

Olha.. naum sei como fazer.. dai fiz uma função simples para você poder utilizar...

 

PHP
<?

function FormatarNumero( $numero, $casas ) {

        $n = explode('.', $numero);

        $decimais = substr($n[1],0,$casas);

        $resultado = $n[0].".".$decimais;

    return $resultado;

}

 

$numero = FormatarNumero("1.1665", "2");

 

echo $numero;

?>

 

Muito Obrigado Pela ajuda

 

Você me deu um ponto de partida para minha solução

consegui resolver

 

 

$a1 = "58.23";
$number1 = $a1 * 20 /100;
$number2=explode(".",$number1);
$number2[1]=substr($number2[1],0,2);
$numero_novo = implode(".", $number2);
echo "Número novo: $numero_novo";

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.