J'ai donné les définitions suivantes:scheme - Comment expliquer une sortie comme celle-ci?
(define head car)
(define (tail stream) (force (cdr stream)))
(define (addL x y)(cons-stream (+ (head x) (head y))(addL (tail x) (tail y))))
(define fibs(cons-stream 1(cons-stream 1
(addL (tail fibs) fibs))))
(define (reorder order-stream data-stream)
(cond ((stream-null? order-stream) the-empty-stream)
((stream-null? data-stream) the-empty-stream)
(else (cons-stream (stream-ref data-stream (stream-first order-stream))
(reorder (stream-rest order-stream) data-stream)))))
Et on m'a demandé d'afficher les 7 premiers chiffres (que je vais montrer ci-dessous) et d'expliquer ces chiffres qui sont émis par cette ligne de code:
(reorder (tail fibs) (tail fibs))
la sortie des 7 premiers éléments du flux résultant est:
"2, 3, 5, 13, 55, 610, 28657"
Quelqu'un at-il une idée pour une explication de cela? Je ne comprends pas tout à fait ce qui se passe réellement ici ...
Imprime les 13 premiers éléments de '(queue fibs)'. Voyez si vous pouvez trouver une correspondance entre les éléments et leurs positions. – molbdnilo