.Re: A simple lisp problem.

Liste des GroupesRevenir à cl lisp 
Sujet : .Re: A simple lisp problem.
De : No_spamming (at) *nospam* noWhere_7073.org (B. Pym)
Groupes : comp.lang.lisp
Date : 15. Jun 2024, 05:45:39
Autres entêtes
Organisation : A noiseless patient Spider
Message-ID : <v4j2p1$3a0lu$1@dont-email.me>
User-Agent : XanaNews/1.18.1.6
Frank Schwieterman wrote:

I am Lisp beginner and I am doing a simple execise on lisp. I was asked
to write a lisp program , by using either recursion or do, to return
true if the difference between each successive pair of the them is 1.
>
ie:
>
(difference '(2 1))
T
(difference'(3 4 5 6 5 4))
T
(differnce '(3 4 5 3))
NIL
 ....
 
(defun difference (param)
     (if (> (length param) 1)
        (if (<= (abs (- (first param) (first (rest param)))) 1 )
           (difference (rest param))
           nil
           )
        T
        )
     )

Gauche Scheme

(define (diff1? xs)
  (every
    (lambda (a b) (= 1 (abs (- a b))))
    xs
    (cdr xs)))

(diff1? '(2 3 4 3 4 5 6 7 8 9 8))
  ===>
#t
(diff1? '(2 3 4 3 4 5 6 7 8 9 8 0))
  ===>
#f

Date Sujet#  Auteur
15 Jun 24 * .Re: A simple lisp problem.4B. Pym
15 Jun 24 +- Tail call recursion macro with named-let in Emacs Lisp (was: A simple lisp problem.)1Axel Reichert
15 Jun 24 `* Re: .Re: A simple lisp problem.2HenHanna
16 Jun 24  `- diff1p? -------- A simple lisp problem1HenHanna

Haut de la page

Les messages affichés proviennent d'usenet.

NewsPortal