Salve a tutti,
Questo è il mio promo post, mi scuso per eventuali errori,
Sto provando da giorni a fare un programma sul calcolo del TAN(tasso annuo nominale) dato dalla formula i12(tasso mensile)*12,
Per trovare i12 si deve procedere a tentativi partendo dal 1% in poi in base all'errore consentito.
Questo errore è dato da (prezzo-Valore attuale)/prezzo
Il valore attuale si calcola come segue
evenutale acconto+rata*(1-(1+i12 quindi partendo dall'1% sarà 1% andando a variare)^-numerodeimesi)/i12+un'eventuale riscatto.
Se l'errore dovesse essere troppo alto lo dovrei reinserire
Questo è cio che ho abbozzato ma non funziona
#include <iostream>
#include <string>
using namespace std;
int main ()
{
int nm, //numeromesi
lis, //listino
sco, //sconto
acc, //acconto
r, //rata
ris, //riscatto
ps, //prezzoscontato
afig, //afiguraton
intperc, //interesseinpercentuale
ida, //interesse
tan, //tan
te, //tassoeffettivo
risc, //riscattofinito
va; //valoreattuale
float erco, //erroeconsentito
i, //interesse giusto
err; //errore
cout<<"Inserisci listino ";
cin>>lis;
cout<<"Inserisci sconto ";
cin>>sco;
cout<<"Inserisci il numero delle rate ";
cin>>nm;
cout<<"Inserisci la rata ";
cin>>r;
cout<<"Inserisci l'errore massimo ";
cin>>erco;
cout<<"Inserisci il tasso che vuoi utilizzare ";
cin>>ida;
ida==i;
ps=lis-(lis*sco/100);
afig=(1-(1+ida/100)^-nm)/(ida/100);
risc=ris/(1+ida/100)^nm;
va=risc+(r*afig);
if(ps>va)
err=(ps-va)/ps;
else
err=(va-ps)/ps;
while(err>erco);
{
if(va>ps)
i=i+0.0005;
else
i=i-0.0005;
}
tan=i*12;
cout<<"Il tan e' "<<tan<<endl;
system("pause");
return 0;
}