이전 주제 보기 :: 다음 주제 보기 |
글쓴이 |
메시지 |
김예성
가입: 2010년 9월 3일 올린 글: 8
|
올려짐: 2010년10월30일 3:08 주제: 숙제 5 간단(?)한 테스트 셋입니다. |
|
|
구현한 5-2에 다음 소스를 넣어줍니다.
factorial(4)에 대한 코드입니다.
코드: | (fn mul =>
(rec fac x => (ifzero x then 1 else (mul (x, fac (x - 1))))))
(rec mul pair => ifzero pair.1 then 0 else (pair.2 + (mul (pair.1 -1,pair.2))))
4 |
(과제와 직접적인 연관이 있을 것 같아서 제 인코딩 결과는 공개하지 않습니다. )
인코딩이 나오면 5-1(Lambda Calculus)에 넣고 돌려봅니다.
코드: | \f.\x.(f) ((f) ((f) ((f) ((f) ((f) ((f) ((f) ((f) ((f) ((f) ((f) ((f) ((f) ((f) ((f) ((f) ((f) ((f) ((f) ((f) ((f) ((f) ((f) (x)))))))))))))))))))))))) |
요렇게 24를 뜻하는 인코딩이 나오면 맞는거 같습니다.
모두 과제 마무리 잘하세요 -
+) and에 대한 문법은 위에서 테스트를 하지 않고 있습니다. |
|
위로 |
|
|
신기정
가입: 2009년 9월 15일 올린 글: 83
|
올려짐: 2010년10월30일 8:37 주제: 저도 간단한 테스트셋 하나 |
|
|
저도 간단한 테스트셋 하나
피보나치 수열의 여섯번째 항
인용: |
(rec fac x => (ifzero x then 0 else (ifzero (x - 1) then 1 else (fac (x - 2) + fac (x - 1))))) 6
|
결과는 8에 해당하는 적절한 람다식 저 같은 경우는
인용: |
\bk31.\bl31.(bk31) ((bk31) ((bk31) ((bk31) ((bk31) ((bk31) ((bk31) ((bk31) (bl31))))))))
|
이렇게 나오네요~ |
|
위로 |
|
|
|