Ich habe ein Projekt in Schema, in dem ich eine unendliche Folge von Zahlen implementieren muss. Ich kann keine in einem Schema integrierten komplexen Funktionen verwenden, und ich weiß einfach nicht, wie ich meine Sequenz unendlich machen kann, ohne dass das Programm in der Endlosschleife abstürzt. Ich muss es nicht wirklich ausgeben, aber ich muss es benutzen können.unendliches Sequenzschema zur unendlichen Sequenz
(seq n) ;;output: n,n+1,n+2,n+3.... to infinity (seq 5) ->5,6,7,8,9...
Im Moment habe ich eine Sequenz bis n + 7, aber ich brauche diese bis ins Unendliche:
(define (seq n)
(define (asc-order LIST counter)
(cond ((= counter (+ n 7)) LIST)
(else (asc-order (append LIST (cons (+ counter 1) '()))
(+ counter 1)))))
(asc-order '() (- n 1))
)
IO Beispiel (Es funktioniert, aber ich brauche es unendliche Folge):
>(define s (seq 3))
>(car s)
3
Dank @soegaard, aber wie ich bereits erwähnt habe zu verwenden, nicht erlaubt Einbau in nicht-primitiven Funktionen, particaularly gesetzt! – mooly