| 이전 주제 보기 :: 다음 주제 보기 |
| 글쓴이 |
메시지 |
이찬호
가입: 2009년 9월 19일 올린 글: 18
|
올려짐: 2009년10월7일 13:38 주제: 이번 숙제 1번 할 때 저번 숙제에 이용했던 maze-check 를 이용하려고 하는데요 |
|
|
저번 숙제에선 maze-check 내부 함수들은 모두 주어지기 때문에 maze-check 만 구현해서 냈는데
이번에 만약에 maze-check 를 쓰려면 내부함수를 제가 따로 써줘야하나요?
써줘야 한다면, 저희끼리 따로 테스트용으로 만들어 둔게 있는데 이걸 이용해도 되나요?
(즉, 그러니까 모두가 공유하는 코드를 이용해도 되는지) |
|
| 위로 |
|
 |
윤용호
가입: 2008년 9월 23일 올린 글: 257
|
올려짐: 2009년10월7일 17:01 주제: re |
|
|
maze-check 함수의 타입은 maze * room * room -> bool 입니다.
우리가 이번 1번 숙제에서 받은 maze 관련 함수들의 타입은 아래와 같습니다.
mazeGen : int * int -> maze
init-maze : int * int -> maze
open-d : int * int * maze -> maze
maze-pp : maze -> void
1번 숙제에서 받은 함수들은 미로를 '좌표'로 표현하고
maze-check 함수는 미로를 room들의 집합으로 이해합니다.
우리가 받은 스펙에 int * int -> room 함수가 주어지지 않았기 때문에
요약의 경계를 지키면서 기존의 maze-check 함수를 이번 숙제에 사용할 방법이 없습니다.
또한 int * int로 문을 여는 함수는 있지만
int * int로 문이 열려있는지 확인하는 함수 또한 주어지지 않았기 때문에
1번에서 주어진 함수들로 길 찾기 함수도 만들 수 없습니다.
결론 : 이번 숙제에서 maze-check 함수를 이용해 미로를 생성할 방법은 전혀 없습니다.
////////////////
생각해보니 두 maze의 타입을 maze1, maze2 이런것처럼 따로 치고
open 할때마다 리턴할 maze1도 수정하고 maze-check 구현용 maze2도 수정해가면서 쓰면 가능하긴 하겠군요. |
|
| 위로 |
|
 |
장수원
가입: 2008년 9월 26일 올린 글: 167
|
올려짐: 2009년10월8일 13:08 주제: Re: 이번 숙제 1번 할 때 저번 숙제에 이용했던 maze-check 를 이용하려고 하는데요 |
|
|
| 이찬호 씀: | 저번 숙제에선 maze-check 내부 함수들은 모두 주어지기 때문에 maze-check 만 구현해서 냈는데
이번에 만약에 maze-check 를 쓰려면 내부함수를 제가 따로 써줘야하나요?
|
윤용호 수강생의 논변이 정확해 보입니다. 그리고 지난 숙제와 이번 숙제는 완전히 "독립"되어 있습니다. 따라서 만약에라도 maze-check를 사용하신다면 내부 함수를 따로 다 써주셔야 합니다(단, 윤용호 수강생 말씀대로 지난 숙제의 maze 타입과 이번 숙제의 maze 타입이 같다는 보장은 없습니다)
| 인용: |
(즉, 그러니까 모두가 공유하는 코드를 이용해도 되는지) |
숙제로 제출하는 코드의 공유는 금지하겠습니다. |
|
| 위로 |
|
 |
|