Ir para conteúdo

Arquivado

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

fabio.aurelio

Calculo de juros - sem saber taxa

Recommended Posts

Ola , pessoal!

 

Estou tentando calcular uma formula no php, para que me de a taxa de juros cobrada num financiamento.

Estudei alguns scripts, mas eles sempre pedem a taxa, e neste caso, quero descobrir o juros cobrado e no caso de antecipação, qual seria o desconto..

 

Exemplo:    valor financiado: R$ 5.000  - Parcelado em 10 x R$ 350,00   (qual taxa foi usada aqui?)

Exemplo 2:  valor financiado: R$ 5.000 -> Paguei 4 parcelas, agora vou quitar tudo que resta! Qual seria o valor pra quitação?

 

Nao sei se fui claro, mas 'e isso

 

Se alguem tiver alguma ideia,,,

 

Abc,

Compartilhar este post


Link para o post
Compartilhar em outros sites

Fabio, o exemplo 1 esta estranho em kkkkkk

financiar 5k e pagar somente 3.5k, me fala onde é que eu quero em kkkkkk

 

tirando as brincadeiras você precisa saber se o juros é fixo ou composto.

se for fixo você vai multiplicar as parcelas*valor_parcela

e subtrair esse valor do valor financiado

ai é só você descobrir a porcetagem

Exemplo:

valor financiado: 5000

parcelas: 11x500

total parcelado: 5500

juros total: 500

porcetagem de juros: 10%

 

as formulas vou deixar que você pesquise hehe, mas é esse o pensamento

 

agora se for juros composto a coisa vai complicar um pouco.

Compartilhar este post


Link para o post
Compartilhar em outros sites
14 minutos atrás, ygor.anjos disse:

Fabio, o exemplo 1 esta estranho em kkkkkk

financiar 5k e pagar somente 3.5k, me fala onde é que eu quero em kkkkkk

 

tirando as brincadeiras você precisa saber se o juros é fixo ou composto.

se for fixo você vai multiplicar as parcelas*valor_parcela

e subtrair esse valor do valor financiado

ai é só você descobrir a porcetagem

Exemplo:

valor financiado: 5000

parcelas: 11x500

total parcelado: 5500

juros total: 500

porcetagem de juros: 10%

 

as formulas vou deixar que você pesquise hehe, mas é esse o pensamento

 

agora se for juros composto a coisa vai complicar um pouco.

kkkk 'e bom sonhar rs

 

O juros e composto mesmo.. :/

 

 

 

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá!

A sua dúvida reside na seguinte equação matemática:

i = (F/P)^(1/n) - 1

Onde:
i = taxa de juros, o que você quer descobrir
F = valor futuro
P = valor presente
n = número de períodos

 

Exemplo:

R$ 5000 viraram R$ 8000 em 12 meses. Qual a taxa?

i = (8000 / 5000) ^ ( 1/12 ) - 1

i = ( 1.6 ^ 0.0833333 ) - 1

i = 1.0399440914 - 1

i = 0.0399440914

A taxa é 3,99% (perceba que eu apenas multipliquei por 100).

 

Agora como transformar isso em código?

<?php
function obterTaxaDeJurosCompostos( $valor_presente, $montante, $periodos ) {
    $valor = $montante / $valor_presente;
    $valor **= 1 / $periodos;
    
    return $valor - 1;
}

echo obterTaxaDeJurosCompostos( 5000, 8000, 12 ) * 100;

// Saída: 3.9944107690504

 

Compartilhar este post


Link para o post
Compartilhar em outros sites
46 minutos atrás, Matheus Tavares disse:

Olá!

A sua dúvida reside na seguinte equação matemática:


i = (F/P)^(1/n) - 1

Onde:
i = taxa de juros, o que você quer descobrir
F = valor futuro
P = valor presente
n = número de períodos

 

Exemplo:

R$ 5000 viraram R$ 8000 em 12 meses. Qual a taxa?

i = (8000 / 5000) ^ ( 1/12 ) - 1

i = ( 1.6 ^ 0.0833333 ) - 1

i = 1.0399440914 - 1

i = 0.0399440914

A taxa é 3,99% (perceba que eu apenas multipliquei por 100).

 

Agora como transformar isso em código?


<?php
function obterTaxaDeJurosCompostos( $valor_presente, $montante, $periodos ) {
    $valor = $montante / $valor_presente;
    $valor **= 1 / $periodos;
    
    return $valor - 1;
}

echo obterTaxaDeJurosCompostos( 5000, 8000, 12 ) * 100;

// Saída: 3.9944107690504

 

 

Ola, obrigado pelo retorno Matheus

Eu simulei uma situacao aqui, mas nao deu correto o calculo do codigo

Valor a vista? R$ 42.400,00
Financiado: entrada R$ 8.500 + 48 X R$ 1.041,00

Fazendo na calculadora, o juros cobrado foi 1,70 +/-

Deu bem diferente

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá amigo.

Sugiro que você veja as fórmulas matemáticas com mais atenção, pois quem as criou não fui eu. Eu apenas transcrevi em código.

Veja sobre a fórmula matemática para obtenção da taxa de juros compostos: https://www.youtube.com/watch?v=MlJ3kR-Eft4

 

Sobre o seu último exemplo, faz muito tempo que vi isso na faculdade, então posso estar enganado na definição de alguma variável abaixo, mas:

Se o bem à vista custa R$ 42.400, este é o nosso VP (valor presente).

Se financiado o valor total é de R$8.500 + 48x de R$ 1.041,00, o nosso montante é de R$ 58.468.

Assumindo 48 períodos, a taxa, segundo a fórmula matemática é de 0,671%, que é o mesmo gerado no código que produzi no post anterior.

 

Como exatamente você chegou ao resultado de 1,7% a.m.?

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Então amigo... fiquei na dúvida exatamente nesse ponto anteriormente, mas não tenho como ir atrás da resposta nesse momento.

 

Na minha cabeça faz sentido o que você disse, mas o a taxa resultante nesse caso ainda seria destoante: 1,14%.

Essas dúvidas você pode tirar procurando exercícios resolvidos que tenham esse cenário como exemplo (e quando encontrar a resposta posta aí, pq fiquei curioso).

 

O fato é que a fórmula que você pediu é aquela ali do meu primeiro post. Isso está correto, como você pode ver no vídeo.

O que falta é uma melhor interpretação nossa sobre o problema, mas isso já é matemática financeira, e não programação.

Compartilhar este post


Link para o post
Compartilhar em outros sites
10 minutos atrás, Matheus Tavares disse:

Então amigo... fiquei na dúvida exatamente nesse ponto anteriormente, mas não tenho como ir atrás da resposta nesse momento.

 

Na minha cabeça faz sentido o que você disse, mas o a taxa resultante nesse caso ainda seria destoante: 1,14%.

Essas dúvidas você pode tirar procurando exercícios resolvidos que tenham esse cenário como exemplo (e quando encontrar a resposta posta aí, pq fiquei curioso).

 

O fato é que a fórmula que você pediu é aquela ali do meu primeiro post. Isso está correto, como você pode ver no vídeo.

O que falta é uma melhor interpretação nossa sobre o problema, mas isso já é matemática financeira, e não programação.

 

Entendi,

 

De toda forma, ja me ajudou bastante!

Obrigado , abraco!

Compartilhar este post


Link para o post
Compartilhar em outros sites

  • Conteúdo Similar

    • Por granderodeo
      Olá  meus amigos programadores, estou desenvolvendo uma loja virtual, e percebi um erro. Criei um banco de dados  chamado 'cart_system' , com uma tabela 'cart'. Coloquei o site online para fazer testes, e coloquei os produtos normalmente no carrinho, mas ao abrir em outro PC o site, estava o mesmo carrinho, por exemplo coloquei 5 produtos em um PC e quando abrir o site em outro PC estava os mesmos 5 produtos já adicionados. Assim que adiciona o produto é adicionado ao 'cart' no BD, e quando for ver os produtos ele puxa do BD os produtos que estão atualmente no 'cart', será que foi esse o meu erro. Se puderem me ajudar com maneiras de concertar esse erro, agradeço muito. Vou deixar abaixo os códigos.
       
      Javascript do index.php que adiciona os produtos ao carrinho
      <script type="text/javascript"> $(document).ready(function(){ $(".addItemBtn").click(function(e){ e.preventDefault(); var $form = $(this).closest(".form-submit"); var pid = $form.find(".pid").val(); var pname = $form.find(".pname").val(); var pprice = $form.find(".pprice").val(); var pimage = $form.find(".pimage").val(); var pcode = $form.find(".pcode").val(); $.ajax({ url: 'carrinho/action_car.php', method: 'post', data: {pid:pid,pname:pname,pprice:pprice,pimage:pimage,pcode:pcode}, success:function(response){ $("#message").html(response); window.scrollTo(0,0); load_cart_item_number(); } }); }); load_cart_item_number(); function load_cart_item_number(){ $.ajax({ url: 'carrinho/action_car.php', method: 'get', data: {cartItem:"cart_item"}, success:function(response){ $("#cart-item").html(response); } }); } }); </script>  
      index_cart.php
      <div class="container"> <div class="row justify-content-center"> <div class="col-lg-10"> <div style="display:<?php if(isset($_SESSION['showAlert'])){echo $_SESSION['showAlert'];}else { echo 'none'; } unset($_SESSION['showAlert']); ?>" class="alert alert-success alert-dismissible mt-3"> <button type="button" class="close" data-dismiss="alert">&times;</button> <strong><?php if(isset($_SESSION['message'])){echo $_SESSION['message'];} unset($_SESSION['showAlert']); ?></strong> </div> <div class="table-responsive mt-2"> <table class="table table-bordered table-striped text-center"> <thead> <tr> <td colspan="7"> <h4 class="text-center text-info m-0">Produtos em seu carrinho!</h4> </td> </tr> <tr> <th>ID</th> <th>Imagem</th> <th>Produto</th> <th>Preço</th> <th>Quantidade</th> <th>Valor Total</th> <!------ REMOVER TODOS ITENS DO CARRINHO -----> <th> <a href="action_car.php?clear=all" class="badge-danger badge p-1" onclick="return confirm('Tem certeza de que deseja limpar seu carrinho?');"> <i class="fa fa-trash"></i>&nbsp;&nbsp;Limpar Carrinho</a> </th> <!------ FIM REMOVER TODOS ITENS DO CARRINHO -----> </tr> </thead> <tbody> <?php require 'config_car.php'; $stmt = $conn->prepare("SELECT * FROM cart"); $stmt->execute(); $result = $stmt->get_result(); $grand_total = 0; while($row = $result->fetch_assoc()): ?> <tr> <td> <?= $row['id'] ?></td> <!-- ID do produto do BD para o carrinho --> <input type="hidden" class="pid" value="<?= $row['id'] ?>"> <td> <img src="../<?= $row['product_image'] ?>" height="50"> </td> <!-- chamada da imagem do BD para o carrinho --> <td><?= $row['product_name'] ?> </td> <td> <?= $row['product_price'] ?> </td> <input type="hidden" class="pprice" value="<?= $row['product_price'] ?>"> </td> <!---- Aumentar ou Diminuir a quantidade do produto -----> <td><input type="number" class="form-control itemQty" value="<?= $row['qty'] ?>" style="width:80px"></td> <!---- Aumentar ou Diminuir a quantidade do produto -----> <!---- Fim Aumentar ou Diminuir a quantidade do produto -----> <td><?= $row['total_price'] ?> </td> <!-- preço total do carrinho --> <!------- REMOVER ITEM DO CARRINHO ------> <td> <a href="action_car.php?remove=<?= $row['id'] ?>" class="text-danger lead" onclick="return confirm('Quer mesmo remover esse produto do carrinho?');"> <i class="fa fa-trash"></i></a> </td> <!------- FIM ITEM REMOVER DO CARRINHO -------> </tr> <?php $grand_total += $row['total_price'] ?> <?php endwhile; ?> <tr> <td colspan="3"> <a href="../index.php" class="btn btn-success"><i class="fa fa-cart-plus"></i>&nbsp;&nbsp;Continue Comprando</a> </td> <td colspan="2"><b>Total Geral</b></td> <td><?= number_format($grand_total); ?> </td> <td> <a href="finalizar_car.php" class="btn btn-info <?= ($grand_total>1)?"":"disabled"; ?>"><i class="fa fa-credit-card"></i>&nbsp;&nbsp;Finalizar Compra</a> </td> </tr> </tbody> </table> </div> </div> </div> </div>  
      action_car.php
      <?php session_start();     require 'config_car.php'; //conecta ao BD     if(isset($_POST['pid'])) {         $pid = $_POST['pid'];         $pname = $_POST['pname'];         $pprice = $_POST['pprice'];         $pimage = $_POST['pimage'];         $pcode = $_POST['pcode'];         $pqty = 1;         $stmt = $conn->prepare("SELECT product_code FROM cart WHERE product_code=?");         $stmt->bind_param("s",$pcode);         $stmt->execute();         $res = $stmt->get_result();         $r = $res->fetch_assoc();         $code = $r['product_code'];         if(!$code){             $query = $conn->prepare("INSERT INTO cart (product_name,product_price,product_image,qty,total_price,product_code) VALUES (?,?,?,?,?,?)");             $query->bind_param("sssiss",$pname,$pprice,$pimage,$pqty,$pprice,$pcode);             $query->execute();             echo '<div class="alert alert-success alert-dismissible mt-2">             <button type="button" class="close" data-dismiss="alert">&times;</button>             <strong>Item adicionado ao seu carrinho!</strong>             </div>';         }         else{             echo '<div class="alert alert-danger alert-dismissible fixed-top">             <button type="button" class="close" data-dismiss="alert">&times;</button>             <strong>Item já está adicionado ao seu carrinho, você pode definir a quantidade no seu carrinho!</strong>             </div>';         }     }     if(isset($_GET['cartItem']) && isset($_GET['cartItem']) == 'cart_item'){         $stmt = $conn->prepare("SELECT * FROM cart");         $stmt->execute();         $stmt->store_result();         $rows = $stmt->num_rows;         echo $rows;     }     /*REMOVER ITENS DO CARRINHO*/     if(isset($_GET['remove'])){         $id = $_GET['remove'];         $stmt = $conn->prepare("DELETE FROM cart WHERE id=?");         $stmt->bind_param("i",$id);         $stmt->execute();         $_SESSION['showAlert'] = 'block';         $_SESSION['message'] = 'Produto removido do carrinho!';         header('location:index_cart.php');     }     if(isset($_GET['clear'])){         $stmt = $conn->prepare("DELETE FROM cart");         $stmt->execute();         $_SESSION['showAlert'] = 'block';         $_SESSION['message'] = 'Todos os produtos foram removidos!';         header('location:index_cart.php');     }      /* FIM REMOVER ITENS DO CARRINHO*/     /* ADICIONAR OU DIMINUIR QTD PRODUTO CARRINHO*/     if(isset($_POST['qty'])){         $qty = $_POST['qty'];         $pid = $_POST['pid'];         $pprice = $_POST['pprice'];         $tprice = $qty*$pprice;         $stmt = $conn->prepare("UPDATE cart SET qty=?, total_price=? WHERE id=?")         ;         $stmt->bind_param("isi",$qty,$tprice,$pid);         $stmt->execute();     }      /* FIM ADICIONAR OU DIMINUIR QTD PRODUTO CARRINHO*/      /* FINALIZAR PEDIDO */      if(isset($_POST['action']) && isset($_POST['action']) == 'order'){          $name = $_POST['name'];          $email = $_POST['email'];          $phone = $_POST['phone'];          $products = $_POST['products'];          $grand_total = $_POST['grand_total'];          $address = $_POST['address'];          $pmode = $_POST['pmode'];          $data = '';          $stmt = $conn->prepare("INSERT INTO orders (name,email,phone,address,pmode,products,amount_paid) VALUES (?,?,?,?,?,?,?)");          $stmt->bind_param("sssssss",$name,$email,$phone,$address,$pmode,$products,$grand_total);          $stmt->execute();          $data .= '<div class="text-center>                         <h1 class="display-4 mt-2 text-danger">Obrigado!</h1>                         <h2 class="text-success">Seu pedido foi realizado com sucesso</h2>                         <h4 class="bg-danger text-light rounded p-2">Items Comprados : '.$products.'</h4>                         <h4 class="bg-danger text-light rounded p-2">Seu nome : '.$name.'</h4>                         <h4 class="bg-danger text-light rounded p-2">Seu E-mail : '.$email.'</h4>                         <h4 class="bg-danger text-light rounded p-2">Seu telefone : '.$phone.'</h4>                         <h4 class="bg-danger text-light rounded p-2">Valor total pago : '.number_format($grand_total,2).'</h4>                         <h4 class="bg-danger text-light rounded p-2">Forma de pagamento : '.$pmode.'</h4>                    </div>';         echo $data;                 }      ?>  
    • Por sergiosantojacinto
      Olá Pessoal,   Pelo que estive analisando os links abaixo do Site Broadcast.com.br eles tem a opção JSON, não identifiquei nada de RSS ou ATOM. Saberiam me informar se é possível eu ter um link RSS/FEED/ATOM para colocar no programa http://www.rssowl.org, para receber as noticias, este programa RSSOWL faz leitura em RSS/XML. http://www.broadcast.com.br/cadernos/financeiro/ http://www.broadcast.com.br/cadernos/politico/ <link rel="alternate" type="application/json+oembed" href="http://www.broadcast.com.br/wp-json/oembed/1.0/embed?url=http%3A%2F%2Fwww.broadcast.com.br%2Fcadernos%2Fpolitico%2F" /> <link rel="alternate" type="text/xml+oembed" href="http://www.broadcast.com.br/wp-json/oembed/1.0/embed?url=http%3A%2F%2Fwww.broadcast.com.br%2Fcadernos%2Fpolitico%2F&#038;format=xml" /> Muito obrigado.

×

Informação importante

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