Page 183 고등학교 프로그래밍 교과서
P. 183
3
STEP 상세 설계
★ 개념 설계에서 작성한 모듈과 모듈간의 관계를 이용하여 모듈의 기능을
구현할 함수의 프로토 타입을 정의하고 프로그램 실행 시 나타날 화면을
설계한다. 모둠별로 다양한 해결 방법을 찾고, 실행할 수 있도록 알고리즘
을 작성해 보자.
C 언어를 이용한 구조화 프로그램에서는 작업별로 모듈화(구조
화) 한다.
개념 설계에서 만든 모듈들 각각을 상세 설계 단계에서는 함수의
프로토 타입으로 선언하고 그 내용을 알고리즘 형태로 기술한다.
상세 설계 단계에서는 그림과 같이 실행 단계에서 나타날 입력 화
면과 출력 형태를 구체적으로 설계한다.
void gtBalls(int tBalls[ ])
• srand 함수 이용
• 0~9 사이 정수 3개 생성
void wRecord
(char name[ ], int tries) main 함수 void wRecord( )
• wRecord.txt 파일을 추가 모드 • 초기 화면 출력 • Record.txt 파일을 읽기로 열기
로 열기 • switch문 사용 게임하기와 기록보기 • While문을 이용하여 fscanf 함
• 플레이어 이름(name)과 시도 • 게임 기록은 구조체(이름, 횟수)를 이용하기 수로 파일 내용을 읽고 printf 함
횟수(tries)를 fprintf를 이용하여 • gtBalls, htiBalls, wRecord, rRecord 함수 호출 수로 출력하기
기록하기 하기
int hitBalls(int tBalls[ ])
• 숫자 3개를 입력받아 배열에 넣기
• 입력받은 숫자와 생성된 숫자 tBalls와 비교하기
• 위치, 값 모두 맞으면 스트라이크, 위치가 틀리
면 볼시도 횟수를 반환하기( return tries;)
상세 설계 다이어그램의
개념 설계에서 작성한 블록 다이어그램을 구체화하고 각 모듈에 대응하는 함수의 프
로토 타입을 선언한다.
프로토 타입 선언부터는 팀원들이 업무 분담을 하여야 한다. 예를 들어, 팀원이 5명
이면 1명은 메인 함수를, 다른 한 명은 숫자를 맞추는 주요 함수인 hitBalls 함수를
담당하는 형태로 업무를 분담한다.
상세 설계서를 이용하여 각 함수의 기능을 유사 코드 형태로 작성하여 기록한다.
도전! 프로젝트 181
(책)2015프로그래밍-교과서3차심의본 본문.indb 181 2017-09-05 오후 4:16:43