디시인사이드 갤러리

갤러리 이슈박스, 최근방문 갤러리

갤러리 본문 영역

cpp 과제인데 질문요;;

ㅁㄴㅇㅁㄴㅇ(182.214) 2011.10.05 23:16:39
조회 102 추천 0 댓글 8

제가 디버깅시작해보니까 showmenu라는게 없다고 하는데..이유를 모르겠어요.. 다른오류는 없고 이 showmenu에 관해서만 오류 나는데.. 수정 및 설명 좀 부탁해요..아래 소스코드에요







#include <iostream>

using namespace std;

const int name_len=20;

class account
{
private:        
        int accid; //계좌번호
        int balance; //잔액
        char*cusname; //고객 이름
public:
        account(int id, int money, char*name)
                : accid(id), balance(money)
        {
                cusname=new char[strlen(name)+1];
                strcpy(cusname, name);
        }

        int getaccid()
        {return accid;}

        void deposit(int money)
        {
                balance=+money;
        }
        int withdraw(int money)
        {
                if(balance<money)
                        return 0;

                else balance=-money;
                        return money;
        }

        void showaccinfo()
        {
                cout<<"계좌 ID : "<<accid<<endl;
                cout<<"이 름 : "<<cusname<<endl;
                cout<<"잔 액 : "<<balance<<endl;
        }

        ~account()
        {
                delete []cusname;
        }
};


account *accarr[10]; //account 저장을 위한 배열
int accnum=0; //현재 저장된 account 수

void showmanu(); //메뉴출력
void makeaccount(); //계좌생성
void depositmoney(); //입금
void withdrawmoney(); //출금
void showallaccinfo(); //잔액 조회

void showmanu()
{
        cout<<"-----메뉴-----"<<endl;
        cout<<"1. 계좌생성"<<endl;
        cout<<"2. 입 금"<<endl;
        cout<<"3. 출 굼"<<endl;
        cout<<"4. 잔액조회"<<endl;
        cout<<"5. 프로그램 종료"<<endl;
    cout<<"*계좌 생성은 최대 10개까지만 가능*"<<endl;
}

void makeaccount()
{
        int id;
        char name[name_len]; //배열의 길이가 20인 이름을 만들어냄
        int balance;

        cout<<"계좌생성 : "<<endl;
        cout<<"계좌 ID : "; cin>>id;
        cout<<"이름 : "; cin>>name;
        cout<<"입금액 : "; cin>>balance;

        accarr[accnum++]=new account(id, balance, name);//아이디를 만들 때마다 배열의 길이가 1씩 증가함
}

void depositmoney()
{
        int money;
        int id;
        cout<<"[입 금]"<<endl;
        cout<<"계좌 ID : "; cin>>id;
        cout<<"입금액 : "; cin>>money;
   
        for(int i=0; i<accnum; i++) //accarr의 원소(id를 만든 원소)를 찾아 낼때까지 반복
        {
                if(accarr[i]->getaccid()==id) //accarr의 원소 i 가 getaccid(계좌생성)의 원소가 일치 할 경우 if 문 진행
                        {accarr[i]->deposit(money); //아이디가 일치할 경우 출금함수를 사용
                    cout<<"입금완료"<<endl;
                        return ;
                        }
        }
        cout<<"유효하지 않은 ID !!"<<endl;
}
void withdrawmoney()
{
        int money;
        int id;;
        int i;
        cout<<"[출 금]"<<endl;
        cout<<"계좌 ID : "; cin>>id;
        cout<<"출금액 : "; cin>>money;

        for(i=0; i<accnum;  i++)
                if(accarr[i]->getaccid()==id)
                {
                        if(accarr[i]->withdraw(money)==0) //출금액 반환 0 (출금함수에서 잔액<꺼내려는 돈이 많을 경우 0으로 리턴)
                        {
                                cout<<"잔액부족"<<endl;
                                return;
                        }
                        cout<<"출금 완료 "<<endl;
                        return;
                }
        cout<<"유효하지 않은 ID!!"<<endl;
}

void showallinfo()
{
        for(int i=0; i<<accnum; i++)
        {
                accarr[i]->showaccinfo();
                cout<<endl;
        }
}

int main()
{
        int choice;
        while(1)
        {
                showmenu();
                cout<<"선택 : "; cin>>choice;
                cout<<endl;
        
                if(choice==1)
                {
                        makeaccount();
                    if(accnum>10)
                                {cout<<"계좌는 최대 10개까지만 생성 가능합니다!"<<endl;
                                return showmenu();}
                        
                }
                else if(choice==2)
                {
                        depositmoney();
                }
                else if(choice==3)
                {
                        withdrawmoney();
                }

                else if(choice==4)
                {
                        showallaccinfo();
                }
                else if(choice==5)
                {
                        return 0;
                }
                else
                {cout<<"1-5사이의 숫자를 입력 해 주세요!"<<endl;
                 return showmenu();
                }
        return 0;
        }
}

추천 비추천

0

고정닉 0

0

댓글 영역

전체 댓글 0
본문 보기

하단 갤러리 리스트 영역

왼쪽 컨텐츠 영역

갤러리 리스트 영역

갤러리 리스트
번호 제목 글쓴이 작성일 조회 추천
설문 이번주 설문은 탈모 걱정 없어 보이는 머리숱 금수저 스타는? 운영자 25/07/14 - -
AD 휴대폰 액세서리 SALE 운영자 25/07/15 - -
279455 아는 사람이 삼성화재 입사를 권유했는데 [2] 분당살람갤로그로 이동합니다. 11.10.10 185 0
279454 여러분이 좋와하는 슬픈짤 모아봤음.jpg [4] lol(110.174) 11.10.10 199 0
279453 와 첫출근인데 겁나어색하다 [15] 개떙보갤로그로 이동합니다. 11.10.10 224 0
279451 굿텐모르겐 가이들 [2] Kanon갤로그로 이동합니다. 11.10.10 95 0
279449 시험기간이라고 三didas갤로그로 이동합니다. 11.10.10 48 0
279448 금요일이 기대된다 전간디갤로그로 이동합니다. 11.10.10 52 0
279447 존나 신기한게 534F444D61737465갤로그로 이동합니다. 11.10.10 50 0
279446 한공대 재학중인 코딩 싫다는 분 [2] 전간디갤로그로 이동합니다. 11.10.10 140 0
279445 조은 아침! [1] 돌아이바갤로그로 이동합니다. 11.10.10 37 0
279443 Java ... String 클래스에서 [1] 귀연태연갤로그로 이동합니다. 11.10.10 63 0
279441 무슨언어만 죽어라팔까 [8] 박구갤로그로 이동합니다. 11.10.10 188 0
279438 나는 꼼수다 듣는 횽 있나염??? [1] 거칠게갤로그로 이동합니다. 11.10.10 78 0
279437 오늘도 열씨미 공부해따 [1] 일광면(119.198) 11.10.10 77 0
279436 Java 커맨드로 실행하는게 다 에러가 나네요 [14] 귀연태연갤로그로 이동합니다. 11.10.10 90 0
279435 프갤 전용 에프킬라.txt [4] Adelposs갤로그로 이동합니다. 11.10.10 115 0
279434 c언어 엄청쉬운거 부탁좀여 [9] 1(14.53) 11.10.10 90 0
279433 회사가 원래 이럼? [1] 116.44(110.11) 11.10.10 81 0
279432 웹해킹 세미나 할 주제 좀 선정해줘 횽들.. [1] 113(58.125) 11.10.10 72 0
279428 구글 귀엽네 ㅋ [1] 이힝(121.177) 11.10.10 118 0
279427 형들 갑자기 급 궁금한게 있음 [2] 플래닛댄스갤로그로 이동합니다. 11.10.10 53 0
279426 ㅇㅍㅇㅍ님 봐주세요 [10] 사파히츠갤로그로 이동합니다. 11.10.10 61 0
279425 형들 시퀀스 다이어그램 그리다가 궁금한게 생겼는데 [1] laoshanlong갤로그로 이동합니다. 11.10.10 48 0
279424 역사상 최고의 츤데레 찌르매미(203.229) 11.10.10 52 0
279422 넥스 유저 qr인식기 뭐쓰나여? 534F444D61737465갤로그로 이동합니다. 11.10.10 45 0
279419 형들.. 프로세싱 코드를 재귀로 좀 바꿔야 되는데 도와주세요(7줄!!) [11] 사파히츠갤로그로 이동합니다. 11.10.10 149 0
279417 실력이 제자리인 이유!!! [4] 막장갤신학생갤로그로 이동합니다. 11.10.10 158 0
279414 와 안드로이드 병신 같은 점 발견했다. [3] 시불라미갤로그로 이동합니다. 11.10.10 161 0
279413 가산에 가면 IT회사 많잖어. [2] 거칠게갤로그로 이동합니다. 11.10.10 151 0
279412 이 알고리즘 공식좀 찾아주실 형... [11] ㅈㅈㅈㅈ(118.47) 11.10.10 152 0
279410 늙은 여자 만나면 [6] 일광면(119.198) 11.10.10 138 1
279407 오빠들~~ 질문이요~~ 'ㅅ'/ [4] 거칠게갤로그로 이동합니다. 11.10.10 105 0
279406 C의 윤느님 열강이 있다면 자바는 뭐임? [2] 로하로하알로하갤로그로 이동합니다. 11.10.10 105 0
279405 아무래도 생일인 오늘 잊지 못할 선물을 받았어 [10] 좋은아버지갤로그로 이동합니다. 11.10.10 121 0
279404 자바 코딩했는데 자꾸 에러나네요 머가 잘못된건지 좀 ㅠㅠ 나그네프갤러(14.52) 11.10.10 52 0
279403 시스템 프로그래밍이나 로우한 프로그래밍 하는 회사 추천좀 해주세요. [3] 1234(110.11) 11.10.10 100 0
279402 형들 자바 기초적인 질문좀 할께 ㅠ.ㅠ [6] 으꺄꺄갤로그로 이동합니다. 11.10.09 78 0
279401 직므 모기새끼 한마리가 내 모든신경을 건드리고있음 [5] SuCo갤로그로 이동합니다. 11.10.09 78 0
279400 구글 검색 쿼리 좀 보니까 재밌넹 [13] 시불라미갤로그로 이동합니다. 11.10.09 243 0
279399 겜 같이 만들어볼 횽들 없어? 월급줄게 [7] 개발자(115.140) 11.10.09 143 0
279398 횽들 묻고 싶은거 있음. [2] 활의노래갤로그로 이동합니다. 11.10.09 61 0
279397 형님들 인스턴스의 개념좀 세워줍쇼 [7] 김 딜러(61.254) 11.10.09 108 0
279396 아래 한양대생은 봐라. [3] 물속의다이아(211.49) 11.10.09 122 0
279395 치킨집을 차리려고 합니다.. 조언좀 해주실분 구해요 [9] 퇴갤(115.23) 11.10.09 147 0
279394 로또 O(n) [6] 일광면(119.198) 11.10.09 93 0
279393 이제 쫌이쓰면 카트에 물건 쌓아놓고 하나씩 계산할 필요없어질듯 [3] SuCo갤로그로 이동합니다. 11.10.09 83 0
279391 여기는 MS빠는 병신들이 많다. [4] 123(121.182) 11.10.09 85 0
279389 프로그래밍이 제일 재밌는듯... [6] HH(64.134) 11.10.09 87 0
279388 형들 mfc에서 콤보박스 에러 뜨는데 이유를 모르게썽.. [2] ㅁㅁㅁㅁ(116.121) 11.10.09 90 0
279387 여기는 MS빠는 ㅄ들이 많다. [5] 쵸쵸(219.251) 11.10.09 80 0
279386 아래 한양대생 보면 우리나라 대학생의 자화상을 보는 듯 하다. [3] 물속의다이아(211.49) 11.10.09 176 0
뉴스 ‘신세계 재벌 3세’ 애니, 용돈 얼마?…“달러로 생활비 정도 받아” 디시트렌드 07.14
갤러리 내부 검색
제목+내용게시물 정렬 옵션

오른쪽 컨텐츠 영역

실시간 베스트

1/8

뉴스

디시미디어

디시이슈

1/2