cainiao 发表于 2010-11-27 21:20:00

[讨论]三角形的程序代码错了大家帮个忙啊谢谢

&nbsp;(defun c:sjx()<br/>(setq a (getreal "三角形一条边:"));可以用输入4(用3,4,5的直角三角形验证是否正确)<br/>(setq b (getreal "\n三角形二条边:"));输入5<br/>(setq c (getreal "\n三角形三条边:"));输入3<br/>(setq p1 (getpoint "\n三角形初始位置:"))(terpri);指定第一点<br/>(setq p2 (polar p1 0 b))<br/>(setq aaa (/ (* (+ (* b b) (* c c)) (* a a)) (* 2 b c)));用余弦公式求角度a变对应的角余弦值;<br/>(setq aa (atan (/ (- 1 (* aaa aaa)) aaa)));用反正切求的角度<br/>(setq p3 (polar p1 aa c));求出第三点<br/>(command "line" "non" p1 "non" p2 "non" p3 "c");连接三点就是不是我要的实际3,4,5的三角形,哪里错了啊感觉是公事用错了<br/>)

cainiao 发表于 2010-11-27 21:27:00

来两个大侠啊伴我看看啊<br/><br/>

xyp1964 发表于 2010-11-28 01:13:00

<font face="Verdana">(defun c:sjx ()<br/>&nbsp; (setq&nbsp;a&nbsp;&nbsp; (getreal "\n三角形一条边: ") ;可以用输入4(用3,4,5的直角三角形验证是否正确)<br/>&nbsp;b&nbsp;&nbsp; (getreal "\n三角形二条边: ") ;输入5<br/>&nbsp;c&nbsp;&nbsp; (getreal "\n三角形三条边: ") ;输入3<br/>&nbsp;p1&nbsp; (getpoint "\n三角形初始位置:")<br/>&nbsp;p2&nbsp; (polar p1 0 a)<br/>&nbsp;aaa (/ (+ (* a a) (* b b) (* c c -1.)) (* 2. a b)) ;用余弦公式求角度a变对应的角余弦值;<br/>&nbsp;aa&nbsp; (XYP-TF-ACOS aaa)&nbsp;&nbsp;;用反正切求的角度<br/>&nbsp;p3&nbsp; (polar p1 aa b)<br/>&nbsp; )&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;;求出第三点<br/>&nbsp; (command "pline" "non" p1 "non" p2 "non" p3 "c") ;连接三点就是不是我要的实际3,4,5的三角形,哪里错了啊感觉是公事用错了<br/>&nbsp; (princ)<br/>)</font>

lsjj 发表于 2010-11-28 09:28:00

<p>版主您要幫忙也幫到底,就一個aa也要xyp</p>

xyp1964 发表于 2010-11-28 10:25:00

<font face="Verdana">(defun xyp-TF-Acos(num)(if (= num 0) (atan 1 0) (atan (/ (sqrt (- 1 (* num num))) num))))</font>
页: [1]
查看完整版本: [讨论]三角形的程序代码错了大家帮个忙啊谢谢