Advertisement
KingAesthetic

C++ Example 1

Aug 12th, 2024 (edited)
125
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 5.16 KB | None | 0 0
  1. #include <iostream>
  2. #include <vector>
  3. #include <string>
  4.  
  5. // Kaizer here. I created a banking system, which allows you to create your own account, withdraw money, input account numbers, initial balance, and so on and so forth.
  6.  
  7. // class to represent a bank account
  8. class Account {
  9. private:
  10.     std::string accountNumber;
  11.     std::string accountHolder;
  12.     double balance;
  13.  
  14. public:
  15.     // constructor for initializing account details
  16.     Account(const std::string &accNumber, const std::string &accHolder, double initialBalance)
  17.             : accountNumber(accNumber), accountHolder(accHolder), balance(initialBalance) {}
  18.  
  19.     // function to find an already existing account number
  20.     std::string getAccountNumber() const {
  21.         return accountNumber;
  22.     }
  23.  
  24.     // function to deposit money into the account
  25.     void deposit(double amount) {
  26.         if (amount > 0) {
  27.             balance += amount;
  28.             std::cout << "Deposited: " << amount << "\n";
  29.         } else {
  30.             std::cout << "Invalid deposit amount.\n";
  31.         }
  32.     }
  33.  
  34.     // function to withdraw money from the account
  35.     void withdraw(double amount) {
  36.         if (amount > 0 && amount <= balance) {
  37.             balance -= amount;
  38.             std::cout << "Withdrew: " << amount << "\n";
  39.         } else {
  40.             std::cout << "Invalid withdrawal amount or insufficient funds.\n";
  41.         }
  42.     }
  43.  
  44.     // function to check the account balance
  45.     double getBalance() const {
  46.         return balance;
  47.     }
  48.  
  49.     // function to display account details
  50.     void display() const {
  51.         std::cout << "Account Number: " << accountNumber << "\n";
  52.         std::cout << "Account Holder: " << accountHolder << "\n";
  53.         std::cout << "Balance: " << balance << "\n";
  54.     }
  55. };
  56.  
  57. // public Class to manage multiple accounts
  58. class Bank {
  59. private:
  60.     std::vector<Account> accounts;
  61.  
  62. public:
  63.     // function to create a new account
  64.     void createAccount(const std::string &accNumber, const std::string &accHolder, double initialBalance) {
  65.         accounts.emplace_back(accNumber, accHolder, initialBalance);
  66.         std::cout << "Account created successfully.\n";
  67.     }
  68.  
  69.     // function to find an account by account number
  70.     Account* findAccount(const std::string &accNumber) {
  71.         for (auto &account : accounts) {
  72.             if (account.getAccountNumber() == accNumber) {
  73.                 return &account;
  74.             }
  75.         }
  76.         return nullptr;
  77.     }
  78.  
  79.     // function to display all accounts
  80.     void displayAllAccounts() const {
  81.         for (const auto &account : accounts) {
  82.             account.display();
  83.             std::cout << "-------------------\n";
  84.         }
  85.     }
  86. };
  87.  
  88. int main() {
  89.     Bank bank;
  90.     int choice;
  91.     std::string accNumber, accHolder;
  92.     double amount;
  93.  
  94.     do {
  95.         std::cout << "1. Create Account\n";
  96.         std::cout << "2. Deposit\n";
  97.         std::cout << "3. Withdraw\n";
  98.         std::cout << "4. Check Balance\n";
  99.         std::cout << "5. Display All Accounts\n";
  100.         std::cout << "6. Exit\n";
  101.         std::cout << "Enter your choice: ";
  102.         std::cin >> choice;
  103.  
  104.         switch (choice) {
  105.             case 1:
  106.                 std::cout << "Enter account number: ";
  107.                 std::cin >> accNumber;
  108.                 std::cout << "Enter account holder name: ";
  109.                 std::cin >> accHolder;
  110.                 std::cout << "Enter initial balance: ";
  111.                 std::cin >> amount;
  112.                 bank.createAccount(accNumber, accHolder, amount);
  113.                 break;
  114.             case 2:
  115.                 std::cout << "Enter account number: ";
  116.                 std::cin >> accNumber;
  117.                 if (Account* account = bank.findAccount(accNumber)) {
  118.                     std::cout << "Enter amount to deposit: ";
  119.                     std::cin >> amount;
  120.                     account->deposit(amount);
  121.                 } else {
  122.                     std::cout << "Account not found.\n";
  123.                 }
  124.                 break;
  125.             case 3:
  126.                 std::cout << "Enter account number: ";
  127.                 std::cin >> accNumber;
  128.                 if (Account* account = bank.findAccount(accNumber)) {
  129.                     std::cout << "Enter amount to withdraw: ";
  130.                     std::cin >> amount;
  131.                     account->withdraw(amount);
  132.                 } else {
  133.                     std::cout << "Account not found.\n";
  134.                 }
  135.                 break;
  136.             case 4:
  137.                 std::cout << "Enter account number: ";
  138.                 std::cin >> accNumber;
  139.                 if (Account* account = bank.findAccount(accNumber)) {
  140.                     std::cout << "Balance: " << account->getBalance() << "\n";
  141.                 } else {
  142.                     std::cout << "Account not found.\n";
  143.                 }
  144.                 break;
  145.             case 5:
  146.                 bank.displayAllAccounts();
  147.                 break;
  148.             case 6:
  149.                 std::cout << "Exiting...\n";
  150.                 break;
  151.             default:
  152.                 std::cout << "Invalid choice. Please try again.\n";
  153.         }
  154.     } while (choice != 6);
  155.  
  156.     return 0;
  157. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement