티스토리 뷰

** 은행 계좌 관리 프로그램

  - 기능 : 계좌 개설, 입금, 출금, 전체고객 계좌 조회

  - C 스타일로 구현 



#include <iostream>
#include <string>
using namespace std;

void ShowMenu();
void CreateAccount();
void DepositMoney();
void WithdrawMoney();
void ShowAllAccount();

typedef struct 
{
	int accountID;
	int balance;
	char userName[10];
} Account;

Account accountArr[100];
int accNum = 0;

int main()
{
	int choice;

	while (1)
	{
		ShowMenu();

		cout << "원하는 메뉴의 번호를 입력하세요 : ";
		cin >> choice;

		switch (choice)
		{
		case 1:
			CreateAccount();
			break;
		case 2:
			DepositMoney();
			break;
		case 3:
			WithdrawMoney();
			break;
		case 4:
			ShowAllAccount();
			break;
		case 5:
			return 0;
		default:
			cout << "1~5 사이의 메뉴 번호를 입력해주세요." << endl;
		}
	}

	return 0;
}

void ShowMenu()
{
	cout << " -------- Bank Menu -------- " << endl;
	cout << " 1. 계좌 개설" << endl;
	cout << " 2. 입 금" << endl;
	cout << " 3. 출 금" << endl;
	cout << " 4. 계좌정보 전체 조회" << endl;
	cout << " 5. 프로그램 종료 " << endl;
}

void CreateAccount()
{
	int accountID;
	int balance = 0;
	char userName[10];

	cout << " -------- 계좌 개설 -------- " << endl;
	cout << "계좌ID를 입력하세요 : ";
	cin >> accountID;
	cout << "사용자 명을 입력하세요 : ";
	cin >> userName;
	cout << "계좌 잔액을 입력하세요 : ";
	cin >> balance;

	accountArr[accNum].accountID = accountID;
	accountArr[accNum].balance = balance;
	strcpy(accountArr[accNum].userName, userName);

	accNum++;
}

void DepositMoney()
{
	int id;
	int deposit;

	cout << " -------- 입  금 -------- " << endl;
	cout << "계좌 ID를 입력하세요 : ";
	cin >> id;
	cout << "입금할 금액을 입력하세요 :";
	cin >> deposit;

	for (int i = 0; i < accNum; i++)
	{
		if (accountArr[i].accountID == id)
		{
			accountArr[i].balance += deposit;
			cout << "입금 후 잔액은 " << accountArr[i].balance << "입니다." << endl;
			return;
		}
	}

	cout << "존재하지 않는 계좌 ID 입니다." << endl;
}

void WithdrawMoney()
{
	int id;
	int withdraw;

	cout << " -------- 출  금 -------- " << endl;
	cout << "계좌 ID를 입력하세요 : ";
	cin >> id;
	cout << "출금할 금액을 입력하세요 :";
	cin >> withdraw;

	for (int i = 0; i < accNum; i++)
	{
		if (accountArr[i].accountID == id)
		{
			if (accountArr[i].balance < withdraw)
			{
				cout << "계좌의 잔액보다 많은 돈을 출금할 수 없습니다." << endl;
				return;
			}

			accountArr[i].balance -= withdraw;
			cout << "출금 후 잔액은 " << accountArr[i].balance << "입니다." << endl;
			return;
		}
	}

	cout << "존재하지 않는 계좌 ID 입니다." << endl;
}

void ShowAllAccount()
{
	cout << " -------- 전체 계좌정보 출력 -------- " << endl;

	for (int i = 0; i < accNum; i++)
	{
		cout << "계좌ID : " << accountArr[i].accountID << endl;
		cout << "이름 : " << accountArr[i].userName << endl;
		cout << "잔액 : " << accountArr[i].balance << endl;
	}
}
댓글