C# - Implementation of an Account class with minimal functionalities


Implementation of an Account class with minimal functionalities

CODE
using System; class Program { public static void Main(string[] args) { try { Account account = new Account(10000123, "Pedro Saraiva", 100); string userInput = ""; while (userInput != "x") { Console.WriteLine("1. Deposit Amount"); Console.WriteLine("2. Withdraw Amount"); Console.WriteLine("3. Check Balance"); Console.WriteLine("4. Display Details"); Console.WriteLine("x. Exit"); Console.Write("Enter your choice: "); userInput = Console.ReadLine(); userInput = userInput.Trim().ToLower(); switch (userInput) { case "1": Console.Write("Enter Deposit Amount: "); double depositAmount = Convert.ToDouble(Console.ReadLine()); account.Deposit(depositAmount); break; case "2": Console.Write("Enter Withdrawal Amount: "); double withdrawalAmount = Convert.ToDouble(Console.ReadLine()); account.Withdraw(withdrawalAmount); break; case "3": account.DisplayBalance(); break; case "4": account.DisplayDetails(); break; case "x": Console.WriteLine("Exiting..."); break; default: Console.WriteLine("Invalid Option"); break; } Console.WriteLine(""); } } catch(Exception ex) { Console.WriteLine("Error: " + ex.Message); } Console.ReadKey(); } } class Account { private int accountNumber; private string accountName; private double balance; public Account(int accountNumber, string accountName, double balance) { if (balance <= 0) throw new Exception("The balance should be greater than 0."); this.accountNumber = accountNumber; this.accountName = accountName; this.balance = balance; Console.WriteLine("Account started with the initial balance."); DisplayDetails(); } public int AccountNumber { get { return accountNumber; } } public string AccountName { get { return accountName; } } public double Balance { get { return balance; } } public void DisplayDetails() { Console.WriteLine("AccountNumber: " + accountNumber); Console.WriteLine("AccountName: " + accountName); Console.WriteLine("Balance: " + balance.ToString("0.00")); } public void DisplayBalance() { Console.WriteLine("Balance: " + balance.ToString("0.00")); } public bool Deposit(double amount) { bool result = false; if (amount <= 0) Console.WriteLine("The deposit amount should be greater than 0."); else { this.balance = this.balance + amount; result = true; Console.WriteLine("The amount {0} is deposited in the account.", amount); } return result; } public bool Withdraw(double amount) { bool result = false; if (amount > balance) Console.WriteLine("Insufficient Amount in the Account."); else { this.balance = this.balance - amount; result = true; Console.WriteLine("The amount {0} is withdrawn from the account.", amount); } return result; } }

INPUT & OUTPUT
The below is the output of the program.

Comments