Information

Deadline No deadline
Submission limit No limitation

Sign in

[1.5] Listes en compréhension

Listes en compréhension

Syntaxe : [E | c1,c2,...,cn] où E est une expression et ci :

  • p <- E1, avec p qui parcourt les valeurs de la liste E1
  • let p = E2, pour une déclaration locale
  • E3, expression booléenne, condition sur les valeurs

Question 1:

Quelle est la valeur de l'expression suivante ?

[x - y | x <- [12, 9], y <- [3, 0, 6]]
Question 2:

Quelle est la valeur de l'expression suivante ?

[x y | x <- [head, null, (!!1)], y <- [[True, True], [False, True, False]]]
Question 3:

Quelle est la valeur de l'expression suivante ?

[x + 3 | x <- [1..5], x `mod` 2 == 0]
Question 4:

Quelle est la valeur de l'expression suivante ?

[x < y | x <- [3, 6, 9], y <- [0, 5, 10], (x + y) `mod` 2 == 0]
Question 5:

Quelle est la valeur de l'expression suivante ?

[y - x | x <- [5, 7, 10, 12], y <- [6, 10, 5, 20], x < y]