[C#] 7.1 시나리오

프로젝트 명: 캠퍼스 생활

캠퍼스 생활은 콘솔 기반의 응용 프로그램이다. 프로그램은 초기화, 사용자 명령에 따른 동작 순으로 수행된다.

초기화에서는 캠퍼스 생성과 장소 생성, 학생 생성이 진행된다. 장소 생성에서는 강의실과 도서관, 기숙사가 생성된다. 학생 생성에서는 사용자가 원하는 수만큼 학생들이 생성된다. 학생 종류에는 도전적인 학생, 보수적인 학생, 수동적인 학생이 있으며 사용자가 원하는 유형을 선택한다. 그리고 학생은 사용자에 의해 이름이 결정이 되며 학번은 차례대로 부여되며 생성된 학생들은 캠퍼스로 이동한다.

사용자 명령에 따른 동작은 종료 메뉴를 선택하기 전까지 선택한 메뉴를 수행하는 것을 반복한다. 메뉴에는 학생 이동, 초점 이동, 전체 정보 보기가 있다. 학생 이동은 캠퍼스에 있는 학생 중에 사용자 선택으로 강의실이나 도서관, 기숙사로 이동시킬 수 있다. 초점 이동도 사용자 선택으로 강의실, 도서관, 기숙사로 이동시킬 수 있다. 전체 정보 보기를 선택하면 캠퍼스에 있는 학생의 정보와 각 장소의 정보가 콘솔 화면에 출력된다.

각 장소로 초점이 이동되면 사용자가 종료 메뉴를 선택하기 전까지 각 장소의 선택한 메뉴를 수행하는 것을 반복한다. 그리고 각 장소의 메뉴에서 종료를 선택하면 해당 장소에서 사용자가 원하는 학생들을 캠퍼스로 이동시킬 수 있다.

강의실에서는 판서 강의, 발표 수업을 할 수 있다. 판서 강의를 선택하면 강의실에 있는 모든 학생이 강의에 집중한다. 판서 강의가 진행되면 도전적인 학생은 질문한다. 발표 수업을 선택하면 사용자가 선택한 학생이 발표하고 나머지 학생은 자유 토론을 수행한다. 발표 수업이 진행되면 수동적인 학생은 꾸벅꾸벅 졸면서 자유 토론을 수행한다.

도서관에서는 세미나 진행과 책 읽기를 할 수 있다. 세미나 진행을 선택하면 도서관에 있는 모든 학생이 세미나에 집중한다. 책 읽기를 선택하면 사용자가 선택한 학생이 책을 읽는다.

기숙사에서는 TV 시청과 잠자기를 할 수 있다. TV 시청을 선택하면 사용자가 선택한 학생이 TV 시청한다. 잠자기를 선택하면 기숙사에 있는 모든 학생은 잠을 잔다. 수동적인 학생은 잠을 자면서 잠꼬대를 한다.

학생은 학번과 이름 외에 iq(지력), hp(체력), cp(대화능력)가 있다. iq는 초기값이 80이며 최소 60, 최대 200이다. hp는 초기값이 50이며 최소 0, 최대 100이다. cp는 초기값이 0이며 최소 0, 최대 100이다.

학생은 판서 강의를 들으면 iq가 5올라가고 hp가 4내려가고 cp가 1내려간다.

학생이 발표하면 cp가 3올라가고 hp가 2내려간다.

학생은 세미나를 들으면 iq가 5올라가고 hp가 4내려간다.

학생이 책을 읽으면 iq 2올라가고 cp가 2올라간다. 도전적인 학생은 책을 읽으면 추가로 cp가 1올라간다.

학생이 TV를 시청하면 hp가 2내려간다. 보수적인 학생은 추가로 cp가 1내려간다.

잠을 자면 hp가 2올라간다.

도전적인 학생은 질문하면 iq와 cp가 1올라간다.

수동적인 학생이 잠꼬대하면 hp가 1 내려가고 iq가 1올라간다.