SNS로그인
        
회원:
6,524
새 글:
0
등록일:
2014.02.04
일반글
2016.12.14 13:15

제가 제출한 C++ 과제 요약

조회 수 645 추천 수 1 댓글 4
Atachment
첨부 '1'

덜덜 떨던 과목 하나가 생각보다 점수가 잘 나와서 기쁜 마음으로 글 올립니다. :)

 

 

클래스는 2개 작성했습니다.

 

 

1. 기본 단위가 될 Restaurant 클래스 작성

 

이 클래스에 담을 정보는 각 점수별 개수 저장을 위한 int scoreCount[5],

그리고 가게의 이름을 저장할 std::string name,

 

이렇게 두가지입니다.

 

그리고 이 클래스의 핵심 기능으로는 

점수를 받아서 개수를 +1 해줄 int addScore(int score);

가게의 평균 점수를 알려줄 float score(void);

가게의 정보를 화면에 출력해줄 void printInfo(void);

 

이렇게 작성했습니다.

 

 

2. 레스토랑 클래스들을 관리할 RestaurantManager 클래스 작성

 

이 클래스에 담을 정보는 레스토랑들의 목록인 std::vector<Restaurant> restaurantList 하나입니다.

 

그리고 핵심 기능으로는 새로운 레스토랑을 추가할 수 있는 void addRestaurant(const char* name, int score=0);

그리고 기존 레스토랑에 점수를 추가할 수 있는 void addRestaurantScore(const char* name, int score);

특정 점수 이상의 가게를 랜덤으로 하나 출력해주는 void pickOneRestaurant(float score);

입출력을 위해 가게 이름 목록을 들고 오는 std::vector<std::string> restaurantNameList(void);

 

이렇게 네가지입니다.

 

 

 

 

문제풀이 과정에서 가게 이름의 중복은 고려하지 않았습니다. 중복이 없다는 전제 하에 이름으로만 찾아서 처리한 거죠. -.-;

포인터 사용은 거의 없이 작성했습니다. 실제 코드는 여기에 작성한 것과 조금 다릅니다. 생성자부터 해서 메소드가 더 많이 있습니다.

 

 

#1 프로그램에서 RestaurantManager 의 인스턴스를 하나 만들어서 씁니다. manager 라 지칭하겠습니다.

#2 가게를 추가할 필요가 있을 경우 manager.addRestaurant(이름, 점수)를 호출합니다. 점수 안 넣으면 디폴트로 0이 들어갑니다.

#3 가게 목록을 보여줄 때는 manager.restaurantNameList() 를 호출해서 데이터를 들고 와 화면에 보여줍니다.

#4 선택한 가게의 점수를 추가할 때는 manager.addRestaurantScore(이름, 점수)를 호출합니다.

#5 무작위로 가게를 하나 추천할 때는 manager.pickOneRestaurant(0)을 호출합니다. 0점 이상의 가게니까 모든 가게 중에서 하나를 고릅니다.

#6 평점 3점 이상의 우수 가게를 추천할 때는 manager.pickOneRestaurant(3)을 호출합니다. 

 

 

std::vector 를 사용해서 Restaurant 들을 들고 있는 이유는 std::vector 는 push_back 을 통해 새로운 가게를 추가하면 알아서 저장공간을 늘려주기 때문입니다. 마찬가지로 std::string 으로 가게 이름을 저장하는 것도 길이가 길든 짧든 자동으로 맞추어 주기 때문입니다.

 

 

과제가 뭔지 잊으셨을까 해서 이미지 첨부합니다.

 

 

cplusplus.png

 



Comment '4'
  • ?
    열정편입생 2016.12.14 14:06

    로그인을 하셔야 댓글을 볼 수 있습니다

  • ?
    objc 2016.12.14 15:19

    로그인을 하셔야 댓글을 볼 수 있습니다

  • ?
    태라 2016.12.14 15:20

    로그인을 하셔야 댓글을 볼 수 있습니다

  • ?
    objc 2016.12.14 15:22

    로그인을 하셔야 댓글을 볼 수 있습니다


쓰기

컴퓨터과학과

한국방송통신대학교 컴퓨터과학과 신입생/재학생/교수님등 관련된 분들을 위한 공개 게시판입니다.

List of Articles
번호 분류 제목 글쓴이 날짜 조회 수
공지 시험정보 방송통신대학교 - 컴퓨터과학과 학우/회원들만 사용하도록 만들어진 게시판입니다. LeinuJ 14.02.10 6978
164 일반글 안녕하세요 이번에 3학년 2학기로 편입을 하게 되었습니다. 2 방통통방통 17.08.09 139
163 일반글 반갑습니다. 1 silverleaf 17.08.09 62
162 정보 포렌식 자료 2 file 이한솔 17.07.27 132
161 질문 HTML 프로그래밍 8강 동작안됨질문 3 file 열정편입생 17.05.03 153
160 2학년 HTML프로그래밍 중간고사 작성한 자료 2 file 열정편입생 17.04.18 210
159 1학년 안녕하세요 어제 처음 사진의 이해 시험을 봣네요 1 노력해야되 17.04.17 180
158 일반글 오늘 시험 문제가 뭐였죠.. 3 ViTZrO 17.04.16 223
157 시험정보 HTML/XML (2016,2015) 중간고사 기출문제 정답 공유 3 file 붕어빵아찌 17.04.14 386
156 일반글 HTML/XML 중간고사 기출문제는 답이 없군요 ㅜ_ㅜ 1 붕어빵아찌 17.04.14 125
155 1학년 인천지역대학 스터디모임 있나요? 1 wlstjd620 17.03.04 170
154 질문 교재는따로사야하나요? 5 한윤구 17.03.03 242
153 3학년 오늘 ot 다들가시나요?? 1 유서기 17.02.25 249
152 질문 1~3학년 과목중 점수 공부하면 학점 잘 받을 수 있는 과목 질문 열정편입생 17.01.17 361
151 일반글 혹시 머신러닝에 관심 있는 분 계신가요? 4 군도 17.01.04 387
150 정보 기출문제 반복 패턴 과목 질문 1 열정편입생 17.01.02 251
» 일반글 제가 제출한 C++ 과제 요약 4 file objc 16.12.14 645
148 일반글 안녕하세요 연초에 3학년 1학기로 편입했습니다. 10 objc 16.12.12 314
147 질문 혹시 ccna 취득하신분 계신가요? 2 열정편입생 16.12.12 291
146 일반글 컴퓨터과학과 선배님들 궁금한 것이 있습니다. 5 윤태건 16.12.10 507
145 시험정보 컴퓨터과학과 2학년 대체/기말시험 2013-2015년 기출문제 모음집 12 file 원격대학교육의이해 16.11.21 609
144 2학년 [HTML/XML] 기말대비 요점정리 2 file 이은석 16.11.14 355
143 시험정보 C++ 출석수업대체시험 과제물 공부법 좀 알려주세요 11 Park-J 16.10.25 636
142 질문 컴파일러구성 과목 어떻게 접근을해야되나요? 2 열정편입생 16.10.09 249
141 1학년 대학을 처음 접하는데 과제물이 참 막막하네요ㅠ 5 Park-J 16.09.20 484
140 일반글 다들 공부잘되시나요? 11 열정편입생 16.09.10 379
Board Pagination Prev 1 2 3 4 5 6 7 8 Next
/ 8
서버에 요청 중입니다. 잠시만 기다려 주십시오...