0
(define (list-ref items n)
(cond ((null? items) "Out of range exception")
((= n 0) (car items))
(list-ref (cdr items) (- n 1))))
(list-ref (list 1 2 3) 6)
5
Neden her zaman (- n 1)
değerini döndürür? Neden (list-ref (cdr items) (- n 1))
'u çalıştırmıyor?Şemada nasıl çalışır?
Anladım. Ama derleyici neden yorumlamadı? (List-ref (cdr items) (- n 1)) '? – Anatoly
Yaptı. “List-ref”, doğruluk durumu (her zaman doğru olan) ve '(cdr öğeleri)' ve '(- n 1)' 'o zaman' ifadeleri olarak değerlendirdi. Sonun değeri döndürülür. –
Şemada, sadece # # f yanlış kabul edilir. Diğer her değer doğru olarak kabul edilir. –