public static void Main() { var testAcount = new DepositAccount(new Company("Abc", "040304123"), 3.47m); Console.WriteLine(testAcount); Console.WriteLine(testAcount.Deposit(1200m)); Console.WriteLine(testAcount.Withdraw(101m)); Console.WriteLine("Interest: " + testAcount.CalculateInterest(10)); Console.WriteLine(testAcount); Console.WriteLine(new string('-', 60)); var anotherTestAccount = new MortgageAccount(new Company("Apple", "040304123"), 5); Console.WriteLine(anotherTestAccount); Console.WriteLine(anotherTestAccount.Deposit(120m)); Console.WriteLine("Interest:" + anotherTestAccount.CalculateInterest(13)); Console.WriteLine(anotherTestAccount); Console.WriteLine(new string('-', 60)); var yetAnotherTestAccount = new LoanAccount(new Individual("Gosho", "8010271234"), 4.2m); Console.WriteLine(yetAnotherTestAccount); Console.WriteLine(yetAnotherTestAccount.Deposit(180m)); Console.WriteLine("Interest: " + yetAnotherTestAccount.CalculateInterest(3)); Console.WriteLine(yetAnotherTestAccount); Console.WriteLine(new string('-', 60)); }
public static void Main() { Customer ivan = new IndividualCustomer("Ivan"); DepositAccount ivanDepositAccount = new DepositAccount(ivan, 500M, 4M); Console.WriteLine(ivanDepositAccount.Client.Name); Console.WriteLine(ivanDepositAccount.InterestRate); ivanDepositAccount.Deposit(100M); Console.WriteLine(ivanDepositAccount.Balance); ivanDepositAccount.Withdraw(100); Console.WriteLine(ivanDepositAccount.Balance); Console.WriteLine(ivanDepositAccount.CalculateInterest(5)); Console.WriteLine(ivanDepositAccount); Customer company = new CompanyCustomer("Company"); MortgageAccount companyMortgageAcount = new MortgageAccount(company, 100000M, 1.5M); Console.WriteLine(companyMortgageAcount.Client.Name); Console.WriteLine(companyMortgageAcount); companyMortgageAcount.Deposit(10000); Console.WriteLine(companyMortgageAcount.Balance); companyMortgageAcount.CalculateInterest(20); LoanAccount companyLoanAccount = new LoanAccount(company, 25000M, 5M); Console.WriteLine(companyLoanAccount); companyLoanAccount.Deposit(5000.50M); Console.WriteLine(companyLoanAccount.CalculateInterest(30)); Console.WriteLine(companyLoanAccount); }
static void Main() { //Deposit Test var depositAccIndividual = new DepositAccount(CustomerType.Individual, 2000.78m, 0.5m); Console.WriteLine("Customer: {0} | Balance: ${1:F2} | Interest Amount (12 Months): ${2:F2}", depositAccIndividual.Customer, depositAccIndividual.Balance, depositAccIndividual.InterestAmount(12)); depositAccIndividual.Withdraw(1500); Console.WriteLine("Balance after Withdraw: ${0:F2}", depositAccIndividual.Balance); Console.WriteLine(); //Loan Test var loanAccCompany = new LoanAccount(CustomerType.Company, 3000000.1234m, 1.0m); Console.WriteLine("Customer: {0} | Balance: ${1:F2} | Interest Amount (1 Month): ${2:F2}", loanAccCompany.Customer, loanAccCompany.Balance, loanAccCompany.InterestAmount(1)); loanAccCompany.Deposit(1500000); Console.WriteLine("Balance after Deposit: ${0:F2}", loanAccCompany.Balance); Console.WriteLine("Interest Amount (13 Months): ${0:F2}", loanAccCompany.InterestAmount(13)); Console.WriteLine(); //Mortage Test var mortageAccCompany = new MortageAccount(CustomerType.Company, 17000000.98m, 1.5m); Console.WriteLine("Customer: {0} | Balance: ${1:F2} | Interest Amount (1 Month): ${2:F2}", mortageAccCompany.Customer, mortageAccCompany.Balance, mortageAccCompany.InterestAmount(1)); var mortageAccIndividual = new MortageAccount(CustomerType.Individual, 105000.13m, 1.0m); Console.WriteLine("Customer: {0} | Balance: ${1:F2} | Interest Amount (1 Month): ${2:F2}", mortageAccIndividual.Customer, mortageAccIndividual.Balance, mortageAccIndividual.InterestAmount(1)); }
public static void Run() { Account[] depositAccount = new Account[] { new DepositAccount(new Customer(CustomerType.Individuals, "Stamat Sedefov", "Pernik", "0899115011"), 150M, 5M), new DepositAccount(new Customer(CustomerType.Companies, "Telus", "Sofia", "*88"), 100000M, 18M), new DepositAccount(new Customer(CustomerType.Companies, "Apple", "California, USA", "555-123-123"), 50000M, 3M) }; Account[] loanAccont = new Account[] { new LoanAccount(new Customer(CustomerType.Companies, "Vivacom", "Sofia", "02/55113"), 400M, 1M), new LoanAccount(new Customer(CustomerType.Individuals, "Gosho Peshov", "Veliko Tarnovo", "033-12-3"), 1M, 2M), new LoanAccount(new Customer(CustomerType.Individuals, "Mariika Toshova", "Burgas", "044-22-4"), 155M, 11M) }; Account[] mortgageAccount = new Account[] { new MortgageAccount(new Customer(CustomerType.Individuals, "Blagoy Berbatov", "London", "024-44-44"), 1500M, 10M), new MortgageAccount(new Customer(CustomerType.Individuals, "Qlo Yolov", "Burgas", "08855123"), 444M, 2M), new MortgageAccount(new Customer(CustomerType.Companies, "Vivacom", "Sofia", "011-23-3"), 111M, 1M) }; Console.WriteLine("---------- Deposit accounts ----------"); PrintAccounts.Print(depositAccount); Console.WriteLine("---------- Loan accounts ----------"); PrintAccounts.Print(loanAccont); Console.WriteLine("---------- Mortgage accounts ----------"); PrintAccounts.Print(mortgageAccount); Console.WriteLine("---------- Mitko deposit accounts ----------"); DepositAccount mitkoDepositeAccount = new DepositAccount(new Customer(CustomerType.Individuals, "Mitko Mitkov", "Pleven", "044-2222-2"), 500M, 12M); mitkoDepositeAccount.Deposit(111M); mitkoDepositeAccount.Withdraw(11M); Console.WriteLine("Mitko balance: " + mitkoDepositeAccount.Balance); Console.WriteLine(); Console.WriteLine("---------- Asus loan accounts ----------"); LoanAccount asusLoanAccount = new LoanAccount(new Customer(CustomerType.Companies, "ASUS", "Taiwan", "000111"), 199900M, 14M); asusLoanAccount.Deposit(1313M); Console.WriteLine("ASUS balande: " + asusLoanAccount.Balance); Console.WriteLine(); Console.WriteLine("---------- Lenovo mortgage accounts ----------"); MortgageAccount lenovoMortgageAccount = new MortgageAccount(new Customer(CustomerType.Companies, "LENOVO", "China", "0991100"), 33333M, 100M); lenovoMortgageAccount.Deposit(10000M); Console.WriteLine("Lenovo balance: " + lenovoMortgageAccount.Balance); Console.WriteLine(); }
static void Main(string[] args) { Bank bank = new Bank("FirstBank"); Customer P = new Customer("Diana", CustomerType.Individuals); DepositAccount deposit1 = new DepositAccount(P, 15000, 3.45); bank.AddAccount(deposit1); Customer Z = new Customer("Gosho", CustomerType.Companies); MortgageAccount mortg1 = new MortgageAccount(Z, 50000, 5); bank.AddAccount(mortg1); Console.WriteLine(bank); for (int i = 0; i < bank.AllAccounts.Count; i++) { Console.WriteLine(); Console.WriteLine("Account {0}: ", i + 1); Console.WriteLine(bank.AllAccounts[i]); } Console.WriteLine("---------- Mitko deposit accounts ----------"); DepositAccount a = new DepositAccount(new Customer("Maria Daea", CustomerType.Individuals), 5000, 12); a.MakeDeposit(111000); a.Withdraw(5); Console.WriteLine("Totz balance: " + a.Balance); Console.WriteLine(); Console.WriteLine("---------- AHA loan accounts ----------"); LoanAccount asusLoanAccount = new LoanAccount(new Customer("Adria", CustomerType.Companies), 34567, 12); asusLoanAccount.MakeDeposit(10000); Console.WriteLine("AHA balance: " + asusLoanAccount.Balance); Console.WriteLine(); Console.WriteLine("---------- B mortgage accounts ----------"); MortgageAccount b = new MortgageAccount(new Customer("B", CustomerType.Companies), 345565, 50); b.MakeDeposit(1000); Console.WriteLine("B balance: " + b.Balance); Console.WriteLine(); }
static void Main() { var individual = new Individual("Petar Petrov"); var company = new Company("Mobiltel EAD"); var depositAccountInd = new DepositAccount(3, 600, individual); var depositAccountComp = new DepositAccount(2, 6000, company); depositAccountInd.Deposit(50); depositAccountComp.Withdraw(1000); Console.WriteLine($"Individual balance in deposit account before interest: {depositAccountInd.Balance:F2}."); Console.WriteLine($"Company balance in deposit account before interest: {depositAccountComp.Balance:F2}."); var individualInterest = depositAccountInd.CalculateInterest(12); var companyInterest = depositAccountComp.CalculateInterest(12); Divide(); Console.WriteLine($"Individual balance after 12 months interest in deposit account: {individualInterest:F2}. (less than 1000 balance => no interest)"); Console.WriteLine($"Company balance after 12 months interest in deposit account: {companyInterest:F2}."); var loanAcccountInd = new LoanAccount(7, 650, individual); var loanAcccountComp = new LoanAccount(9, 5000, company); individualInterest = loanAcccountInd.CalculateInterest(12); companyInterest = loanAcccountComp.CalculateInterest(12); Divide(); Console.WriteLine($"Individual balance after 12 months interest in loan account: {individualInterest:F2}."); Console.WriteLine($"Company balance after 12 months interest in loan account: {companyInterest:F2}."); var mortageAccountInd = new MortgageAccount(7, 650, individual); var mortageAccountComp = new MortgageAccount(9, 5000, company); individualInterest = mortageAccountInd.CalculateInterest(12); companyInterest = mortageAccountComp.CalculateInterest(12); Divide(); Console.WriteLine($"Individual balance after 12 months interest in mortage account: {individualInterest:F2}."); Console.WriteLine($"Company balance after 12 months interest in mortage account: {companyInterest:F2}."); }