오류체크좀 ㅜㅜ
후력
질문 내용 :
#include iostream
using namespace std;
const int name_len=20;
class account
{
int id;
int balance;
char* name;
public:
account(){}
account(int id, char* name, int balance);
account(const account& acc);
~account();
int getid() const;
int getbalance()const;
virtual void addmoney(int val);
void minmoney(int val);
const char* getname() const;
virtual void showalldata();
};
account::account(int id, char *name, int balance)
{
this-id=id;
this-balance=balance;
this-name=new char[strlen(name)+1];
strcpy(this-name,name);
this-id;
}
account::account(const account &acc)
{
this-id=acc.id;
this-balance=acc.balance;
this-name=new char[strlen(acc.name)+1];
strcpy(this-name, acc.name);
}
account::~account()
{
delete []name;
}
int account::getid() const
{
return id;
}
int account::getbalance()const
{
return balance;
}
void account::addmoney(int val)
{
balance+=val;
}
void account::minmoney(int val)
{
balance-=val;
}
const char* account::getname() const
{
return name;
}
void account::showalldata()
{
cout 계좌 id: id endl;
cout 이 름: name endl;
cout 잔 액: balanceendl;
}
class faithaccount : public account
{
public:
faithaccount(int id, char* name, int balance)
:account(id, name, balance+balance*0.01)
{}
virtual void addmoney(int val)
{
account::addmoney(val+val*0.01);
}
};
class constriaccount : public account
{
int contribution;
public:
contriaccount(int id, char* name, int balance)
:: account(id, name, balance-balance*0.01)
{
contribution=balance*0.01;
}
virtual void addmoney(int val)
{
account::addmoney(val-val*0.01);
contribution+=val*0.01;
}
virtual void showalldata()
{
account::showalldata();
std::cout 총 기부액: constributionendl;
}
};
class accmanager
{
account* parray[100];
int index;
public:
accmanager();
void printmenu();
void makeaccount();
void deposit();
void withdraw();
void inquire();
};
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;
cinsel;
cout 계좌 개설 ---------- endl;
cout 계좌 id: ;cinid;
cout 이 름: ;cin name;
cout 입 금액: ; cin balance;
if(sel==1)
parray[index++]=new account(id, name, balance);
else if(sel==2)
parray[index++]=new faithaccount(id, name, balance);
else if(sel==3)
parray[index++]=new contriaccount(id, name, balance);
else
cout 선택 오류 ! endl;
}
void accmanager::deposit()
{
int money;
int id;
cout 계좌 id: ; cinid;
cout 입금액: ; cinmoney;
for(int i=0; iindex; i++)
{
if(parray[i]-getid()==id)
{
parray[i]-addmoney(money);
cout 입금 완료 endl;
return;
}
}
cout 유호하지 않은 id입니다. endl;
}
void accmanager::withdraw()
{
int money;
int id;
cout 계좌 id: ; cin id;
cout 출금액: ; cinmoney;
for(int i=0; iindex; i++)
{
if(parray[i]-getid()==id)
{
cout 잔액 부족 endl;
return;
}
parray[i]-minmoney(money);
cout 출금 완료 endl;
return;
&nb;
}
}
cout 유효하지 않은 id입니다. endl;
}
void accmanager::inquire()
{
for(int i=0; iindex; i++)
parrary[i]-showalldata();
}
enum{make=1, deposit, withdrawm, inquire, exit};
int main(void)
{
int choice;
accmanager manager;
while(1)
{
manager.printmenu();
std::cout 선택: ;
std::cinchoice;
switch(choice)
{
case make:
manager.makeaccount();
break;
case deposit :
manager.deposit();
break;
case withdraw :
manager.withdraw();
break;
case inquire :
manager.inquire();
break;
case exit :
return 0;
default :
std::cout illegal selection.. endl;
break;
}
}
return 0;
}
번호 | 제 목 | 글쓴이 | 날짜 |
---|---|---|---|
2693299 | 파일입출력 바이너리파일 | 독특한 | 2025-04-30 |
2693273 | 오류 (1) | 귀1여운렩 | 2025-04-30 |
2693080 | visual studio 2008 express edition 등록키 말인데요 | 얀별 | 2025-04-28 |
2693053 | 배열, 구조체 관련 프로그래밍 질문드립니다. | 싸리 | 2025-04-28 |
2693025 | 프로그램을 짜봤는데요 ㅠㅠ | 상처입은마음 | 2025-04-28 |
2693001 | 워닝문제, 세그멘트결함문제 (1) | 월식 | 2025-04-28 |
2692979 | 라인한줄 이랑.. 소스 설명좀 부탁드려요.. | 이루리 | 2025-04-27 |
2692947 | 이 문제좀 풀어 주세요..ㅜㅜ (1) | 소리 | 2025-04-27 |
2692889 | 함수의 구조체 인자로 받아서 그 인자로 데이터 넣기... | 한뎃집 | 2025-04-27 |
2692862 | 성적 출력 하는 프로그램인데요~!!!도움좀 주세욤.ㅠ | 두빛나래 | 2025-04-26 |
2692831 | if 문 간단해요 빨리좀 ㅠㅠ | 이플 | 2025-04-26 |
2692805 | 실행파일이 이상해요 | 푸헷 | 2025-04-26 |
2692750 | 퀵정렬 질문이요 . | 동생몬 | 2025-04-25 |
2692700 | 이 소스코드에 문제 있나요?? (2) | 초코초코해 | 2025-04-25 |
2692596 | 오류좀 잡아주세요 | 하나 | 2025-04-24 |
2692510 | 함수형 중에서.. (6) | 한란 | 2025-04-23 |
2692483 | C언어 함수, Header | 떠나간그놈 | 2025-04-23 |
2692451 | 이 문제좀 풀어주세요 ^^ | 게자리 | 2025-04-23 |
2692424 | 2차원배열 자료입력질문이요! (1) | 똘끼 | 2025-04-22 |
2692401 | 유닉스안에서 C언어를 이용한 명함 만들기 입니다; 이해안가는 부분이있네요 | 2gether | 2025-04-22 |