디시인사이드 갤러리

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

갤러리 본문 영역

c++도와주세요 형들.ㅠㅠ 힘들어용

도와주세요형(165.246) 2011.12.11 17:57:52
조회 122 추천 0 댓글 3




여기서 한개만 삭제하고싶은데요

형들 아래 코딩입니다..
도와주세요 막혀서 삭제하는게 안되요.
저는 버로우 텍스트파일에있는걸 다시 읽은후에 삭제하고자하는 부분만 제외하고 포문을 두번을 돌려서
다시 텍스트파일에 써주는 방식으로 하려고 했는데 에러가나더라구요.
어떻게 다른방법은없을까요?
에러좀 해결해주세요ㅠㅠ
아래 해당부분 코딩입니다.

#include<iostream>
#include<time.h>
#include<stdlib.h>
#include<windows.h>
#include<string>
#include<fstream>
using namespace std;
//********************************************************************
class guest
{
 protected:
  char name[20];
  char phone[20];
  char birth[20];
 public:
  guest();
  guest(char *rname, char *rphone, char *rbirth);
  friend istream &operator>>(istream &is, guest a);
  char *getname();
  char *getphone();
  char *getbirth();
};

guest::guest()
{}
guest::guest(char *rname, char *rphone, char *rbirth)
{
 strcpy(name,rname);
 strcpy(phone,rphone);
 strcpy(birth,rbirth);
}

char* guest::getname()
{
 return name;
}

char* guest::getphone()
{
 return phone;
}

char* guest::getbirth()
{
 return birth;
}
//********************************************************************
class book
{
 protected:
  char name[20];
  int number;
 public:
  book();
  book(char *rname, int rnumber);
  char *getname();
  int getnumber();
};


book::book()
{}
book::book(char *rname, int rnumber)
{
 strcpy(name, rname);
 number =rnumber;
}

int book::getnumber()
{
 return number;
}

char *book::getname()
{
 return name;
}
//********************************************************************

class book_br
{
 private:
  char name[20];
  int number;
  char gname_br[20];
 public:
  book_br();
  book_br(char *bname_br, int bn, char *gname_br);
  char *getgname();
  char *getname();
  int getnumber();
  book_br & operator = (book_br & temp);
  friend ostream &operator<<(ostream &os, book_br &a);
};

book_br::book_br(char *bname_br, int bn, char *gname_br)
{
 strcpy(this->name, bname_br);
 number =bn;
 strcpy(this->gname_br,gname_br);
}

book_br &book_br::operator=(book_br & temp)

 
 strcpy(name, temp.name);
 number = temp.number;
 strcpy(gname_br, temp.gname_br);
 return *this;
}

book_br::book_br()
{}

int book_br::getnumber()
{
 return number;
}

char *book_br::getname()
{
 return name;
}
char *book_br::getgname()
{
 return gname_br;
}


ostream &operator<<(ostream &os, book_br &a)
{
 os<<a.getname<<a.getnumber<<a.getgname<<endl;
 return os;
}

 

//********************************************************************
class management
{
 private:
  guest *glist[50];  // 회원정보
  book *blist[50];  // 기본책정보
  book_br *blist_br[50];  //빌린책
  int bn, gn, br;
 
 public:
  management();
  void borrow();  //대여 프로그램
  void turn(); //반납 프로그램
  void showguest(); //회원정보 조회
  void showbook(); //책정보 조회
  void addbook(book *bl); //책 db추가
  void addguest(guest *gl); //회원 db 추가
  void addbook_br(book_br *bl);
  void init();
  friend istream &operator>>(istream &is, management &a);
}; 

istream &operator>>(istream &is, management &a)
{
 int i;
 char c;
 is>>i>>c;
 return is;
}

void management::init()
{
 bn=0;
 gn=0;
 br=0;
}

void management::addguest(guest *gl)
{
 glist[gn++] = gl; 
}

void management::addbook(book *bl)
{
 blist[bn++] = bl;
}

void management::addbook_br(book_br *bl)
{
 blist_br[br++] = bl;
}

management::management()
{
 bn = 0;
 gn = 0;
 br=0;
}

void management::borrow()
{
 int choice;
 int bnumber;
 char bname[20];
 char gbirth[20],gname[20];

 [...];
 cout<<"┏━━━━━━━━━━━━━┓"<<endl;
 cout<<"┃                          ┃"<<endl;
 cout<<"┃      책방 관리시스템     ┃"<<endl;
 cout<<"┃         -대여-           ┃"<<endl;
 cout<<"┃                          ┃"<<endl;
 cout<<"┃1. 책제목 입력            ┃"<<endl;
 cout<<"┃2. 회원정보 입력          ┃"<<endl;
 cout<<"┃3. 대    여               ┃"<<endl;
 cout<<"┃4. 메뉴로 돌아가기        ┃"<<endl;
 cout<<"┗━━━━━━━━━━━━━┛"<<endl;
 while(1)
 {
  cout<<"입력하실 번호를 입력하세요 : ";
 
  cin>>choice;
  if(choice==4)
  {
   break;
  }

  switch(choice)
  {
  case 1: 
   {
    aa:
    int n=0;
    cout<<"책 제목을 입력하세요  : ";
    cin>>bname;
    cout<<"몇번째 권을 빌리시겠습니까? : ";
    cin>>bnumber;
    cout<<endl;
    for(int i=0;i<50;i++)
    {
     if(strcmp(bname,blist[i]->getname())==0 && bnumber==blist[i]->getnumber())
     {
      n=n+1;
      strcpy(bname,blist[i]->getname());
     }
    }
    if(n==0)
    {
     cout<<"책에 대한 정보가 없습니다 다시입력해 주세요"<<endl;
     goto aa;

    }
    break;
   }
  case 2:
   {
    bb:
    int k=0;
    cout<<"회원의 이름을 입력하세요 : "; cin>>gname;
    cout<<"회원의 생년월일을 입력하세요 : ";cin>>gbirth;
    cout<<endl<<endl;

    for(int i=0;i<50;i++)
    {
     if(strcmp(gname,glist[i]->getname())==0 && strcmp(gbirth,glist[i]->getbirth())==0)
     {
      k=k+1;
      strcpy(gname,glist[i]->getname());
      strcpy(gbirth,glist[i]->getbirth());
     }
    }
    if(k==0)
    {
     cout<<"회원정보를 잘못입력하였습니다."<<endl<<endl;
     goto bb;
    }
    break;
   }
  case 3:
   {
    for(int i=0;i<50;i++)
    {
     if(strcmp(bname,blist[i]->getname())==0 && bnumber==blist[i]->getnumber())
     {
      for(int j=0;j<50;j++)
      {
       if(strcmp(gname,glist[j]->getname())==0 && strcmp(gbirth,glist[j]->getbirth())==0)
       {
        ofstream fout;
        fout.open("borrow.txt",ios::app);
        fout<<blist[i]->getname()<<"\\t"<<blist[i]->getnumber()<<"\\t"<< glist[j]->getname()<<endl;
        fout.close();

        cout << blist[i]->getname()<<"의 "<<blist[i]->getnumber()<<"번째 권이 ";
        cout<<glist[j]->getname()<<"회원님에게 대여되었습니다."<<endl;
        cout<<endl;
        break;
       }
      }
      break;
     }
    }
    
   }
  case 4:
   break;
  }
 }
}

void management::turn()
{
 char bname[20];
 int bnumber;
 int choice;

 [...];
 cout<<"┏━━━━━━━━━━━━━┓"<<endl;
 cout<<"┃                          ┃"<<endl;
 cout<<"┃      책방 관리시스템     ┃"<<endl;
 cout<<"┃         -반납-           ┃"<<endl;
 cout<<"┃                          ┃"<<endl;
 cout<<"┃                          ┃"<<endl;
 cout<<"┃ 1. 책 제목               ┃"<<endl;
 cout<<"┃ 2. 반납                  ┃"<<endl;
 cout<<"┃ 3. 메뉴로 돌아가기       ┃"<<endl;
 cout<<"┗━━━━━━━━━━━━━┛"<<endl;
 while(1)
 {
  cout<<"입력하실 번호를 입력하세요 : ";
  cin>>choice;
  if(choice==3)
  {
   break;
  }

  switch(choice)
  {
  case 1: 
   {
    aaa:
    int n=0;
    cout<<"반납하실 책 제목을 입력하세요  : ";
    cin>>bname;
    cout<<"몇번째 권을 반납하시겠습니까? : ";
    cin>>bnumber;
    cout<<endl;
    for(int i=0;i<50;i++)
    {
     if(strcmp(bname,blist_br[i]->getname())==0 && bnumber==blist_br[i]->getnumber())
     {
      n=n+1;
      strcpy(bname,blist_br[i]->getname());
      bnumber=blist_br[i]->getnumber();
     }
     
    }
    if(n==0)
    {
     cout<<"책에 대한 정보가 없습니다 다시입력해 주세요"<<endl;
     goto aaa;
    }
    break;  
   }

  case 2: 
   {
    book_br *list_br[50];
    for(int i=0;i<50;i++)
    {
     if(strcmp(bname,blist_br[i]->getname())==0 && bnumber==blist_br[i]->getnumber())
     {
      
      /*
      if(i==0)
      {
       for(i=1;i<50;i++)
       {
        list_br[i-1]=blist_br[i];
       }
      }
      else*/
       for(int j=0;j<i;j++)
       {
        list_br[j]=blist_br[j+1];
       }
       for(j=i+1;j<50;j++)
       {
        list_br[i-1]=blist_br[i];
       }

      }
     for(int k=0;k<50;k++)
     {
       ofstream fout;
       fout.open("borrow.txt");
       fout<<list_br[k]->getname()<<"\\t"<<list_br[k]->getnumber()<<"\\t"<< list_br[k]->getname()<<endl;
       fout.close();
       break;
     }
    }
   }
  
         
      
  case 3: 
   {
    break;
   }
  }
 }
}

void  management::showbook()
{
 [...];
 cout<<"┏━━━━━━━━━━━━━┓"<<endl;
 cout<<"┃                          ┃"<<endl;
 cout<<"┃      책방 관리시스템     ┃"<<endl;
 cout<<"┃         -책정보-         ┃"<<endl;
 cout<<"┃                          ┃"<<endl;
 cout<<"┃  1. 소설책               ┃"<<endl;
 cout<<"┃                          ┃"<<endl;
 cout<<"┃  2. 만화책               ┃"<<endl;
 cout<<"┃                          ┃"<<endl;
 cout<<"┗━━━━━━━━━━━━━┛"<<endl;

}

void  management::showguest()
{
 int a;
 int n;
 char gbirth[20];
 char gname[20]; 
 char gphone[20]; 
 strcpy(gname,"NULL");
 while(1)
 {
  
  [...];
  bbb:
  n=0;
  cout<<"회원의 이름을 입력하세요 : "; cin>>gname;
  cout<<"회원의 생년월일을 입력하세요 : ";cin>>gbirth;
  for(int i=0;i<50;i++)
  {
   if(strcmp(gname,glist[i]->getname())==0 && strcmp(gbirth,glist[i]->getbirth())==0)
   {
    n=n+1;
    strcpy(gname,glist[i]->getname());
    strcpy(gphone,glist[i]->getphone());
    strcpy(gbirth,glist[i]->getbirth());
   }
  }
  if(n==0)
  {
   cout<<endl;
   cout<<"회원정보를 잘못입력하였습니다."<<endl<<endl;
   goto bbb;
  }
  cout<<"┏━━━━━━━━━━━━━┓"<<endl;
  cout<<"┃                          ┃"<<endl;
  cout<<"┃      책방 관리시스템     ┃"<<endl;
  cout<<"┃        -회원정보-        ┃"<<endl;
  cout<<"┃                          ┃"<<endl;
  cout<<"┃";cout<<"회원이름 : ";cout<<gname<<"         ┃"<<endl;
  cout<<"┃";cout<<"회원번호 : ";cout<<gphone<<"  ┃"<<endl;
  cout<<"┃";cout<<"생년월일 : ";cout<<gbirth<<"         ┃"<<endl;
  cout<<"┃                          ┃"<<endl;
  cout<<"┗━━━━━━━━━━━━━┛"<<endl; 
  
  
  cout<<"┏━━━━━━━━━━━━━┓"<<endl;
  cout<<"┃      책방 관리시스템     ┃"<<endl;
  cout<<"┃                          ┃"<<endl;
  cout<<"┃ 1. 다른회원조회          ┃ "<<endl;
  cout<<"┃ 2. 메뉴로 돌아가기       ┃"<<endl;
  cout<<"┗━━━━━━━━━━━━━┛"<<endl;
  cout<<"번호를 입력하시오 : ";
  cin>>a;
  if(a==1)
  {
   [...];
   goto bbb;
  }
  else if(a==2)
   break;

 }
}
//********************************************************************
int main()
{
 management bs;
 
 ifstream fin;
 fin.open("book.txt");

 char bname[20];
 int n;
 for(int i = 0 ; i< 50; i++)
 {
  fin >> bname >> n;
  bs.addbook(new book(bname, n));
 }

 fin.close();


 ifstream afin;
 afin.open("guest.txt");

 char gname[20];
 char gphone[20];
 char gbirth[20];
 for(i=0;i<50;i++)
 {
  afin>>gname>>gphone>>gbirth;
  bs.addguest(new guest(gname,gphone,gbirth));
 }

 afin.close();
 
 while(1)
 {
  [...];
  int choice;
  cout<<"┏━━━━━━━━━━━━━┓"<<endl;
  cout<<"┃                          ┃"<<endl;
  cout<<"┃      책방 관리시스템     ┃"<<endl;
  cout<<"┃                          ┃"<<endl;
  cout<<"┃  1. 대여                 ┃"<<endl;
  cout<<"┃  2. 반납                 ┃"<<endl;
  cout<<"┃  3. 회원정보 조회        ┃"<<endl;
  cout<<"┃  4. 책정보 조회          ┃"<<endl;
  cout<<"┃                          ┃"<<endl;
  cout<<"┗━━━━━━━━━━━━━┛"<<endl;
  cin>>choice;
  
  switch(choice)
  {
  case 1:
   bs.borrow();
   break;

  case 2:
   {
    bs.init();
    ifstream bfin;
    bfin.open("borrow.txt");   

    int n_br;
    char bname_br[20];
    char gname_br[20];
    

    for(i=0;i<50;i++)
    {
     bfin>>bname_br>>n_br>>gname_br;
     bs.addbook_br(new book_br(bname_br, n_br,gname_br));
    }
    
    bfin.close();
    bs.turn();
    break;
   }

  case 3:
   bs.showguest();
   break;
  case 4:
   bs.showbook();
   break;
  }

 }
  return 0;
}

추천 비추천

0

고정닉 0

0

원본 첨부파일 1

댓글 영역

전체 댓글 0
본문 보기

하단 갤러리 리스트 영역

왼쪽 컨텐츠 영역

갤러리 리스트 영역

갤러리 리스트
번호 제목 글쓴이 작성일 조회 추천
설문 뛰어난 운동 신경으로 남자와 싸워도 이길 것 같은 여자 스타는? 운영자 25/11/24 - -
이슈 [디시人터뷰] 충무로가 주목하는 신예, '세계의 주인' 서수빈 운영자 25/11/24 - -
AD 대학생 필수템! What's in my Bag 운영자 25/11/21 - -
293841 갤넥 제어판 분당살람갤로그로 이동합니다. 11.12.12 64 0
293840 갤럭시 넥서스 크네 [2] 분당살람갤로그로 이동합니다. 11.12.12 105 0
293837 자바 100일 전의 날짜 계산하기.. [1] 으악새(121.151) 11.12.12 284 0
293836 4칙연산프로그램 소스좀 짜주실 고수분ㅠㅠ [3] 과제씨밮(112.168) 11.12.12 91 0
293835 네~~~ 넵~~~~ 역시~~~ 싱글황태자갤로그로 이동합니다. 11.12.12 84 0
293833 오라클 9i, 10g, 11g 구조 자료 [2] 딘윈체스터.갤로그로 이동합니다. 11.12.12 82 3
293832 ㅎ룡들 중에 스포2 하는 횽 업나염 [7] 줫밥(122.49) 11.12.12 46 0
293831 프로그래밍 갤~ 지식인 소환~~~ 레알최배달급 해커 있음??? [18] 싱글황태자갤로그로 이동합니다. 11.12.12 228 0
293829 메모리 스캔.. [2] 솔라리스와리눅스갤로그로 이동합니다. 11.12.12 86 0
293828 진짜 미치겠음 이거뭐임? [2] SlayeR갤로그로 이동합니다. 11.12.12 105 0
293826 asp.net 개발자님 질문좀 [1] 123(125.7) 11.12.12 64 0
293823 옛날에 해커대학이라는 곳도 있었는데 ㅋ [3] 초딩6(59.13) 11.12.12 130 0
293822 형들 아이티뱅크있잖아요 [6] aaaa(121.160) 11.12.12 258 0
293820 니들 이거 풀수 있어? 특정값은 무시하고 최대값 구하기.. [31] ㅇㅇ(125.132) 11.12.12 234 0
293819 수학 잘하는 횽들 좀 도와줘 [4] 땡칠도사갤로그로 이동합니다. 11.12.12 140 0
293817 아 소개팅녀가 계속 생각난다.. [5] 므해?갤로그로 이동합니다. 11.12.12 164 0
293814 씨쁠쁠 과제 해준다. [3] ㅇㅇ(175.113) 11.12.12 114 0
293812 수학잘하는 형들도와줘 [17] 싴보이갤로그로 이동합니다. 11.12.12 156 0
293811 x됐다.. [16] McHello갤로그로 이동합니다. 11.12.12 205 0
293809 대학교컴퓨터소포트웨어과 [5] 이건산전갤로그로 이동합니다. 11.12.12 128 0
293808 아니 학원좀 춫첯첯 [11] 줫밥(122.49) 11.12.12 112 0
293807 웹플밍 고수 형들아 tableIndex 탭키 눌러서 칸 이동하는거 질문 봉호랑◕ܫ◕갤로그로 이동합니다. 11.12.12 64 0
293805 내가 하는게 맞는걸까? 회사에서 시킨일을 하는데 [3] Cafela(112.223) 11.12.12 145 0
293804 약므프랑 mlb... 그리고 같은 반 아이들^^ [2] -쏭-갤로그로 이동합니다. 11.12.12 74 0
293803 미국등에서 나오는 각종 아티클이나 뉴스그룹등에서 글을 보다가 프겔을 오면 곽노현차장(59.13) 11.12.12 87 0
293801 해일리횽 아직있음요?! [2] Dawnwalkre갤로그로 이동합니다. 11.12.12 84 0
293798 값을 넣는데도 화면에 안나오는건 어떤경우인가요 ? [4] 으헝(211.246) 11.12.12 76 0
293797 여기서 씨뿔 과제 질문하면 까이나요? [9] dd(202.30) 11.12.12 180 0
293796 씨언어 일학년생인데 딸만한 자격증좀추천드려용 [3] 미니쫑갤로그로 이동합니다. 11.12.12 142 0
293794 야 mlb랑 약므브랑 다른놈임? [4] 응잉앙앵(211.48) 11.12.12 62 0
293792 횽들 자바 학원좀 추천해줘 줫밥(122.49) 11.12.12 177 0
293791 흐규흐규 방배로 또 팔려오다니 [3] 쿄스케갤로그로 이동합니다. 11.12.12 94 0
293789 예전 프갤 멤버들은 요새 통 안 보이네.. [6] 꽃뉴비(112.214) 11.12.12 133 0
293787 점심시간인데 당직이야 [2] 해일리갤로그로 이동합니다. 11.12.12 75 0
293782 힘든 하루였다. [6] Gromit갤로그로 이동합니다. 11.12.12 111 0
293779 내가 회사 사장되면 졸릴때 자라고 할꺼다.. [3] 므해?갤로그로 이동합니다. 11.12.12 138 0
293778 횽들은 연필 잡을때 올바르게 잡구 있음? [13] 캐한석봉닭(115.92) 11.12.12 163 0
293776 입력값은 넣는데 왜 화면 출력이 안될까 ㅡ_ㅡ [1] 으헝(211.246) 11.12.12 48 0
293775 안녕 [3] 어슐러르귄갤로그로 이동합니다. 11.12.12 66 0
293774 안드로이드 게임 개발할려는 형들에게 추천함 [4] 싴보이갤로그로 이동합니다. 11.12.12 168 0
293773 자바로 만든 틀린그림찾기 게임 소스 삽니당 [1] 흐규흐규(220.68) 11.12.12 97 0
293772 공군 인트라넷 사이트들은 회원의 개인정보를 무제한으로 액세스 가능한듯 u2em갤로그로 이동합니다. 11.12.12 97 0
293771 시뱅 내 20분 돌려놔. [4] -쏭-갤로그로 이동합니다. 11.12.12 73 0
293770 내년에 컴공 4학년인데 이제 정보처리기사 준비하려고하는데 조언좀. [4] 크리스탈스톰(118.217) 11.12.12 137 0
293769 월요일 로딩 중 [1] ㅁㄴㄻㄹ갤로그로 이동합니다. 11.12.12 44 0
293766 벌써이번학기의 첫강의의 종강 [1] 三didas갤로그로 이동합니다. 11.12.12 47 0
293765 개발언어에 따른.. 직종의 차이랄까.. [10] 수상한김토끼갤로그로 이동합니다. 11.12.12 248 0
293763 함수가 돌다가 종료시킬려고 하는데 [2] ㅋㅋ(121.169) 11.12.12 60 0
293762 프로그래밍학원다닐라하는대 이건산전갤로그로 이동합니다. 11.12.12 82 0
293761 성님들 이제 1학년 끝나고 막 C언어 끝나가는 늅늅이인데 [1] 약므프(222.251) 11.12.12 89 0
갤러리 내부 검색
제목+내용게시물 정렬 옵션

오른쪽 컨텐츠 영역

실시간 베스트

1/8

디시미디어

디시이슈

1/2