#!/usr/bin/perl -w # 360.60 * ((1-(1+i)^-(2031-1996))/i) * (1+i)^(35) = 18345.75 # 360.6 * ((1+i)^35 - 1) / i) = 18345.75 # ((1+i)^35 -1) / i ) = 18345.75 / 360.6 sub f { return abs( ((1+$i)**35 - 1)/$i - 18345.75 / 360.6 ); } $i = 0.1; $errorlast = 9999999; while (1) { $i += (rand() - 0.5) / 100_000_000; $errornow = f(); last if ( "$i" eq "$ilast" && $errorlast < 1); if ($errornow < $errorlast) { $errorlast = $errornow; print "$i -> error $errorlast \n"; $ilast = $i; } $i = $ilast; } print "Definitivamente $ilast\n"; exit 0;