게시판 인덱스

 
 FAQFAQ   검색검색   멤버리스트멤버리스트   사용자 그룹사용자 그룹   사용자 등록하기사용자 등록하기 
 개인 정보개인 정보   비공개 메시지를 확인하려면 로그인하십시오비공개 메시지를 확인하려면 로그인하십시오   로그인로그인 

숙제1에 대한 질문입니다.

 
이 게시판은 잠겼으므로 글을 올리거나, 답변을 하거나 수정을 할 수 없습니다   이 주제는 잠겼으므로 답변을 하거나 수정을 할 수 없습니다     게시판 인덱스 -> 4190.210 Principles of Programming (Fall 2009)
이전 주제 보기 :: 다음 주제 보기  
글쓴이 메시지
koreaskj



가입: 2009년 9월 15일
올린 글: 2

올리기올려짐: 2009년9월15일 8:24    주제: 숙제1에 대한 질문입니다. 인용과 함께 답변

제가 사용하고 있는(조교님께서 권장한) scheme 버전에서는

함수 fold가 정의되지 않았는데

이 것까지 구현에 포함되는 것인가요?

fold의 정확한 기능을 몰라서, 해당 문제 풀기가 어렵습니다.


이친수 문제 부분을 자세히 읽어봤는데 잘 이해가 되지 않습니다.

입출력 예제를 주시면 이해에 도움이 될 것같습니다

감사합니다~
위로
사용자 정보 보기 비밀 메시지 보내기
조성근



가입: 2009년 9월 14일
올린 글: 283

올리기올려짐: 2009년9월15일 11:24    주제: 인용과 함께 답변

인용:
함수 fold가 정의되지 않았는데

이 것까지 구현에 포함되는 것인가요?


구현에 포함되지 않습니다. 다만 정의한 함수가 제대로 동작하는지 확인하기 위해서는 필요할 수도 있습니다.

fold의 예를 보여드리면 다음과 같습니다. 프린트에 나와있는 정의와 비교해 보세요.

(fold + 0 (list 1 2 3))
= (+ (+ (+ 0 1) 2 ) 3)

정의되어 있는대로 코드를 작성한다면 구현도 그다지 어렵지 않습니다. 도전해 보세요!


인용:
이친수 문제 부분을 자세히 읽어봤는데 잘 이해가 되지 않습니다.

입출력 예제를 주시면 이해에 도움이 될 것같습니다


이친수 문제의 어느 부분이 이해가 안되는지 정확히 알려주세요. Confused
위로
사용자 정보 보기 비밀 메시지 보내기
신기정



가입: 2009년 9월 15일
올린 글: 83

올리기올려짐: 2009년9월15일 12:08    주제: 이친수 입력에서 궁금한 부분입니다. 인용과 함께 답변

질문1.
문제에서처럼
(cons 'z (cons 'p (cons 'n nil))) 라고입력을 줄경우 nil에서 오류가 납니다.
따라서
(cons 'z (cons 'p (cons 'n empty)))
혹은
(list z p n) 이런식으로 입력을 줘도 괜찮은가요?

질문2
그리고 이친수간의 합과 차에서
리턴값을 list로 리턴하면 되는건가요?
예를들어 덧셈 인자로 (list z p n) (list z p n) 로 전달하면
(z z n)으로 리턴되면 되나요?

질문3
(z z z) (z z) (z) 등이 모두 같은 값을 가지는데
한가지로 통일해서 리턴해야 하나요?
위로
사용자 정보 보기 비밀 메시지 보내기
신기정



가입: 2009년 9월 15일
올린 글: 83

올리기올려짐: 2009년9월15일 12:28    주제: 아 그리고 인용과 함께 답변

그리고 테스트에 사용되는 fold의 기능을 정확히 몰라서

이를 사용한 구현이 어렵습니다.

fold를 직접 정의해서 사용해도 괜찮은가요?
위로
사용자 정보 보기 비밀 메시지 보내기
조성근



가입: 2009년 9월 14일
올린 글: 283

올리기올려짐: 2009년9월15일 13:38    주제: 인용과 함께 답변

인용:
(cons 'z (cons 'p (cons 'n nil))) 라고입력을 줄경우 nil에서 오류가 납니다.
따라서
(cons 'z (cons 'p (cons 'n empty)))
혹은
(list z p n) 이런식으로 입력을 줘도 괜찮은가요?


예. 문제에 잘못된 부분이 있습니다. nil이 아닌 null을 사용하여야 합니다.

입력은 다음과 같은 모양으로 주어닙니다. (empty나 ()를 사용하여도 함수에 큰 차이는 없을 듯 합니다.)
코드:
(cons 'z (cons 'p (cons 'n null)))


인용:

리턴값을 list로 리턴하면 되는건가요?


예.

인용:
(z z z) (z z) (z) 등이 모두 같은 값을 가지는데
한가지로 통일해서 리턴해야 하나요?


한 가지로 통일할 필요는 없습니다. (z z z)와 같은 출력이 나와도 괜찮습니다.


인용:
그리고 테스트에 사용되는 fold의 기능을 정확히 몰라서

이를 사용한 구현이 어렵습니다.

fold를 직접 정의해서 사용해도 괜찮은가요?

'테스트'라 함은 HW1의 EX4에서 정의한 함수들(flatten, foldsum)의 테스트를 말하는 것인가요? 만약 그렇다면, fold의 정의는 이미 문제에 되어 있으니 테스트를 위해서 fold가 정의된 그대로 구현은 하셔도 좋습니다. 단, 제출시에는 fold의 구현을 제거해 주세요.

fold에 대한 이해에 도움이 될까해서 링크를 걸어 놓습니다.
http://en.wikipedia.org/wiki/Fold_%28higher-order_function%29
위로
사용자 정보 보기 비밀 메시지 보내기
윤용호



가입: 2008년 9월 23일
올린 글: 257

올리기올려짐: 2009년9월15일 18:53    주제: 인용과 함께 답변

인용:
'테스트'라 함은 HW1의 EX4에서 정의한 함수들(flatten, foldsum)의 테스트를 말하는 것인가요? 만약 그렇다면, fold의 정의는 이미 문제에 되어 있으니 테스트를 위해서 fold가 정의된 그대로 구현은 하셔도 좋습니다. 단, 제출시에는 fold의 구현을 제거해 주세요.

fold에 대한 이해에 도움이 될까해서 링크를 걸어 놓습니다.
http://en.wikipedia.org/wiki/Fold_%28higher-order_function%29


fold의 구현을 꼭 제거해서 제출해야 하나요? 사실 fold를 함께 제출해도 큰 문제는 없어보입니다만.. 직접 작성하신 fold를 적용해서 채점하실 예정이기 때문인가요?
위로
사용자 정보 보기 비밀 메시지 보내기
이전 글 표시:   
이 게시판은 잠겼으므로 글을 올리거나, 답변을 하거나 수정을 할 수 없습니다   이 주제는 잠겼으므로 답변을 하거나 수정을 할 수 없습니다     게시판 인덱스 -> 4190.210 Principles of Programming (Fall 2009) 시간대: GMT + 9 시간(한국)
페이지 11

 
건너뛰기:  
새로운 주제를 올릴 수 없습니다
답글을 올릴 수 없습니다
주제를 수정할 수 없습니다
올린 글을 삭제할 수 없습니다
투표를 할 수 없습니다


Powered by phpBB 2.0.21-7 (Debian) © 2001, 2005 phpBB Group
Translated by kss & drssay