我是球拍和一般功能語言的新手。現在我只是試圖將項目添加到列表中。這些概念有點混亂,不知道爲什麼我的代碼無法正常工作。將元素添加到球拍中新定義的列表中
我正在嘗試做點積計算。
我有一個名爲「dProduct」的函數,它需要2個列表(A和B)並將它們中的每個對應元素相乘。
;function takes dot product
(define (dProduct A B)
(define C '()) ; define list to store the multiplied elements
;multiply ea lists elements
(for ([i A] [j B])
(display (* i j)) ;THIS WORKS
(cons (* i j) C) ;APPARENTLY DOESN'T WORK
)
;THIS FOR LOOP DISPLAYS NOTHING
;display the new list "C"
(for ([k C])
(display k)
)
)
我不明白爲什麼我不能用cons來將新的乘法元素預先添加到我的新列表「C」中。我錯過了什麼?一切都很好。想弄清楚這個,所以我可以完成這個功能:)任何幫助將是偉大的。謝謝!
免費計劃書:[如何設計程序](http://www.htdp.org)(也鏈接到DrRacket的內置幫助,本身很棒); [計算機程序的結構和解釋](https://mitpress.mit.edu/sicp/full-text/book/book.html)。 – molbdnilo