Example #1
0
        static void Main(string[] args)
        {
            var montantBien       = 263000;
            var apport            = 91186;
            var fraisNotaires     = 18410;
            var montantAEmprunter = montantBien - apport + fraisNotaires;
            var dureeEnAnnees     = 15;

            var pretSeul_1 = new Pret("Crédit immo (teg de 1,50%)", montantAEmprunter, dureeEnAnnees, 1.50 / 100, new DateTime(2018, 12, 1));

            AffichePret(montantBien, fraisNotaires, apport, pretSeul_1);

            var pretSeul_2 = new Pret("Crédit immo (teg de 1,65%)", montantAEmprunter, dureeEnAnnees, 1.65 / 100, new DateTime(2018, 12, 1));

            AffichePret(montantBien, fraisNotaires, apport, pretSeul_2);

            var fraisDeGarantie_3 = 2413;
            var pretSeul_3        = new Pret("Crédit immo sans frais de notaire (teg de 1,65%)", montantAEmprunter - fraisNotaires + fraisDeGarantie_3, dureeEnAnnees, 1.65 / 100, new DateTime(2018, 12, 1));

            AffichePret(montantBien, fraisNotaires, apport, pretSeul_3);

            // PretMultiple
            var fraisDeGarantie_A = 2500;
            var dureeEnAnnees_A   = 14;
            var pret_A            = new Pret("Crédit immo appart Carnon (1,52%)", montantAEmprunter - fraisNotaires, dureeEnAnnees_A, 1.520 / 100, new DateTime(2018, 12, 1));

            AffichePret(montantBien, fraisNotaires, apport, pret_A);

            var montantAEmprunterB = 19300;
            var dureeEnAnnees_B    = 4;
            var pret_B             = new Pret("Crédit pour frais de notaire", montantAEmprunterB, dureeEnAnnees_B, 0.946 / 100, new DateTime(2018, 12, 1));

            AffichePret(montantBien, fraisNotaires, apport, pret_B);

            var doublePret = new PretMultiple("Double prêt 1.52% + 0.946%", new List <Pret> {
                pret_A, pret_B
            });

            Console.WriteLine($"Montant total de {doublePret.GetMontantTotal().ToString("N2")}");
            Console.WriteLine($"Coût total de {doublePret.GetCoutTotal().ToString("N2")}");

            //var comp = new PretComparer();
            //var best = comp.GetBest(new List<Pret> { pretSeul, pretSeul2, pretSeul3 });

            Console.ReadLine();
        }
Example #2
0
        public void PretMultiple_Test()
        {
            var montantBien       = 263000;
            var apport            = 91186;
            var fraisDeGarantie   = 2500;
            var montantAEmprunter = montantBien - apport + fraisDeGarantie;
            var dureeEnAnnees     = 15;
            var tauxNominal       = 1.50 / 100;

            var pret_1 = new Pret("Crédit Test (teg de 1,50%)", montantAEmprunter, dureeEnAnnees, tauxNominal, new DateTime(2018, 12, 1));

            var pret_2 = new Pret("Crédit pour frais de notaire", 19300, 4, 0.946 / 100, new DateTime(2018, 12, 1));

            var doublePret = new PretMultiple("Prêt composé d'1 crédit appart + 1 crédit pour frais d'acte de vente", new List <Pret> {
                pret_1, pret_2
            });

            Assert.AreEqual(20453.55, pret_1.GetCoutTotal(), 0.01);
            Assert.AreEqual(375.06, pret_2.GetCoutTotal(), 0.01);
            Assert.AreEqual(20828.62, doublePret.GetCoutTotal(), 0.01);
        }