For example here is our code:
(define survives?
(lambda (position n)
(if (< n 3)
#t
(if (= position 3)
#f
(survives? (modulo (+ position (- n 3)) n) (- n 1) )))))
(require racket/trace) ; we added this end of the code
(trace survives?)
> (survives? 4 5)
>(survives? 4 5)
>(survives? 1 4)
>(survives? 2 3)
>(survives? 2 2)
<#t
#t
Debugging in Prolog is like this in SWIProlog :
?- trace, ekle2([1,2],[3,4],K).
Call: (8) ekle2([1, 2], [3, 4], _G6833) ? creep
Call: (9) ekle2([2], [3, 4], _G6958) ? creep
Call: (10) ekle2([], [3, 4], _G6961) ? creep
Exit: (10) ekle2([], [3, 4], [3, 4]) ? creep
Exit: (9) ekle2([2], [3, 4], [2, 3, 4]) ? creep
Exit: (8) ekle2([1, 2], [3, 4], [1, 2, 3, 4]) ? creep
K = [1, 2, 3, 4].
Hiç yorum yok:
Yorum Gönder