Exemplo n.º 1
0
        /*Die Bank hat verschiedene Kundentypen(z.B. privat,Firma...)
         * es gibt normale Konten, Kreditkonten und Hypothekkonten*/

        /*Jedes Konto gehört zu einem Kunden,hat einen aktuellen Kontostand und eine monatliche Zinsrate (monthly based).
         * normale skonten dürfen einzahlen und Geld abheben.
         * Kredit- und Hypothekenkonten können nur Geld einzahlen.*/

        /*
         * Alle Konten können ihren Zinsbetrag für einen bestimmten Zeitraum (in Monaten) berechnen.
         * Im Normalfall wird es wie folgt berechnet: Anzahl_Monate * Zinssatz.
         * Darlehenskonten sind in den ersten 3 Monaten nicht verzinslich
         * wenn sie von Einzelpersonen gehalten werden und während der ersten 2 Monate von einer Firma gehalten
         * werden.
         *
         * Einlagenkonten sind nicht verzinslich, wenn ihr Saldo positiv ist und weniger als 1000 beträgt.
         *   Hypothekenkonten sind in den ersten 12 Monaten für Unternehmen und in den ersten 6 Monaten nicht für Privatpersonen zu verzinsen.
         */
        static void Main()
        {
            //dummy-kunden erstellen
            Person person  = new Person("Uschi", "Glas", "München", 123, 666);
            Person person2 = new Person("Angela", "Merkel", "Berlin", 001, 1234);
            Firma  firma   = new Firma("AfD", "Im Anus", TypderFirma.BriefkastenFirma, 69, 6666);

            //konto erstellen mit zinsrate 3% = 0.03M
            Einzahlungskonto ek1 = new Einzahlungskonto(person, 450.00M, 0.03M, 4);

            Console.ForegroundColor = ConsoleColor.Yellow;
            Console.WriteLine("Kontostand von {0} {1} ist {2}", person.Vorname, person.Nachname, ek1.Kontostand + " Euro\n");
            ek1.Kontostand = ek1.GeldEinzahlen(2400);
            Console.WriteLine("{0}s Kontostand nach Einzahlung von 2400 Euro  ist {1} Euro", person.Vorname, ek1.Kontostand);
            Console.WriteLine("Zinsen auf Einzahlung {0} {1} {2} Euro", person.Vorname, person.Nachname, ek1.BerechneZinsen());
            Console.ResetColor();
            //Darlehenskonto besitzerDarlehensKonto = new Darlehenskonto(person, 3200.0M, 0.04M, 13);
            //Console.WriteLine("Zinsen Darlehenskonto {0} is {1}", person.Vorname, besitzerDarlehensKonto.BerechneZinsen());
            //Hypothekenkonto besitzerHypothekenKonto = new Hypothekenkonto(person, 5060.80M, 0.05M, 14);
            //Console.WriteLine("Zinsen Hypothekenkonto {0} is {1}", person.Vorname, besitzerHypothekenKonto.BerechneZinsen());

            Console.WriteLine();
            Console.ForegroundColor = ConsoleColor.Green;
            Einzahlungskonto ek2 = new Einzahlungskonto(person2, 3000.50M, 0.023M, 2);

            Console.WriteLine("Kontostand von {0} {1} ist {2} Euro", person2.Vorname, person2.Nachname, ek2.Kontostand);
            Console.ResetColor();

            Console.WriteLine();



            /* Console.ForegroundColor = ConsoleColor.Red;
             * Einzahlungskonto ek3 = new Einzahlungskonto(firma, 500.0M, 0.07M, 5);
             * Console.WriteLine("Kontostand \"{0}\" {1} ist {2} Euro", firma.FirmaName, firma._firmatyp, ek3.Kontostand);
             * Console.WriteLine("Zinsen Konto {0} {1} {2} Euro", firma.FirmaName,firma._firmatyp, ek3.BerechneZinsen());
             * Hypothekenkonto hk1 = new Hypothekenkonto(firma, 2500.00M, 0.05M, 13);
             * Console.WriteLine("Zinsen Hypothekenkonto{0} {1} {2} Euro", firma.FirmaName,firma._firmatyp, hk1.BerechneZinsen());
             * Console.ResetColor();*/
            Console.ReadKey();
        }
Exemplo n.º 2
0
        /*2.	A bank holds different types of accounts for its customers:
         * deposit accounts, loan accounts and mortgage accounts. Customers could be individuals or companies.*/

        /*All accounts have customer, balance and interest rate (monthly based).
         * Deposit accounts are allowed to deposit and with draw money.
         * Loan and mortgage accounts can only deposit money.*/

        /*All accounts can calculate their interest amount for a given period (in months).
         * In the common case its is calculated as follows: number_of_months * interest_rate.*/

        /*Loan accounts have no interest for the first 3 months
         * if are held by individuals and for the first 2 months if are held by a company.*/

        /* Deposit accounts have no interest if their balance is positive and less than 1000. */

        /* Mortgage accounts have ½ interest for the first 12 months for companies and no interest for the first 6 months for individuals.*/
        static void Main()
        {
            //kunden erstellen
            Person person = new Person("Uschi", "Glas", "München");
            Person kunde  = new Person("Angela", "Merkel", "Berlin");
            Firma  firma  = new Firma("AfD", "Im Anus", TypderFirma.BriefkastenFirma);

            //konto erstellen interest 3% = 0.03M
            Einzahlungskonto ek1 = new Einzahlungskonto(person, 450.00M, 0.03M, 4);

            Console.WriteLine("Kontostand von {0} ist {1}", person.Vorname, ek1.Kontostand + " Euro");
            ek1.Kontostand = ek1.GeldEinzahlen(2400);
            Console.WriteLine("{0}s Kontostand nach Einzahlung von 2400 Euro  ist {1}", person.Vorname, ek1.Kontostand);
            Console.WriteLine("Zinsen auf Einzahlung {0} is {1}", person.Vorname, ek1.BerechneZinsen());
            Darlehenskonto besitzerDarlehensKonto = new Darlehenskonto(person, 3200.0M, 0.04M, 13);

            Console.WriteLine("Zinsen Darlehenskonto {0} is {1}", person.Vorname, besitzerDarlehensKonto.BerechneZinsen());
            Hypothekenkonto besitzerHypothekenKonto = new Hypothekenkonto(person, 5060.80M, 0.05M, 14);

            Console.WriteLine("Zinsen Hypothekenkonto {0} is {1}", person.Vorname, besitzerHypothekenKonto.BerechneZinsen());

            Console.WriteLine();
            Einzahlungskonto ek2 = new Einzahlungskonto(kunde, 3000.50M, 0.023M, 2);

            Console.WriteLine("Kontostand von {0} ist {1}", kunde.Vorname, ek2.Kontostand);

            Console.WriteLine();
            Einzahlungskonto ek3 = new Einzahlungskonto(firma, 500.0M, 0.07M, 5);

            Console.WriteLine("Kontostand \"{0}\" {1} ist {2}", firma.FirmaName, firma._firmatyp, ek3.Kontostand);
            Console.WriteLine("Zinsen Konto {0} is {1}", firma.FirmaName, ek3.BerechneZinsen());
            Hypothekenkonto hk1 = new Hypothekenkonto(firma, 2500.00M, 0.05M, 13);

            Console.WriteLine("Zinsen Hypothekenkonto {0} is {1}", firma.FirmaName, hk1.BerechneZinsen());
            Console.ReadKey();
        }