 |
|
| 이전 주제 보기 :: 다음 주제 보기 |
| 글쓴이 |
메시지 |
나동현
가입: 2025년 3월 14일 올린 글: 2
|
올려짐: 2025년4월19일 18:56 주제: [숙제 4] Exercise 1,2 질문입니다. |
|
|
현재 due를 넘긴 상황이지만 아무쪼록 답변해주시면 감사하겠습니다.
Exercise 2를 구현하기 위해서 isLeaf와 같은 구문들을 작성중인데
이러한 true false를 반환하는 구문은 반드시 if, = 를 사용해서 비교하는 것이 필요할 것입니다.
예를 들어서, isLeaf의 경우는 l, r이 빈 트리인지를 알아보는 구문을 가져야 하는데 그러기 위해서 "record"의 비교가 필요한 상황입니다.
빈 트리를 따로 표현하는 음의 정수 같은 걸 임의로 정해서 구현하는 게 아닌 이상, 이것이 없이 현재처럼 int, bool, unit의 비교만 허용하면 항상 위와 같은 record의 비교가 모두 False로 처리되기 때문에 is~의 동작을 구현할 수가 없는 거 같습니다.
앞전의 어떤 분의 질문에 대한 답변을 보고 K-.pdf의 5페이지를 봤는데,
제가 다운받아 가지고 있는 K-의 semantic에서는 이가 존재하지 않는 거 같습니다. int, bool, unit의 비교만 True로 보고 나머진 하지 않게 하는 거 같은데.
혹시 EQUALT semantic 마지막의 .이 {}도 포함하는 것인가요?
만약 아니라면 record의 비교를 사용하지 않고, k- 내에서 구현할 방법이 있는지 여쭤보고 싶습니다. k-내에서 while을 써서 record의 모든 원소를 직접 비교하거나 그러려면 최소한 emptyTree로 지정해 줄 record에서 이 record의 value, left, right가 어떻게 설정되는지 (ex. {0, 0, 0})같은 기초전제가 필요할 거 같은데 딱히 어느 pdf에서도 보이지 않아서입니다.
감사합니다.
+그냥 자체적으로 해결했습니다. Unit, Record는 분명 코드상 value로 아예 다른 타입의 값인데 '.'으로 같이 묶어놓고, 뒤에 EQUALT에서는 hw3의 notation을 유지할 줄은 상상도 못했네요.
근데 그런데도 '.'이 대체
- RECORD에서 Record({})는 Unit을 value로 갖게 해서 다루란 건지,
- 아니면 EQUAL에서 알아서 Record({})만을 비교하는 구문을 만들어서 하란 건지 모르겠어서
전자로 일단 구현하였습니다만
이 의미가 맞는지, 이대로 구현 시 추가감점 같은 게 있는지 여쭤보고 싶습니다. |
|
| 위로 |
|
 |
오규혁 Site Admin
가입: 2022년 3월 15일 올린 글: 88
|
올려짐: 2025년4월19일 20:12 주제: |
|
|
안녕하세요,
RECLOOKUP와 int, bool, unit 간의 비교로 구현 가능합니다.
emptyTree로 지정해 줄 record에 record의 구성과 값은 구현의 내용으로 주어진 함수들이 조건에 맞게 작동하면 됩니다.
+ 전자가 맞습니다.
조교드림 _________________ TA 오규혁
e-mail: ghoh@ropas.snu.ac.kr |
|
| 위로 |
|
 |
|
|
새로운 주제를 올릴 수 없습니다 답글을 올릴 수 없습니다 주제를 수정할 수 없습니다 올린 글을 삭제할 수 없습니다 투표를 할 수 없습니다
|
Powered by phpBB 2.0.21-7 (Debian) © 2001, 2005 phpBB Group Translated by kss & drssay
|