|
|
이전 주제 보기 :: 다음 주제 보기 |
글쓴이 |
메시지 |
최재승
가입: 2012년 9월 10일 올린 글: 211
|
올려짐: 2015년10월19일 0:06 주제: 숙제 4 테스트케이스 (10/20 최종) |
|
|
안녕하세요, 프로그래밍 언어 조교입니다
과제 4의 테스트케이스들을 제공합니다. 채점에 사용될 테스트 케이스도 제공해 드리는 예제들의 수준을 크게 벗어나지 않을 것입니다. 다만 제공된 예제들을 약간 응용한 케이스는 채점에 사용될 수 있습니다.
본 글에 댓글로 수강생 여러분들끼리 추가적인 테스트케이스를 공유하는 것도 좋을 것 같습니다.
숙제 문서에 주어진 타입 및 getReady 함수를 정의하시고 그 밑에 아래의 코드를 복사해서 붙여넣으시면 됩니다. 모두 true를 출력하면 정답입니다.
코드: | let check_exception m =
try (let _ = getReady m in false) with IMPOSSIBLE -> true
let check_answer m ans =
let res = List.sort Pervasives.compare (getReady m) in
let ans = List.sort Pervasives.compare ans in
res = ans
let m1 = Branch(End(NameBox"x"),Branch(End(NameBox"y"),Branch(End(NameBox"z"),End(StarBox))))
let ans1 = [Bar; Node (Bar, Bar)]
let _ = print_endline (string_of_bool (check_answer m1 ans1))
let m2 = Guide("x",Guide("y",Branch(End(NameBox"x"),Branch(End(NameBox"y"),End(NameBox"x")))))
let ans2 = [Node (Bar, Bar); Node (Node (Bar, Bar), Bar)]
let _ = print_endline (string_of_bool (check_answer m2 ans2))
let m3 = Branch (Branch (Branch (Guide ("2", Guide ("1", Branch (End (NameBox "1"), End (NameBox "2")))), Guide ("3", End (NameBox "3")) ), Guide ("4", End (NameBox "4"))), End (NameBox "5"))
let ans3 = [Bar; Node (Bar, Bar); Node (Node (Bar, Bar), Node (Bar, Bar))]
let _ = print_endline (string_of_bool (check_answer m3 ans3))
let m4 = Branch(Branch(Branch(Branch(End (NameBox "a"), End(NameBox "b")), End(NameBox "c")),Branch(Branch(End (NameBox "d"), End(NameBox "e")), End(NameBox "f"))),Branch(End (NameBox "f"), End StarBox))
let ans4 = [Bar; Node (Bar, Bar); Node (Bar, Node (Node (Bar, Bar), Bar)); Node (Bar, Node (Bar, Node (Bar, Node (Bar, Bar)))) ]
let _ = print_endline (string_of_bool (check_answer m4 ans4))
let m5 = Branch (Guide ("x", Branch (End (NameBox "x"), End (NameBox "x"))), End StarBox)
let _ = print_endline (string_of_bool (check_exception m5)) |
테스트케이스에 이상한 점이 있으면 알려주세요.
조교 드림
최재승 가 2015년10월20일 11:07에 수정함, 총 3 번 수정됨 |
|
위로 |
|
|
박해규
가입: 2014년 9월 17일 올린 글: 9
|
올려짐: 2015년10월19일 18:15 주제: . |
|
|
Guide("x", e1)에서, e1 안에는 반드시 x 가 존재한다고 가정하신다 하셨는데, m3에서 Guide ("6", End (NameBox "3")) 이 부분은 어떻게 되는 건가요? "3"을 "6"으로 바꿔도 같은 결과가 출력되나요? |
|
위로 |
|
|
최재승
가입: 2012년 9월 10일 올린 글: 211
|
올려짐: 2015년10월20일 0:42 주제: |
|
|
좋은 지적 감사합니다. 해당 테스트케이스를 수정하였습니다.
Guide ("6", End (NameBox "3")) 를 End (NameBox "3") 로 수정하였으며, 정답은 그대로입니다.
죄송합니다, m3 를 다시 수정하였습니다. 업데이트된 테스트케이스를 사용해 주세요.
조교 드림 |
|
위로 |
|
|
|
|
새로운 주제를 올릴 수 없습니다 답글을 올릴 수 없습니다 주제를 수정할 수 없습니다 올린 글을 삭제할 수 없습니다 투표를 할 수 없습니다
|
Powered by phpBB 2.0.21-7 (Debian) © 2001, 2005 phpBB Group Translated by kss & drssay
|