侵日华军 发表于 2013-1-17 20:22:55

新手求助!!

在LISP程序里面分数应该怎么写,比如5\3

蒹葭_Keirll 发表于 2013-1-17 21:07:06

可以写成(/ 5 3)

侵日华军 发表于 2013-1-17 22:11:15

本帖最后由 侵日华军 于 2013-1-17 22:14 编辑

蒹葭_Keirll 发表于 2013-1-17 21:07 static/image/common/back.gif
可以写成(/ 5 3)
(defun c:wd()
(setq c (getreal "\n输入值:"))
(+(* 5 c) 32)
)把5改成分数怎么改呀?
命令: wd
输入值:5 57.0


另外怎么把计算结果57.0换行,\n是换行,就是不知道代码怎么改

蒹葭_Keirll 发表于 2013-1-17 22:13:38

01.
(defun c:wd()

02.
(setq c (getreal "\n输入值:"))

03.
(+(* (/ 5 3) c) 32)

04.
)

叮咚 发表于 2013-1-17 22:18:47

侵日华军 发表于 2013-1-17 22:11 static/image/common/back.gif
把5改成分数怎么改呀?
命令: wd
输入值:5 57.0


(terpri)
(+(* 5 c) 32)

侵日华军 发表于 2013-1-17 22:19:12

蒹葭_Keirll 发表于 2013-1-17 22:13 static/image/common/back.gif
01.
(defun c:wd()



另外怎么把计算结果换一行显示,\n是换行,就是不知道代码怎么改

侵日华军 发表于 2013-1-17 22:28:35

叮咚 发表于 2013-1-17 22:18 static/image/common/back.gif
(terpri)
(+(* 5 c) 32)

命令: wd
输入值:5
57.0
命令:

我要在57.0前面加上文字:结果=    怎么写

侵日华军 发表于 2013-1-17 22:50:58

本帖最后由 侵日华军 于 2013-1-17 22:51 编辑

蒹葭_Keirll 发表于 2013-1-17 22:13 static/image/common/back.gif
01.
(defun c:wd()


按照你改的代码,计算的结果不对呀

命令: wd
输入值:3 35.0
命令:
命令: wd
输入值:4 36.0
命令:
命令: wd
输入值:5 37.0
命令:
命令: wd
输入值:6 38.0
命令:

weiqi 发表于 2013-1-17 22:53:59

本帖最后由 weiqi 于 2013-1-17 22:55 编辑

(defun c:wd()
(setq c (getreal "\n输入值:"))
(setq jg (rtos (+(* (/ 5 3) c) 32)))
(print (strcat "结果等于" jg "单位"))
(print)
)

结果等于(5/3)*c +32

难得遇到一个我还能答的问题~
rtos 把结果 数值转为 字符串
strcat 字符串相加

回答得不对的地方请高手指教




自贡黄明儒 发表于 2013-1-18 00:40:02

分数5\3------(/ 5. 3.)而不是(/ 5 3)
页: [1] 2
查看完整版本: 新手求助!!