본문 바로가기
C++/열혈 C++

열혈 C++ oop8 AccManager.cpp

by Beijing_KingGod 2018. 4. 9.

#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

댓글