Bon voila! c'est un programme qui calcul l'échéance d'un crédit sur une durée avec un taux d'intérêts.
Le fichier texte générer vous donnera les informations et le tableau d'amortissements de votre prêt.
C'est mon premier programme que je mets sur site... j'attend vos commentaires !!!!
Merci.
Source / Exemple :
static void Main(string[] args)
{
/* N'oublier pas m'envoyer un email si quelque chose cloche avec le programme.
- Benbekka Mohamed: mailto:contact@mbenbekka.ecv.ms
- Début du programme: Modifier le 06/03/2007 à ALGER */
float credit=MontantCredit();
int duree=DureeCredit();
float taux=TauxCredit();
result(credit,duree,taux);
Console.Read();
}
static float MontantCredit()
{
bool ok=false; float _credit=0;
do {
Console.Write("Montant de l'emprunt [Min:1000] ? ");
try {
_credit=float.Parse(Console.ReadLine().Replace(".",",").Trim());
if(_credit<1000) {
Console.WriteLine("Montant non valide [Min:1000], Recommencez...");
ok=false;} else {ok=true;} // if/else
} catch(Exception e) {
Console.WriteLine(e.GetType().ToString());
Console.WriteLine("Montant non valide ! Recommencez...");
} // try/catch
} while(ok==false); // do/while
return _credit; // Montant du crédit validé
} // MontantCredit()
static int DureeCredit()
{
bool ok=false; int _duree=0;
do {
Console.Write("Durée du crédit en mois [Min:2 - Max:360]? ");
try {
_duree=int.Parse(Console.ReadLine().Trim());
if((_duree<2) | (_duree>360)) {
Console.WriteLine("Durée non valide [Min:2 - Max:360], Recommencez...");
ok=false;} else {ok=true;} // if/else
} catch(Exception e) {
Console.WriteLine(e.GetType().ToString());
Console.WriteLine("Durée non valide ! Recommencez...");
} // try/catch
} while(ok==false); // do/while
return _duree; // Durée du crédit validée
} // DureeCredit()
static float TauxCredit()
{
bool ok=false; float _taux=0;
do {
Console.Write("Taux d'intérêts du crédit [Min:1.5 - Max:20.5]? ");
try {
_taux=float.Parse(Console.ReadLine().Replace(".",",").Trim());
if((_taux<1.5f) | (_taux>20.5f)) {
Console.WriteLine("Taux non valide [Min:1.5 - Max:20.5], Recommencez...");
ok=false;
} else {ok=true;} // if/else
} catch(Exception e) {
Console.WriteLine(e.GetType().ToString());
Console.WriteLine("Durée non valide ! Recommencez...");
} // try/catch
} while(ok==false); // do/while
return _taux; // Taux du crédit validé
} // TauxCredit()
static void result(float credit, int duree, float taux)
{
/*
La formule du calcul je l'est trouvée sue le site:
http://www.cbanque.com/
// Juste pour le calcul du montant de l'échéance (Mensualité à payer)
float Tp=((taux/100)/12); // Taux périodique du crédit
float Tpx=1+Tp;
// Pour le tableau d'amortissement du crédit:
float reste=credit; // Le reste du crédit
float capital=0; // Le capital du crédit
float interet=0; // Intérêt du crédit
Tpx=(float)Math.Pow(Tpx,duree);
float mensualite=(credit*Tpx*Tp)/(Tpx-1); // Le montant de l'échéache
try
{
System.IO.StreamWriter fichier = new System.IO.StreamWriter("c:\\simulation.html");
fichier.AutoFlush=true;
fichier.WriteLine("<html><head><title>Simulation</title></head>");
fichier.WriteLine("<body leftmargin=10 topmargin=10 rightmargin=10 bottommargin=10>");
fichier.WriteLine("<font size=3 color='#000080' face='Arial'>");
fichier.WriteLine("<b> »  Montant de l’emprunt : " + credit.ToString()+"<br>");
fichier.WriteLine(" »  Durée : "+duree.ToString()+" Mois<br>");
fichier.WriteLine(" »  Taux annuel du prêt : "+taux.ToString()+"%<br>");
fichier.WriteLine("<font color='red'> »  Mensualité du crédit : "+mensualite.ToString()+"</font><br>");
fichier.WriteLine(" »  Assurance mensuelle : 0<br>");
fichier.WriteLine(" »  Frais additionnelles : 0</font></b><br><br>");
fichier.WriteLine("<table width='65%' border=1 bordercolor='#000080'>");
fichier.WriteLine("<caption><font color='#000080' size=3><b>TABLEAU D’AMORTISSEMENT CREDIT</b></font></caption>");
fichier.WriteLine("<tr bgcolor='#99ccff'><font color='#000080' size=2 face='Arial'><td><b>Nº Echéance</b></td>");
fichier.WriteLine("<td><b>Crédit</b></td><td><b>Capital</b></td><td><b>Intérêt</b></td><td><b>Mensualité</b></td></font></tr>");
for(int i=1; i<=duree; i++) // Tableau d'amortissement
{
interet=((reste*(taux/100))/12);
capital=mensualite-interet;
reste-=capital;
string L; // Les colonnes du tableau
L="<tr><td>"+i.ToString()+"</td>"; // L'actuelle échéance
L+="<td>"+reste.ToString()+"</td>"; // Reste crédit pour l'actuelle échéance
L+="<td>"+capital.ToString()+"</td>"; // Capital prélevé pour l'actuelle échéance
L+="<td>"+interet.ToString()+"</td>"; // Intérêt prélevé pour l'actuelle échéance
L+="<td>"+mensualite.ToString()+"</td></tr>"; // Mensualité
fichier.WriteLine(L);
} // for
fichier.WriteLine("</table></body></html>");
fichier.Close();
Console.WriteLine("\r\n"+"Les informations sont stockés dans un fichier texte.");
Console.WriteLine("Chemin du fichier est: C:\\simulation.html");
} catch(Exception e){
Console.WriteLine("L'erreur suivante c'est produite:");
Console.WriteLine(e.GetType().ToString());
Console.WriteLine(e.Message);
} // try/catch
} // result()
4 mars 2007 à 14:06
++
4 mars 2007 à 14:23
4 mars 2007 à 14:26
ou juste une fonction qui fait le calcul complet (donc il faut quelle recoive les parametres necessaire) , cette fonction effectuer le calcul (avec tous les tests) et retourne le resultat
imagine ainsi une personne qui aurait besoin de ce meme calcul il fait une recherche,tombe sur le code, et n'a plus qu'a le reutiliser !! merveilleux
++
4 mars 2007 à 15:01
5 mars 2007 à 09:25
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.