Re: [心得] AutoLISP 的 Hello, world!\n
指令: (load "f03")
no= 1, ratio= 1.0
no= 2, ratio= 2.0
no= 3, ratio= 1.5
no= 4, ratio= 1.66667
no= 5, ratio= 1.6
no= 6, ratio= 1.625
no= 7, ratio= 1.61538
no= 8, ratio= 1.61905
no= 9, ratio= 1.61765
no= 10, ratio= 1.61818
no= 11, ratio= 1.61798
no= 12, ratio= 1.61806
no= 13, ratio= 1.61803
no= 14, ratio= 1.61804
no= 15, ratio= 1.61803
no= 16, ratio= 1.61803
no= 17, ratio= 1.61803
no= 18, ratio= 1.61803
no= 19, ratio= 1.61803
no= 20, ratio= 1.61803
no= 21, ratio= 1.61803
no= 22, ratio= 1.61803
no= 23, ratio= 1.61803
no= 24, ratio= 1.61803
no= 25, ratio= 1.61803
no= 26, ratio= 1.61803
no= 27, ratio= 1.61803
no= 28, ratio= 1.61803
no= 29, ratio= 1.61803
no= 30, ratio= 1.61803
31
; file: f03.lsp
;| 費氏數列前後項的比值
把費氏數列中的每一項用前一項來除,我們得到一個新數列:
1, 2, 1.5, 1.67, 1.6, 1.63, 1.615, 1.619, 1.618, ..... |;
(defun f03 (no /)
(cond
((<= no 0) 1)
((= no 1) 1)
(t (+ (f03 (- no 2)) (f03 (- no 1))))
)
) ; end of f03()
; main() begin here
; for no= 1 to 30 do ...
(setq no 1)
(while (<= no 30)
(setq n1 (f03 (- no 1)))
(setq n2 (f03 no))
(setq x (/ (float n2) (float n1)))
(princ (strcat "no= " (itoa no) ", ratio= "))
(princ x)
(princ "\n")
(setq no (1+ no))
) ; end of while()
; end of main()
※ 引述《HiEArO (xsd)》之銘言:
: 謝謝你仔細的回答 我是第一次執行lisp程式
: 不曉得執行的流程
: ※ 引述《sjgau (sjgau)》之銘言:
: : 以下,應該是 正確的
: : (defun f2(n / )
: : ;
: : )
: : 我把 函數名稱改成 f2
: : 執行的方法是
: : (load "tmp.lsp")
: : (f2 10)
: 這兩行可以說是關鍵所在
: 我之前是有load進去,但是不曉得怎麼跑
: 經過第二行和以下執行結果的示範
: 我了解了 非常感謝回答 你的解答真的很詳細
: 若可以的話 可以教教我DEFINE的用法嗎?謝謝
: : 還有,第0項 和 第1項的答案都是 1
: : 還有,為了擔心 n < 0
: : 所以,
: : if (n <= 0) return 1;
: : 令: (f2 0)
: : 1
: : 指令: (f2 1)
: : 1
: : 指令: (f2 2)
: : 2
: : 指令: (f2 3)
: : 3
: : 指令: (f2 5)
: : 8
: : 指令: (f2 10)
: : 89
: : 指令: (f2 20)
: : 10946
: : 指令: (f2 25)
: : 121393
: : 指令: (f2 30)
: : 1346269
: : (defun f2 (n / )
: : (cond ((<= n 0) 1)
: : ((= n 1) 1)
: : (t
: : (+ (f2 (- n 1))
: : (f2 (- n 2))
: : )
: : )
: : )
: : )
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 210.243.237.65
推
11/20 18:56, , 1F
11/20 18:56, 1F
推
11/21 08:57, , 2F
11/21 08:57, 2F
推
11/22 01:14, , 3F
11/22 01:14, 3F
討論串 (同標題文章)
Cad_Cae 近期熱門文章
PTT數位生活區 即時熱門文章