Visualizzazione dei risultati da 1 a 5 su 5

Discussione: Problema Calcolo

  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2005
    Messaggi
    97

    Problema Calcolo

    Ciao a tutti!
    Ho un piccolo problema e sono sicuro che, con il vostro aiuto, sarà di facile soluzione.

    Avevo preparato per un cliente uno script per il calcolo online di un preventivo (prestiti/mutui etc etc). La durata del periodo era espressa in anni, solo che adesso vuole che sia espressa in mesi, ed io non so come adattare le formule che avevo fatto in php.
    Vi posto il codice, in primis, del form (gli anni dovranno essere tramutati in mesi ):

    codice:
    ...
    <td>Durata del mutuo:</td><td> <select name=durata>
     <option value=5>5 anni</option>
     <option value=7>7 anni</option>
     <option value=10>10 anni</option>
     <option value=15>15 anni</option>
     <option value=20>20 anni</option>
     <option value=25>25 anni</option>
     <option value=30>30 anni</option>
     <option value=35>35 anni</option>
     <option value=40>40 anni</option>
    </select></td>
    ...

    e questo è il codice php che fa i vari calcoli:

    codice:
    $capitale = $_POST["capitale"];
    $N = $_POST["durata"]*$_POST["cadenza"];
    $t = $_POST["tasso"]/(100*$_POST["cadenza"]);
    
    $T = $t + 1; 
    $n = $N - 1; 
    
    $a = array();
    $i = 0; 
    while ($i <= $n) {
    $pow = pow($T,$i);
    array_push($a,$pow);
    $i = $i + 1;
    }
    
    $somma = array_sum($a);
    $pot = pow($T,$N);
    $rata = $capitale*$pot/$somma;
    $tot = $rata*$N;
    $interessi = $tot - $capitale;
    
    //formattazione cifre
    $capitale = number_format($capitale,2,',','.');
    $rata = number_format($rata,2,',','.');
    $tot = number_format($tot,2,',','.');
    $interessi = number_format($interessi,2,',','.');
    //fine formattazione
    $freq="mensile";
    Vi prego di aiutarmi per favore. Grazie
    "perchè la vita è un brivido che vola via...è tutto un'equilibrio sopra la follia!"

  2. #2
    Utente di HTML.it L'avatar di bubi1
    Registrato dal
    Dec 2009
    Messaggi
    1,230
    e perche' non fai semplicemente
    <td>Durata del mutuo:</td><td> <select name=durata>
    <option value=5>60 mesi</option>
    <option value=7>74 mesi</option>
    ....

    senza toccare la parte php?
    o non ho capito cosa vuoi fare?

  3. #3
    Utente di HTML.it
    Registrato dal
    Feb 2005
    Messaggi
    97
    Allora, c'avevo pensato, il problema è che devo mettere anche tipo: 18 mesi, 30 mesi, 42 mesi, etc etc, quindi non solo anni interi ma anche gli anni frazionati... spero di essermi spiegato bene :P
    "perchè la vita è un brivido che vola via...è tutto un'equilibrio sopra la follia!"

  4. #4
    Utente di HTML.it L'avatar di bubi1
    Registrato dal
    Dec 2009
    Messaggi
    1,230
    beh, con 18,30,42 e' facile, perche' il rapporto mesi/12 e' sempre un numero non periodico.
    Quindi puoi fare
    <option value=1.5>18 mesi</option>
    <option value=2.5>30 mesi</option>

    e poi i calcoli andrebbero avanti come prima

    se invece vuoi accettare qualsiasi numero di mesi, tipo 13 o 29, ti tocca cambiare il html:

    <option value=18>18 mesi</option>
    <option value=30>30 mesi</option>
    ......

    e poi il php
    $N = ($_POST["durata"]/12)*$_POST["cadenza"];
    .. e il resto rimane come prima

    non ho guardato bene le formule, ma se questo e' l'ammortamento francese, dovrebbe funzionare.

  5. #5
    Utente di HTML.it
    Registrato dal
    Feb 2005
    Messaggi
    97
    Ho fatto le correzioni da te suggerite ed ho risolto! Grazie 1000!
    "perchè la vita è un brivido che vola via...è tutto un'equilibrio sopra la follia!"

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.