Ejemplo n.º 1
0
        /**
        * Contructeur
        *
        * On cree les NB_MAX_COMPTE compte de la banque de maniere aleatoire (le nom du proprietaire, le solde initiale et
        * le type de compte )
        *
        */
        public Banque()
        {
            rnd = new Random();
            for (int i = 0; i < NB_MAX_COMPTE; i++)
            {
                int solde = rnd.Next() % (SOLDE_MAX_ATTRIBUE - SOLDE_MIN_ATTRIBUE) + SOLDE_MIN_ATTRIBUE;
                string nom=string.Empty;
                for (int j = 0; j < TAILLE_NOM_ALEATOIRE; j++)
                {
                    int chiffre = rnd.Next() % 26;
                    string l =  chiffre.ToString() + 'a';
                    nom += l;
                }

                int type_compte = rnd.Next() % 4;
                switch (type_compte)
                {
                    case (int)TypeDeCompte.COMPTE:
                        _tab_compte[i] = new Compte(nom, solde);
                        break;
                    case (int)TypeDeCompte.COMPTE_CHEQUE:
                        _tab_compte[i] = new CompteCheque(nom, solde);
                        break;
                    case (int)TypeDeCompte.LIVRET:
                        _tab_compte[i] = new Livret(nom, solde);
                        break;
                    case (int)TypeDeCompte.PEL:
                        _tab_compte[i] = new PEL(nom, solde);
                        break;
                }
            }
        }
Ejemplo n.º 2
0
 /*
 * Le contructeur pouvant prendre 1 a 2 arguments
 *
 * On incremente d'un l'attribut "_nb_carte_moneo" du compte cheque associe
 * La carte moneo est valide que si l'attribut "_nb_carte_moneo" du compte
 * chaque associe est inferieur a MAX_NB_CARTE_MONEO_PAR_COMPTE_CHEQUE
 *
 * @param cc Pointeur vers le compte cheque a associe a la carte moneo
 * @param solde_max solde maximum pour la carte moneo
 *
 */
 public Moneo(ref CompteCheque cc, float solde_max = SOLDE_MAX_DEFAUT)
 {
     _solde_max = solde_max;
     int nb = cc.carte_moneo;
     _solde = SOLDE_INIT_MONEO;
     if (nb < MAX_NB_CARTE_MONEO_PAR_COMPTE_CHEQUE)
     {
         nb++;
         _c_cheque = cc;
         _c_cheque.carte_moneo = nb;
         Console.WriteLine(String.Format("Carte moneo associe au compte cheque numero:{0}\n", _c_cheque.get_num_compte));
     }
     else
     {
         Console.WriteLine("Impossible d'associe cette carte au moneo au compte cheque, le nombre maximum de carte moneo associe a ce compte est deja atteint\n");
         _c_cheque = null;
     }
 }
Ejemplo n.º 3
0
        /*
        * Permet de tester les Classe Compte, CompteCheque, Livret, Pel, Moneo et banque
        */
        static void Main(string[] args)
        {
            int n = -1;
            bool test = true;

            Compte c = new Compte();
            CompteCheque cc;
            Livret l;
            PEL p1, p2;
            Banque bank;

            while (test)
            {
                Console.WriteLine("\n1 Tester la saisie et l'affichage d'un compte");
                Console.WriteLine("2 Tester les constructeurs");
                Console.WriteLine("3 Tester les get");
                Console.WriteLine("4 Tester retirer et deposer");
                Console.WriteLine("5 Tester la saisie et l'affichage d'un compte cheque");
                Console.WriteLine("6 Tester retirer et deposer pour un compte cheque");
                Console.WriteLine("7 Tester la classe livret");
                Console.WriteLine("8 Tester la classe PEL");
                Console.WriteLine("9 Tester la carte moneo");
                Console.WriteLine("10 Tester effectuer un virement");
                Console.WriteLine("11 Tester la banque");
                Console.WriteLine("12 Quitter");

                do
                {
                    n = int.Parse(Console.ReadLine());
                } while (n < 1 || 12 <n);

                switch (n)
                {
                    case 1:
                        c.saisir();
                        break;
                    case 2:
                        Compte c1 = new Compte("toto", 100);
                        Compte c2 = new Compte("toto2", 2);
                        Compte c3 = new Compte("toto3");
                        Console.WriteLine(c1.ToString());
                        Console.WriteLine(c2.ToString());
                        Console.WriteLine(c3.ToString());
                        break;
                    case 3:
                        c.saisir();
                        Console.WriteLine(string.Format("get_nom: {0}\nget_solde : {1}\nget_num_compte : {2}",c.get_nom,c.get_solde,c.get_num_compte));
                        break;
                    case 4:
                        int i;
                        c.saisir();
                        Console.WriteLine("Somme à verser ?");
                        i = Convert.ToInt32(Console.ReadLine());
                        c.deposer(i);
                        Console.WriteLine("Somme à retirer ?");
                        i = Convert.ToInt32(Console.ReadLine());
                        c.retirer(i);
                        break;
                    case 5:
                        cc = new CompteCheque();
                        Console.WriteLine("Nom du propriétaire:");
                        cc.get_nom = Console.ReadLine();
                        Console.WriteLine("Solde:");
                        cc.get_solde = Convert.ToInt32(Console.ReadLine());
                        Console.WriteLine("Découvert max:");
                        cc.decouvertMax = Convert.ToInt32(Console.ReadLine());
                        Console.WriteLine(cc.ToString());
                        break;
                    case 6:
                        cc = new CompteCheque();
                        Console.WriteLine("Nom du propriétaire:");
                        cc.get_nom = Console.ReadLine();
                        Console.WriteLine("Solde:");
                        cc.get_solde = Convert.ToInt32(Console.ReadLine());
                        Console.WriteLine("Découvert max:");
                        cc.decouvertMax = Convert.ToInt32(Console.ReadLine());
                        Console.WriteLine("Somme à verser ?");
                        i = Convert.ToInt32(Console.ReadLine());
                        cc.deposer(i);
                        Console.WriteLine("Somme à retirer ?");
                        i = Convert.ToInt32(Console.ReadLine());
                        cc.retirer(i);
                        Console.WriteLine(cc.ToString());
                        break;
                    case 7:
                        l = new Livret();
                        Console.WriteLine("Nom du propriétaire:");
                        l.get_nom = Console.ReadLine();
                        Console.WriteLine("Solde:");
                        l.get_solde = Convert.ToInt32(Console.ReadLine());
                        if (l.get_solde < 0)
                        {
                            l.get_solde = 0;
                            Console.WriteLine("Le solde du compte doit être positif, il vaut donc maintenant 0");
                        }
                        l.soldeMinimum = l.get_solde;
                        Console.WriteLine("Taux d'intérêt:");
                        l.TauxInteret= Convert.ToInt32(Console.ReadLine());
                        Console.WriteLine("Somme à verser?");
                        i = Convert.ToInt32(Console.ReadLine());
                        l.deposer(i);
                        Console.WriteLine("Somme à retirer ?");
                        i = Convert.ToInt32(Console.ReadLine());
                        l.retirer(i);
                        Console.WriteLine(string.Format("Calcul des intérêts : {0} ", l.calcul_interet()));
                        Console.WriteLine("Somme à retirer ?");
                        i = Convert.ToInt32(Console.ReadLine());
                        l.retirer(i);
                        Console.WriteLine(string.Format("Calcul des intérêts : {0} ", l.calcul_interet()));
                        l.verser_interet();
                        Console.WriteLine(l.ToString());
                        break;
                    case 8:
                        int f;
                        p1= new PEL();
                        p2 = new PEL();

                        Console.WriteLine("");
                        Console.WriteLine("Nom du propriétaire:");
                        p1.get_nom = Console.ReadLine();
                        Console.WriteLine("Solde:");
                        p1.get_solde = Convert.ToInt32(Console.ReadLine());
                        if (p1.get_solde < 0)
                        {
                            p1.get_solde = 0;
                            Console.WriteLine("Le solde du compte doit être positif, il vaut donc maintenant 0");
                        }
                        p1.soldeMinimum = p1.get_solde;

                        Console.WriteLine("");
                        Console.WriteLine("Nom du propriétaire:");
                        p2.get_nom = Console.ReadLine();
                        Console.WriteLine("Solde:");
                        p2.get_solde = Convert.ToInt32(Console.ReadLine());
                        if (p2.get_solde < 0)
                        {
                            p2.get_solde = 0;
                            Console.WriteLine("Le solde du compte doit être positif, il vaut donc maintenant 0");
                        }
                        p2.soldeMinimum = p2.get_solde;

                        Console.WriteLine("");
                        Console.WriteLine(p1.ToString());
                        Console.WriteLine("");
                        Console.WriteLine(p2.ToString());
                        Console.WriteLine("");
                        p1.verser_interet();
                        Console.WriteLine("");
                        Console.WriteLine("Entrer le nouveau taux pour le pel :");
                        f = Convert.ToInt32(Console.ReadLine());
                        p1.TauxInteretPEL = f;
                        Console.WriteLine("");
                        Console.WriteLine(p1.ToString());
                        Console.WriteLine("");
                        Console.WriteLine(p2.ToString());
                        Console.WriteLine("");
                        break;
                    case 9:
                        cc = new CompteCheque();
                        Console.WriteLine("\nSaisie du compte cheque qui sera associé aux cartes moneo\n");
                        cc.saisir();

                        Moneo c_moneo_1 = new Moneo(ref cc);
                        Moneo c_moneo_2 = new Moneo(ref cc, 200);
                        Moneo c_moneo_3 = new Moneo(ref cc);
                        Moneo c_moneo_4 = new Moneo(ref cc);
                        Moneo c_moneo_5 = new Moneo(ref cc);
                        Moneo c_moneo_6 = new Moneo(ref cc);
                        Moneo c_moneo_7 = new Moneo(ref cc);
                        Moneo c_moneo_8 = new Moneo(ref cc);
                        Moneo c_moneo_9 = new Moneo(ref cc);
                        Moneo c_moneo_10 = new Moneo(ref cc);
                        Moneo c_moneo_11 = new Moneo(ref cc);

                        c_moneo_1.recharger();
                        c_moneo_1.retirer(20);
                        c_moneo_1.recharger();
                        Console.WriteLine("\nEtat du compte chèque:\n");
                        Console.WriteLine(cc.ToString());
                        break;
                    case 10:
                        CompteCheque compte_c = new CompteCheque();
                        Compte compte = new Compte();
                        Console.WriteLine("");
                        compte_c.saisir();
                        Console.WriteLine("");
                        compte.saisir();
                        Console.WriteLine("");
                        compte_c.effectuer_virement(ref compte, 100);
                        Console.WriteLine("");
                        Console.WriteLine(compte_c.ToString());
                        Console.WriteLine("");
                        Console.WriteLine(compte.ToString());
                        Console.WriteLine("");
                        break;
                    case 11:
                        bank = new Banque();
                        Console.WriteLine(String.Format("\nSomme totale des soldes des comptes de la banque :{0}\n", bank.calculer_somme_solde_compte()));
                        bank.effectuer_virements(10000);
                        Console.WriteLine("");
                        break;
                    case 12:
                        Console.WriteLine("\nFin du programme de test\n");
                 test = false;
                        break;

                }
            }
        }