#include <iostream>
#include "AccManager.h"
using namespace std;
AccManager::AccManager(){
//index=0;
}
void AccManager::PrintMenu()
{
cout<<"---Menu-----"<<endl;
cout<<"1. 계좌 개설"<<endl;
cout<<"2. 입금 " <<endl;
cout<<"3. 출금 " <<endl;
cout<<"4. 잔액 조회"<<endl;
cout<<"5. 프로그램 종료"<<endl;
}
void AccManager::MakeAccount()
{
int id;
char name[NAME_LEN];
int balance;
int sel;
cout<<"개설할 계좌의 종류-----"<<endl;
cout<<"1. 일반 계좌. "<<endl;
cout<<"2. 신용 계좌. "<<endl;
cout<<"3. 기부 계좌. "<<endl;
cout<<">>";
cin>>sel;
cout<<"계좌 개설------"<<endl;
cout<<"계좌 ID: "; cin>>id;
cout<<"이 름: "; cin>>name;
cout<<"입금액: "; cin>>balance;
if(sel==1) //일반 계좌 개설 시
//pArray[index++]=new Account(id, name, balance);
ctr.Insert(new Account(id,name,balance));
else if(sel==2) // 신용 계좌 개설 시
//pArray[index++]=new FaithAccount(id,name,balance);
ctr.Insert(new FaithAccount(id,name,balance));
else if(sel==3) // 기부 계좌 개설 시
//pArray[index++]=new ContriAccount(id,name,balance);
ctr.Insert(new ContriAccount(id,name,balance));
else
cout<<"선택 오류! "<<endl;
}
void AccManager::Deposit() // 입 금
{
int money;
int id;
cout<<"계좌 ID: "; cin>>id;
cout<<"입금액: "; cin>>money;
int num = ctr.GetElemSum(); // 계좌 총 개수
//for(int i=0; i<index; i++)
for(int i=0; i<num; i++)
{
//if(pArray[i]->GetID()==id)
if(ctr.GetItem(i)->GetID()==id)
{
//pArray[i]->AddMoney(money);
ctr.GetItem(i)->AddMoney(money);
cout<<"입금 완료"<<endl;
return;
}
}
cout<<"유효하지 않은 ID입니다."<<endl;
}
void AccManager::Withdraw() // 출금
{
int money;
int id;
cout<<"계좌 ID: "; cin>>id;
cout<<"출금액: "; cin>>money;
int num = ctr.GetElemSum(); // 계좌의 총 개수
//for(int i=0; i<index; i++)
for(int i=0; i<num; i++)
{
//if(pArray[i]->GetID()==id)
if(ctr.GetItem(i)->GetID()==id)
{
//if(pArray[i]->GetBalance()<money)
if(ctr.GetItem(i)->GetBalance()<money)
{
cout<<"잔액 부족"<<endl;
return;
}
ctr.GetItem(i)->MinMoney(money);
//pArray[i]->MinMoney(money);
cout<<" 출금 완료" <<endl;
return;
}
}
cout<<" 유효하지 않은 ID입니다."<<endl;
}
void AccManager::Inquire() // 전체 잔액 조회
{
int num = ctr.GetElemSum(); // 계좌의 총 개수
/*** for(int i=0; i<index; i++)
pArray[i]->ShowAllData();
**/
for(int i=0; i<num; i++)
ctr.GetItem(i)->ShowAllData();
}
'C++ > 열혈 C++' 카테고리의 다른 글
열혈 C++ oop8 Container.cpp (0) | 2018.04.09 |
---|---|
열혈 C++ oop8 Account.cpp (0) | 2018.04.09 |
열혈 C++ oop FaithAccount.h (0) | 2018.04.09 |
열혈 C++ oop8 ContriAccount.h (0) | 2018.04.09 |
열혈 C++ oop8 Container.h (0) | 2018.04.09 |
댓글