• LF몰 이벤트
  • 파일시티 이벤트
  • 서울좀비 이벤트
  • 탑툰 이벤트
  • 닥터피엘 이벤트
  • 아이템베이 이벤트
  • 아이템매니아 이벤트

[LISP Programming] LISP으로 작성한 물병문제

*재*
최초 등록일
2003.05.11
최종 저작일
2003.05
2페이지/파일확장자 기타파일
가격 1,000원 할인쿠폰받기
다운로드
장바구니

*해당 문서는 미리보기가 지원되지 않습니다.

소개글

LISP을 사용해서 첫번째 물병에 일정양의 물을 남기도록 하는 프로그램 입니다.
서로 크기가 다른 두 물병을 이용해서 첫번째 물병에 문제에서 요구하는 양을 만듭니다.
예를 들어서 (solve '(5 3) '(4 0)) 는 크기가 5L와 3L인 두 물병을 이용해서 첫번째 물병에 물을 4L로 만들라는 것입니다.

목차

없음

본문내용

(setq xmax 0) ;; 첫번째 물병의 용량
(setq ymax 0) ;; 두번째 물병의 용량
(setq xgoal 0) ;; 첫번째 물병에 채우고 싶은 양
(setq ygoal 0) ;; 두번째 물병에 채우고 싶은 양 (과제의 경우에는 항상 0)
(setq trail nil) ;; 물을 옮겨담는 순서를 기록할 list

;; 물을 옮겨담는 함수
( defun exec (alist) (progn
(set 'trail (append trail (list alist))) ;; 현재 물병의 상태를 trail에 기록한다.
;; 원래는 (a b)의 상태로 저장되어 있으므로 list를 이용해서 ((a b))의 상태로 만든다음 append하면 ((c d)...(a b))의 형태로 저장된다.
(set 'xpres (first alist)) ;; 첫번째 물병에 담긴 물의 양을 얻어냄
(set 'ypres (second alist)) ;; 두번째 물병에 담긴 물의 양을 얻어냄
(if (and (equal xpres xgoal) (equal ypres ygoal)) "complete!" ;; 목표량에 도달하면 "complete!"된다.
...

참고 자료

없음
*재*
판매자 유형Bronze개인

주의사항

저작권 자료의 정보 및 내용의 진실성에 대하여 해피캠퍼스는 보증하지 않으며, 해당 정보 및 게시물 저작권과 기타 법적 책임은 자료 등록자에게 있습니다.
자료 및 게시물 내용의 불법적 이용, 무단 전재∙배포는 금지되어 있습니다.
저작권침해, 명예훼손 등 분쟁 요소 발견 시 고객센터의 저작권침해 신고센터를 이용해 주시기 바랍니다.
환불정책

해피캠퍼스는 구매자와 판매자 모두가 만족하는 서비스가 되도록 노력하고 있으며, 아래의 4가지 자료환불 조건을 꼭 확인해주시기 바랍니다.

파일오류 중복자료 저작권 없음 설명과 실제 내용 불일치
파일의 다운로드가 제대로 되지 않거나 파일형식에 맞는 프로그램으로 정상 작동하지 않는 경우 다른 자료와 70% 이상 내용이 일치하는 경우 (중복임을 확인할 수 있는 근거 필요함) 인터넷의 다른 사이트, 연구기관, 학교, 서적 등의 자료를 도용한 경우 자료의 설명과 실제 자료의 내용이 일치하지 않는 경우

이런 노하우도 있어요!더보기

최근 본 자료더보기
탑툰 이벤트
[LISP Programming] LISP으로 작성한 물병문제
  • 레이어 팝업
  • 레이어 팝업
  • 레이어 팝업
  • 레이어 팝업
AI 챗봇
2024년 05월 04일 토요일
AI 챗봇
안녕하세요. 해피캠퍼스 AI 챗봇입니다. 무엇이 궁금하신가요?
7:49 오후