Example #1
0
        private static void ShowStart()
        {
            Customer customer2 = new Customer(CustomerType.Individuals, "Alex", "Vaslui", "074-5454 55");
            Customer customer3 = new Customer(CustomerType.Companies, "Bogdan", "Suceava", "075-67676 33");

            Account[] accounts = new Account[]
            {
                new DepositAccount(customer2, 700, 40),
                new DepositAccount(customer3, 700, 40),
                new DepositAccount(new Customer(CustomerType.Individuals, "Andrei"), 500, 30),
                new DepositAccount(new Customer(CustomerType.Companies, "SC fly SRL", "Brasov", "0787788745"), 4000, 50),
                new LoanAccount(customer2, 600, 40),
                new LoanAccount(customer3, 800, 50),
                new LoanAccount(new Customer(CustomerType.Individuals, "Alina"), 650, 25),
                new MortgageAccount(customer2, 1000, 20),
                new MortgageAccount(customer3, 1000, 20),
                new MortgageAccount(new Customer(CustomerType.Companies, "SC RealR SA"), 600, 3)
            };

            ShowBankStart banker = new ShowBankStart();

            banker.PrintMoney(accounts);
            DepositAccount depositsForCustomer2 = new DepositAccount(customer2, 5500, 35);
            DepositAccount depositsForCustomer3 = new DepositAccount(customer3, 3500, 45);

            depositsForCustomer2.WithDraw(700);
            depositsForCustomer2.Deposit(555);
            banker.PrintMoney(depositsForCustomer2);
            depositsForCustomer3.WithDraw(700);
            depositsForCustomer3.Deposit(555);
            banker.PrintMoney(depositsForCustomer3);
        }
Example #2
0
        public static void Main(string[] args)
        {
            Customer ivanIvanov     = new IndividualCustomer("Ivan Ivanov");
            Customer petarStoyanov  = new IndividualCustomer("Petar Stoyanov");
            Customer annaVasileva   = new IndividualCustomer("Anna Vasileva");
            Customer mariaAtanasova = new IndividualCustomer("Maria Atanasova ");
            Customer cocaCola       = new CompanyCustomer("CocaCola");
            Customer microsoft      = new CompanyCustomer("Microsoft");
            Customer apple          = new CompanyCustomer("Apple");
            Customer google         = new CompanyCustomer("Google");

            DepositAccount depositIvanIvanov    = new DepositAccount(ivanIvanov, 800m, 0.05m);
            DepositAccount depositCocaCola      = new DepositAccount(cocaCola, 5000000m, 0.02m);
            LoanAccount    loanAnnaVasilev      = new LoanAccount(annaVasileva, -10000m, 0.12m);
            LoanAccount    loanGoogle           = new LoanAccount(google, -1000000m, 0.08m);
            MortageAccount mortagePetarStoyanov = new MortageAccount(petarStoyanov, -50000m, 0.07m);
            MortageAccount mortageMictosoft     = new MortageAccount(microsoft, -5000000m, 0.06m);

            IList <Account> accounts = new List <Account>();

            accounts.Add(depositIvanIvanov);
            accounts.Add(depositCocaCola);
            accounts.Add(loanAnnaVasilev);
            accounts.Add(loanGoogle);
            accounts.Add(mortagePetarStoyanov);
            accounts.Add(mortageMictosoft);

            foreach (var account in accounts)
            {
                Console.WriteLine(account);
            }

            depositIvanIvanov.WithDraw(258.15m);
            Console.WriteLine("\nInterest for next 4 mounts:");
            foreach (var account in accounts)
            {
                Console.WriteLine("{0} {1,14:F2}", account, account.InterestAmount(4));
            }

            depositIvanIvanov.Deposit(800m);
            loanAnnaVasilev.Deposit(600.12m);
            mortagePetarStoyanov.Deposit(1825.12m);
            Console.WriteLine("\nInterest for next 8 mounts:");
            foreach (var account in accounts)
            {
                Console.WriteLine("{0} {1,14:F2}", account, account.InterestAmount(8));
            }

            Console.WriteLine("\nInterest for next 20 mounts:");
            foreach (var account in accounts)
            {
                Console.WriteLine("{0} {1,14:F2}", account, account.InterestAmount(20));
            }
        }