본문 바로가기

국비

10.18 국비학원 10일차 (클래스 연습문제)

  • 문제1

       <펜(Pen) 클래스>

         펜 클래스는 다음의 속성 및 기능을 가진다.
              속성 :  색상, 볼 크기, 잉크 타입
              기능 : 심교체, 심나오게하기, 심들어가게하기
      
         - 펜은 한번 구입을 하면 색상, 볼 크기, 잉크 타입이 고정되어 있어 별도로 변경할 수 없다.
         - 펜은 어떠한 종류의 심을 사용하느냐에 따라 색상, 잉크 타입을 변경할 수 있다.
         - 펜의 심을 교체 한다고 해도 볼 크기는 변경할 수 없다.
         - 현재 사용하고 있는 펜의 색상, 볼 크기, 잉크 타입을 확인 할 수 있어야한다.

 

  • 문제2

       <과목(Subject) 클래스>

         과목 클래스는 다음의 속성 및 기능을 가진다.
                 속성 : 과목명, 점수, 등급
                 기능 : 점수등록, 과목확인, 점수확인, 등급확인
     
         - 과목명은 한 번 정해지면 변경할 수 없어야 한다.
         - 점수는 언제든 변경할 수 있으나 0 ~ 100 사이의 값만 저장해야 한다.
         - 등급은 점수에 의해 결정되며, A ~ F 등급까지 부여한다.(등급을 별도로 설정하는 것은 금지)
         - 과목 객체의 속성값을 확인하는 것은 허용한다.

 

  • 문제3

       <로또(Lotto) 클래스>

         로또 클래스는 다음의 속성 및 기능을 가진다.
                속성 : 회차, 로또번호(배열), 보너스
                기능 : 번호생성, 번호확인

         - 회차는 한 번 정해지면 변경 할 수 없어야 한다.
         - 로또 번호는 1 ~ 46 사이의 번호 6개 + 보너스 번호가 생성되어야 한다.
         - 로또 번호는 "번호생성" 기능을 통해서만 생성되어야 한다.
         - 모든 번호는 중복이 있어선 안된다.
         - "번호확인" 기능을 통해 확인할 수 있는 번호는 보너스 까지이며, 문자열로 반환해야 한다.

 

  • 문제4 

       <시계 클래스>

멤버 변수 시, 분, 초, 오전/오후
멤버 메서드 시간출력, 1초전, 1초후, 1분전, 1분후, 1시간전, 1시간후

      - 시계 클래스가 생성될 때 시, 분,  정보를 받아 초기화되어야 한다.

      - 시간을 출력 할 때 12:30:30 형식으로 출력 되어야 한다.

      - 시간은 전/후 로 이동할 수 있다. 12시 30분 30초 에서 1시간 전으로 이동하면 11시 30분 30초가 된다.

      - 시, 분, 초에 대한 직접 변경은 불허 한다.

 

  • 문제5

       <스케쥴 클래스>

멤버 변수 년, 월, 일, 종일구분, 시작시간, 종료시간
멤버 메서드 종일로변경, 시간으로변경, 일자변경, 스케쥴확인

      - 스케쥴을 생성하기 위한 클래스로 년, 월,  정보를 받아 초기화해야 한다.

      - 초기화 될 때 종일구분  false 이어야 하며, 시작시간, 종료시간 은 기본 09:00:00 ~ 10:00:00 으로 설정 한다.

      - 종일로 변경 하게 되면 시작시간  종료시간  00:00:00 ~ 23:59:59 로 설정 하고 종일구분  true 가 된다.

      - 시간으로 변경하게 되면 변경된 시간으로 시작시간  종료시간 으로 설정하고 종일구분  false 가 돼야 한다.

      - 일자 변경이 되면 지정한 일자로 년, 월,  을 설정한다.

      - 스케쥴확인 은 현재 설정된 정보를 확인할 수 있도록 출력하기 위한 메서드이다.

 

 

#문제 풀이 깃허브 확인