게시판 인덱스

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

HW 6-7 crazy2add 질문입니다.

 
글 쓰기   답변 달기     게시판 인덱스 -> 4190.210 Principles of Programming (Fall 2014)
이전 주제 보기 :: 다음 주제 보기  
글쓴이 메시지
김기웅



가입: 2014년 9월 16일
올린 글: 5

올리기올려짐: 2014년11월20일 10:35    주제: HW 6-7 crazy2add 질문입니다. 인용과 함께 답변

hw1-7-selfgrader에서는
코드:

(define (crazy2addGrade)
   (begin
      (printf "crazy2add\n")
        (output (lambda () (equal? '(z . z) (crazy2add 'z 'z))))
        (output (lambda () (equal? '(z . z) (crazy2add 'n 'p))))
        (output (lambda () (equal? '(p . z) (crazy2add 'z 'p))))
        (output (lambda () (equal? '(z z . p) (crazy2add '(p . p) 'p))))
        (output (lambda () (equal? '(z n z n p p z z p z z n p . z) (crazy2add '(p n n p p p z z p z z n . p) '(p n n . n)))))
        (output (lambda () (equal? '(p n n z z n z n z n n n p z n p . z) (crazy2add '(z n z p n n n n z n n n p z n . p) '(p z n n p z n n . p)))))
        (output (lambda () (equal? '(z z z n z z n z z z z p p n z z z . z) (crazy2add '(n n n n z z p n z n n p z n n z . p) '(n z z n n n n n p n z p p z n . n)))))
        (output (lambda () (equal? '(n p p z n p p z p z n . z) (crazy2add '(n z z . z) '(z p p z n p p z p z . n)))))
        (output (lambda () (equal? '(z z n n z p p p p n p n p p n n . z) (crazy2add '(p p n z p z p p p n p n p p n . n) '(p z n n n p . z)))))
        (output (lambda () (equal?'(z p z z z p p n n n p z n p z p . z) (crazy2add '(n z . p) '(p p p p p z p n n n p z n p z . p)))))
))

와 같이 맨 뒤에 'z를 붙였습니다.

마찬가지로 이번 과제에서도 마지막에 ZERO NIL을 붙여야되나요?
예를 들자면
코드:
crazy2add (ZERO (ONE NIL)) (ZERO (ONE NIL)) = ZERO(ZERO(ONE(ZERO NIL)))

처럼요
위로
사용자 정보 보기 비밀 메시지 보내기
김윤승



가입: 2014년 9월 1일
올린 글: 452
위치: 302동 312-2호

올리기올려짐: 2014년11월20일 14:17    주제: 인용과 함께 답변

이거 예전 그레이더 같은데요?

이 파일 올린 이후에 말씀하신 문제가 있어서 채점기 파일을 다시 올렸었습니다.

다음과 같은 내용이었습니다.

(define (crazy2addGrade)
(begin
(printf "crazy2add\n")
(output (lambda () (equal? 0 (crazy2val (crazy2add 'z 'z)))))
(output (lambda () (equal? 0 (crazy2val (crazy2add 'n 'p)))))
(output (lambda () (equal? 1 (crazy2val (crazy2add 'z 'p)))))
(output (lambda () (equal? 4 (crazy2val (crazy2add '(p . p) 'p)))))
(output (lambda () (equal? 2342 (crazy2val (crazy2add '(p n n p p p z z p z z n . p) '(p n n . n))))))
(output (lambda () (equal? 16731 (crazy2val (crazy2add '(z n z p n n n n z n n n p z n . p) '(p z n n p z n n . p))))))
(output (lambda () (equal? -2120 (crazy2val (crazy2add '(n n n n z z p n z n n p z n n z . p) '(n z z n n n n n p n z p p z n . n))))))
(output (lambda () (equal? -683 (crazy2val (crazy2add '(n z z . z) '(z p p z n p p z p z . n))))))
(output (lambda () (equal? -37932 (crazy2val (crazy2add '(p p n z p z p p p n p n p p n . n) '(p z n n n p . z))))))
(output (lambda () (equal? 37090 (crazy2val (crazy2add '(n z . p) '(p p p p p z p n n n p z n p z . p))))))
))

그래서, z를 맨 뒤에 붙일 필요가 없습니다.
위로
사용자 정보 보기 비밀 메시지 보내기
정의진



가입: 2014년 11월 13일
올린 글: 9

올리기올려짐: 2014년11월20일 17:29    주제: 인용과 함께 답변

2친수를 실수로 변환해서 더했을 때 같은 값만 나오면 표현은 달라도 관계 없는 것 아닌가요?
위로
사용자 정보 보기 비밀 메시지 보내기
김윤승



가입: 2014년 9월 1일
올린 글: 452
위치: 302동 312-2호

올리기올려짐: 2014년11월20일 18:13    주제: 인용과 함께 답변

네, 십진수로 변환해서 같은 값이 나오면 표현은 달라도 됩니다.
위로
사용자 정보 보기 비밀 메시지 보내기
이전 글 표시:   
글 쓰기   답변 달기     게시판 인덱스 -> 4190.210 Principles of Programming (Fall 2014) 시간대: GMT + 9 시간(한국)
페이지 11

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


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