ich will auch noch mal
(define (komische-prozedur lst)
(define (make-exp counter val result)
(if (> counter 0)
(make-exp (- counter 1) val (append (list val) result))
result))
(define (iter liste newlist)
(if (> (length liste) 2)
(iter (cddr liste) (append newlist (make-exp (cadr liste) (car liste) '())))
(append newlist (make-exp (cadr liste) (car liste) '()))))
(define (alles-ok? liste)
(define (iter lst2)
(if (> (length lst2) 1)
(if (number? (cadr lst2))
(iter (cddr lst2))
#f)
(if (= (length lst2) 0)
#t
#f)))
(if (= (length liste) 0) #f (iter liste)))
(if (alles-ok? lst) (iter lst '()) #f))
(komische-prozedur '(z 2 g 5 h
)
(komische-prozedur '())
(komische-prozedur '(r))
(komische-prozedur '(t 5 g g))
(z z g g g g g h h h h h h h h)
#f
#f
#f