황창호
가입: 2006년 4월 17일 올린 글: 12
|
올려짐: 2006년6월4일 18:19 주제: 숙제 5와 관련해서 질문 드립니다. |
|
|
이번 숙제는 지난 숙제와 비교도 안될만큼 어렵고 시간도 많이 걸리는 거 같애요. 저만 그런건지 모르겠지만.
하나씩 차례대로 질문 드립니다.
1번.
이 문제는 테스트 케이스가 없어서 좀 난감한데요. 제가 아래와 같이 테스트 케이스를 만들고 그에 대한 답을 올렸는데 맞는지 한 번 봐주시면 감사하겠습니다.
val x = exeval SEQUENCE ( ASSIGN (ADD (VAR, NUM (1))) , (ASSIGN (ADD (VAR, NUM (1)))) ) 0
=> [2]
val y = exeval REPEAT ( ASSIGN (ADD (VAR, NUM (-1))) ) (3)
=> [-5, -4, -3, -2, -1, 0, 1, 2, 3]
val z = exeval CHOICE ( ASSIGN (ADD (VAR, NUM (-1))), ASSIGN (ADD (VAR, NUM (1))) ) 0
=> [-1, 1]
val t = exeval SEQUENCE ( ASSIGN ( NUM(1) ) , REPEAT( CHOICE( EQ( NUM(1) , ASSIGN(ADD(VAR, NUM(1))) ) , NEQ( NUM(1) , ASSIGN(SUB(VAR, NUM(1))) ) ) ) ) 0
=> [1, 2]
val k = exeval REPEAT ( CHOICE( ASSIGN (ADD (VAR, NUM (-1)) ) , ASSIGN(NUM(5) ) ) ) 0
=> [-5, -4, -3, -2, -1, 0, 1, 2, 3, 4, 5]
val l = exeval SEQUENCE ( ASSIGN ( NUM(1) ) , REPEAT( CHOICE( REPEAT( CHOICE( EQ( NUM(1) , ASSIGN(ADD(VAR, NUM(1))) ) , NEQ( NUM(1) , ASSIGN(SUB(VAR, NUM(1))) ) ) ) , REPEAT ( CHOICE( ASSIGN (ADD (VAR, NUM (3)) ) , ASSIGN(NUM(0) ) ) ) ) ) ) 0
=> [-5, -4, -3, -2, -1, 0, 1, 2, 3, 4, 5]
(올리고 보니 좀 기네요.)
2.
집합을 나타내니까 집합 원소의 우선 순위는 중요하지 않겠죠? {1, 2} == {2, 1}과 같이
이것도 테스트 케이스를 만들어 봤는데 맞는지 한 번 봐주시면 좋겠습니다.
structure B = PowerSetFun(IntSet)
val a = IntSet.add(1, IntSet.add(2, IntSet.add(1,IntSet.empty)))
val b = IntSet.add(2, IntSet.add(1, IntSet.add(2,IntSet.empty)))
val c = IntSet.add(2, IntSet.empty)
val d = B.add(c, B.add(b, B.add(a, B.empty)))
=>
val a: int IntSet.set = IntSet.Set (2, IntSet.Set (1, IntSet.Empty))
val b: int IntSet.set = IntSet.Set (1, IntSet.Set (2, IntSet.Empty))
val c: int IntSet.set = IntSet.Set (2, IntSet.Empty)
val d: int IntSet.set B.set
= B.Set
(IntSet.Set (2, IntSet.Empty),
B.Set (IntSet.Set (2, IntSet.Set (1, IntSet.Empty)), B.Empty))
3. 이건 아직 한 줄도 못 적었는데요. 문제 자체가 잘 이해가 안되네요.
그 중에 평면의 조건 부분이 잘 이해가 안됩니다.
평면의 조건 3개가 다 어떤 형태를 의미하는지 모르겠는데 좀 더 쉽게 설명해 주실 수 있나요? (그림으로 보이면 제일 좋을텐데... ^^)
다들 기말이라 바쁘신가 보네요. 마지막 마무리 잘 해봅시다. 화이팅! |
|