我是一個新手,我試圖編寫一個總是找到列表的尾部第一個元素的過程。這在遞歸調用中很重要。創建一個程序,它將列表作爲參數
這裏是我的方法:
(define second (lambda (x) (car(cdr(x))))
,這是我如何努力,以檢查其是否運行正常與否:
>(define x (list 1 2 3 4))
>(second x)
,這是錯誤:
procedure application: expected procedure, given: (1 2 3 4) (no arguments)
=== context ===
stdin::184: second
/usr/share/racket/collects/racket/private/misc.rkt:85:7
可能是什麼問題?你能給我一個靈感嗎?我對「第二」的定義是錯的還是什麼?
在此先感謝。
你在DrRacket中運行這個嗎?如果是這樣,您應該在發生錯誤的地區看到紅色突出顯示。你看到這個了嗎? – dyoo 2013-04-24 21:55:06
不,我試圖在終端上 – user2870 2013-04-24 22:24:08
如果可以,請嘗試使用DrRacket運行;當你學習語言時,它提供的額外支持應該很有用。 – dyoo 2013-04-25 03:36:32