7
A
回答
10
這是一個數學公約:根據定義,product of an empty sequence of numbers是一個數學公約。注意一個是用於乘法的恆等元件(1×a = a×1 = a)。這很方便,因爲您可以使用可變數量的參數調用*
,而不必擔心沒有參數的情況。
類似地,數字的空序列的和爲零,用於加法的標識元素。嘗試在你的Lisp提示下發行(+)
。
4
它是從數學繼承的屬性。這就像此外,你可以加在一起的任何數字的數字,特殊情況下,不添加數字在一起給你零和。
同樣的乘法,如果你乘以任意數量的數字,你會得到產品。爲了讓它適用於沒有數字的情況,使用1作爲基礎值(在數學中有一些奇特的名字,這在很多年前我已經忘記了)。
那麼,你在編程語言中有沒有實際的用處呢?是的,因爲你可以用任意數量的參數調用+
和*
等函數,我會說是。例如:
(apply '+ '(2 3 4)) => 9
(apply '+ '(2 3)) => 5
(apply '+ '(2)) => 2
(apply '+ '()) => 0
(apply '* '(2 3 4)) => 24
(apply '* '(2 3)) => 6
(apply '* '(2)) => 2
(apply '* '()) => 1
+1
注意:在Scheme中,您必須刪除運算符前的'''(即'quote')才能運行的示例。例如,'(apply +'())',而不是'(apply'+'())''。 –
相關問題
- 1. 參數中的空格字符(emacs lisp)
- 2. Emacs Lisp中的strpos
- 3. Emacs Lisp中的PPRINT?
- 4. Emacs lisp:評估字符串列表
- 5. 列表乘法
- 6. 在(emacs)lisp中提取/切片/重新排列列表?
- 7. 讓和FLET中的Emacs Lisp
- 8. 的Emacs Lisp問題
- 9. Emacs lisp char-table
- 10. strtotime for Emacs Lisp
- 11. Emacs lisp highlighting
- 12. common lisp和emacs
- 13. strstr()in emacs lisp?
- 14. Python字符乘法或列表乘法
- 15. emacs lisp庫的輸入表單?
- 16. emacs lisp:如何追加到列表中「LaTeX-clean-intermediate-suffixes」?
- 17. 在Emacs Lisp中解析
- 18. Emacs Lisp緩衝區位置列?
- 19. 的Emacs Lisp:轉換列表以字符串
- 20. 如何檢查Emacs Lisp中的字符串是否爲空?
- 21. Emacs Lisp的方案方言
- 22. Lisp的Emacs配置腳本
- 23. 的Emacs Lisp:從路徑
- 24. 的Emacs Lisp搜索落後
- 25. Emacs Lisp有趣的錯誤
- 26. Python中的列表乘法運算
- 27. 列表中的乘法元素
- 28. Haskell中列表的乘法內容
- 29. 列表中的乘法元素
- 30. Lisp兩個列表相乘並添加兩個值
'(*(+)*(*)(*)(*)(*)(*)(*)(*) (*(+(*)(*)(*)(*))(+(*)(*)(*))(+(*)(*)(*)))))' –
@EliBarzilay:is野獸的sexpr? –
larsmans,謝謝你的明確答案。 – karasiov