Hello,
hier ein kleines Script in PHP zur Berechnung,
wie schon gesagt, iterativ.
<?php ### kredit.php ###
$kredit = 60000.0;
$laufzeit = 7*12;
$zinssatz = 0.07;
$rate = 0.0;
#-------------------------------------------
function rest($kredit, $laufzeit, $zinssatz, $rate)
{
for ($i = 0; $i<$laufzeit; $i++)
{
$kredit = $kredit * (1+$zinssatz/12) - $rate;
}
return $kredit;
}
#--------------------------------------------
function info($kredit, $laufzeit, $zinssatz, $rate, $rest)
{
echo "<pre>\n";
echo "Kredit \t\t $kredit\n";
echo "Rate \t\t $rate\n";
echo "Zinssatz \t $zinssatz\n";
echo "Laufzeit \t $laufzeit\n\n";
echo "Rest: ".rest($kredit, $laufzeit, $zinssatz, $rate)."\n";
echo "------------------------------------------\n";
echo "</pre>\n";
}
#--------------------------------------------
function neue_rate($kredit, $laufzeit, $zinssatz, $rate)
{
$rest = $kredit;
$rate_neu = $rate;
while (abs($rest) > 0.1)
{
info($kredit, $laufzeit, $zinssatz, $rate_neu, $rest);
$rest = rest($kredit, $laufzeit, $zinssatz, $rate_neu);
$rate_neu = $rate_neu + $rest/$laufzeit;
}
return $neue_rate;
}
#=============================================
$rate = $kredit*(1+$zinssatz/12)/$laufzeit * 2.0;
neue_rate($kredit, $laufzeit, $zinssatz, $rate);
?>
Das kann man bestimmt noch geschickter lösen, sodass die Anzhal der Iterationsschritte geringer wird.
Es funktioniert aber.
Abbrechen kann man eigentlich, wenn die letzte Rate mit den üblichen Nachkommastellen nicht mehr von der vorigen abweicht. Näher kommt man in der Praxis nicht heran an die passende Rate.
Harzliche Grüße vom Berg
http://www.annerschbarrich.de
Tom
Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
Nur selber lernen macht schlau