도와 주세여~ 조건문
컨텐츠 정보
- 360 조회
- 8 댓글
- 0 추천
- 0 비추천
- 목록
본문
(defun c:test ()
(setq a 1 b 2)
(setq c 1 d 3)
(if (and (>= a b)(= c d));;;;; 조건문 a가 b보다 크거나 같을때 만족하고, c 와 d가 같을때 다음 명령을 실행함
(progn
(setq pt1 (getpoint " 1st Pick Point: "))
(setq pt2 (getpoint pt1 " 2nd Pick Point: "))
(Command "Line" Pt1 Pt2 ""))
(progn
(prompt " ; 오류: no function definition"))
) ;if
(princ "n <<< ok >>>")
(princ)
)
—————————————-
넘 감사 하구요
(progn
…..
)
을 쓰지 안고 상기 조건식을 만족하여 프로그램이 시작되는 첫줄에서
실행이 되어 만족하면 다음명령어을 실행하고
만족하지 못하면 프로르램을 빠져나가는
방식으로 되는 리습에 자문을 구합니다 감사합니다
관련자료
수야12님의 댓글
무슨 의도이신지는 모르겠으나 cond를 사용하던 and를 사용하던 if를 사용하던 비슷합니다.. (cond ((and (>= a b)(= c d));;;;; 조건문 a가 b보다 크거나 같을때 만족하고, c 와 d가 같을때 다음 명령을 실행함 (setq pt1 (getpoint " 1st Pick Point: ")) (setq pt2 (getpoint pt1 " 2nd Pick Point: ")) (Command "Line" Pt1 Pt2 "") ) (T (prompt " ; 오류: no function definition")) ) ;cond
(and (>= a b)(= c d);;;;; 조건문 a가 b보다 크거나 같을때 만족하고, c 와 d가 같을때 다음 명령을 실행함 (setq pt1 (getpoint " 1st Pick Point: ")) (setq pt2 (getpoint pt1 " 2nd Pick Point: ")) (Command "Line" Pt1 Pt2 "") ) Ps. and문에 조건 다는것은 저도 짧아서 모르겠네요 ㅎㅎ;;;
hsunbae님의 댓글
감사 합니다 시간을 할애해 주셨는데 제 설명이 부족한 듯 합니다 (setq a 1 b 2) (setq c 1 d 3) ((and (>= a b)(= c d)) 조건식이 넘 어려워요 프로그램을 시작하여 상기 조건 만족하면 다음 명령어 실행하고 만족하지 못하면 다음 명령어 실행하지 않고 프로르램을 빠져나가는 리습인데 "(progn" 을 쓰니 프로그램 본문에 등장하여 "(progn"가 전부인양 보이는데 "조건식과 판단을 프로그램 상위에서 처리되어 다음 명령을 할지 말지" 상위에 존재하여 판단 하여주는 구절로 하려고 하니 시간만 가고 넘 어려워서요…. 어찌 방법이 있을것 같은데 모르겠습니다
뭐하남님의 댓글
(defun c:test () (setq a 2 b 2) (setq c 1 d 1) (cond ((not (>= a b)) ;조건문 a가 b보다 크거나 같을때 만족하고 (princ "n <<< a가 b보다 작습니다. >>>") ) ((not (= c d)) ;조건문 c 와 d가 같을때 다음 명령을 실행함 (princ "n <<< c 와 d가 같지 않습니다. >>>") ) ((not (setq pt1 (getpoint " 1st Pick Point: ")))) ((not (setq pt2 (getpoint pt1 " 2nd Pick Point: ")))) (T (Command "Line" Pt1 Pt2 "") (princ "n <<< ok >>>") ) ) (princ) )