-Problème 0 : Implémentez une fonction sum-is-ten? telle que lorsqu'elle est appliquée à une liste d'entiers l, sum-is-ten? l est égale à #t si la somme de tous les éléments de la liste est égale à 10, sinon elle est égale à #f. Exemples de résultats attendus :

> (sum-is-ten? '(1 2 3 4 5))
#f
> (sum-is-ten? '(1 2 3 4))
#t

-Problème 1 : Implémentez une fonction twins? qui, appliquée à une paire p, donne #t si les deux éléments de la paire sont égaux, sinon elle donne #f. Exemples de résultats attendus :

> (load "matches.rkts")
> (twins (cons 1 2))
#f
> (twins (cons 2 2))
#t
-Problème 2 : Implémentez une fonction add-first-last qui :

  1. Lorsqu'elle est appliquée à la liste vide, elle renvoie 0.
  2. Appliquée à une liste de longueur comprise entre 1 et 4, elle renvoie la somme de son premier et de son dernier élément.
  3. Lorsqu'elle est appliquée à une liste de longueur supérieure à 4, elle renvoie "List is too big !". Exemples de résultats attendus :
    > (add-first-last '())
    0
    > (add-first-last '(1))
    2
    > (add-first-last '(1 2))
    3
    > (add-first-last '(1 2 3))
    4
    > (add-first-last '(1 2 3 4))
    5
    > (add-first-last '(1 2 3 4 5))
    "List is too big!"
    

-Problème 2 : Implémentez une fonction sum-or-prod qui :

  1. Appliquée à une liste dont le premier élément est égal à 0, elle retourne la somme du reste de la liste.
  2. Lorsqu'elle est appliquée à une liste dont le premier élément est égal à 0, elle retourne la somme du reste de la liste. premier élément est 1, elle retourne le produit du reste de la liste.
  3. Sinon, il renvoie "Try again!". Exemples de résultats attendus :
    > (sum-or-prod '(0 2 3 4))
    9
    > (sum-or-prod '(1 2 3 4))
    24
    > (sum-or-prod '(2 2 3 4))
    "Try again!"
    

-Problème 4 : Implémentez une fonction two-consecutive qui lorsqu'on lui donne une liste l, elle retourne #t si l contient deux occurrences contiguës de la même valeur, sinon elle retourne #f. Exemples de résultats attendus :

> (two-consecutive '(1 2 3 4 5))
#f
> (two-consecutive '(1 2 3 3 4))
#t


Site built with MkDocs and a slightly-modified version of Terminal for MkDocs.
Last update: September 2023