| 이전 주제 보기 :: 다음 주제 보기 |
| 글쓴이 |
메시지 |
김기웅
가입: 2014년 9월 16일 올린 글: 5
|
올려짐: 2014년9월25일 22:46 주제: hw 2-1-selfgrader 질문드립니다 |
|
|
testtree0 : (node (list (leaf 1))))
testtree1 : (node (list testtree0 (leaf 2)))
testtree2 : (node (list testtree0 testtree1 testtree0 (leaf 6))))
에서
(nth-child (nth-child testtree2 1) 0)의
(nth-child testtree2 1)는 testtree1이므로
(nth-child (nth-child testtree2 1) 0)는 (nth-child testtree1 0)입니다.
(nth-child testtree1 0)은 testtree0이므로
아래에서 2번째 예시인
(sgoutput (lambda () (equal? #f (is-leaf? (nth-child (nth-child testtree2 1) 0))) )) 는
(sgoutput (lambda () (equal? #f (is-leaf? testtree0)) )) 가 됩니다.
그런데 testtree0은 tree이므로 위의 예제는 #t여야 답이 될 것이라고 생각됩니다.
hw 2-1-selfgrader의 코드상의 문제인지 아님 저의 실수인지 여쭤보고싶습니다. |
|
| 위로 |
|
 |
손승현_
가입: 2014년 9월 3일 올린 글: 10
|
올려짐: 2014년9월25일 22:59 주제: |
|
|
testtree0 는 tree이긴한데 leaf가 아니니까 #f 가 나오는게 맞지않나요?
root노드 하나랑 거기 매달린 leaf 하나인 트리인거같네요 |
|
| 위로 |
|
 |
김기웅
가입: 2014년 9월 16일 올린 글: 5
|
올려짐: 2014년9월25일 23:08 주제: |
|
|
음... 제가 실수로 is-leaf? 함수를 inductive case랑 base case를 모두 #t로 리턴하는
소스를 작성한듯하네요. 답변감사합니다 ㅎ |
|
| 위로 |
|
 |
|