일반글
2016.12.14 13:15

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

조회 수 1652 추천 수 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
    출석대체시험을 잘 못본 과목이 있어서 F만 안 뜨길 빌었는데, 생각보다 점수가 잘 나왔어요.
    찍기에서 대박이 터졌습니다. -0-
  • ?
    태라 2016.12.14 15:20
    오~~부러운 신의 손. 저는 찍기에 똥손이라....
  • ?
    objc 2016.12.14 15:22
    다음에는 대박 터질 겁니다! (/*_*)/
    이제 과제물 점수만 기다리고 있어요~

컴퓨터과학과

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

List of Articles
번호 분류 제목 글쓴이 날짜 조회 수
공지 시험정보 방송통신대학교 - 컴퓨터과학과 학우/회원들만 사용하도록 만들어진 게시판입니다. LeinuJ 14.02.10 7125
인기글 정보 [신/편입생을 위한] 교과목일람표, 선후수교과목, 권장수강교과목 111 updatefile 이은석 16.08.22 2830
인기글 시험정보 [컴파일러] 초보자를 위한 C,C++컴파일러 추천 -이은석님이 작성한 글입니다. 공용자료실에서 펌 2 안내원 14.03.25 2625
인기글 질문 직장인이 다니면서 졸업할 수 있을까요? 4 무비조아 14.06.20 2613
42 일반글 가입인사 manggo123 19.12.01 92
41 일반글 3학년 1학기 편입한 사람입니다 겨울창 18.02.26 365
40 일반글 안녕하세요. 학우여러분. 저희 회사에서 웹 퍼블리싱분을 모십니다. 컴퓨터가좋아요 17.11.02 277
39 일반글 시뮬레이션 과목 들으시거나 교재 있으신분들 도움이 필요합니다. 1 file 201434 17.10.10 199
38 일반글 소프트웨어 경진대회 제출했어요. 4 objc 17.08.14 313
37 일반글 안녕하세요 이번에 3학년 2학기로 편입을 하게 되었습니다. 2 방통통방통 17.08.09 210
36 일반글 반갑습니다. 1 silverleaf 17.08.09 131
35 일반글 오늘 시험 문제가 뭐였죠.. 3 ViTZrO 17.04.16 316
34 일반글 HTML/XML 중간고사 기출문제는 답이 없군요 ㅜ_ㅜ 1 붕어빵아찌 17.04.14 214
33 일반글 혹시 머신러닝에 관심 있는 분 계신가요? 4 군도 17.01.04 528
» 일반글 제가 제출한 C++ 과제 요약 4 file objc 16.12.14 1652
31 일반글 안녕하세요 연초에 3학년 1학기로 편입했습니다. 10 objc 16.12.12 431
30 일반글 컴퓨터과학과 선배님들 궁금한 것이 있습니다. 5 윤태건 16.12.10 801
29 일반글 다들 공부잘되시나요? 11 열정편입생 16.09.10 502
28 일반글 완전 벅찹니다!!!!! 예비 방송인입니다 ㅎㅎ 1 다0 16.06.30 314
27 일반글 출석수업 과제물 질문하나 드립니다. 1 미운오리발 16.05.24 338
26 일반글 안녕하세요~ 서울지역 컴퓨터과학과 1학년 신입생입니다. 1 김성현 16.04.12 210
25 일반글 안녕하세요~^^ 4학년 김병관 입니다. 1 4학년김병관 15.10.10 201
24 일반글 낼 시험이네요ㅠㅠ 수리 15.06.20 181
23 일반글 학교내에서 네트워크관리사 단체상설 신청하는 건 없나요 뀰로로로로로로로 15.04.21 347
Board Pagination Prev 1 2 3 Next
/ 3
서버에 요청 중입니다. 잠시만 기다려 주십시오...