Haskell : Les Generalités 2 QCM

Exercices Corriges en Haskell : generalites sur haskell PARTIE 02

 

1. **Qu'est-ce qu'une fonction en Haskell ?**
   a. Une fonction est une séquence d'instructions pour effectuer une tâche spécifique.
   b. Une fonction est une valeur qui représente une opération mathématique.
   c. Une fonction est une relation entre un ensemble d'entrées et un ensemble de sorties, définie par une règle.

2. **Quelle est la syntaxe pour définir une fonction en Haskell ?**
   a. `function name = expression`
   b. `def function name: expression`
   c. `function name expression =`

3. **Comment appelle-t-on le processus de remplacement des occurrences d'une variable par son expression correspondante dans une fonction en Haskell ?**
   a. Substitution
   b. Évaluation
   c. Application

4. **Quel est le résultat de l'expression `2 + 3 * 4` en Haskell ?**
   a. 20
   b. 14
   c. 18

5. **Quelle est la différence entre `let` et `where` lors de la définition de variables dans Haskell ?**
   a. `let` est utilisé à l'intérieur des fonctions, tandis que `where` est utilisé en dehors des fonctions.
   b. `let` est utilisé en dehors des fonctions, tandis que `where` est utilisé à l'intérieur des fonctions.
   c. Il n'y a pas de différence, `let` et `where` peuvent être utilisés de manière interchangeable.

6. **Quel est le résultat de l'évaluation de l'expression ` if 5 > 3 then "Yes" else "No" ` en Haskell ?**
   a. "Yes"
   b. "No"
   c. Une erreur se produira car la syntaxe de l'expression `if` est incorrecte.

7. **Qu'est-ce qu'une liste en Haskell ?**
   a. Une liste est une séquence d'éléments de même type.
   b. Une liste est une structure de données qui peut contenir des éléments de types différents.
   c. Une liste est une séquence d'éléments de types différents.

8. **Comment peut-on déclarer une liste vide en Haskell ?**
   a. `[ ]`
   b. `emptyList`
   c. `list = [ ]`

9. **Quel est le résultat de l'expression `head [1, 2, 3]` en Haskell ?**
   a. [1]
   b. 1
   c. 3

10. **Quelle fonction est utilisée pour ajouter un élément à la fin d'une liste en Haskell ?**
    a. `addEnd`
    b. `append`
    c. `(:)`

11. **Comment peut-on déclarer une fonction anonyme en Haskell ?**
    a. `function = \arguments -> expression`
    b. `function(arguments) = expression`
    c. `function(arguments) -> expression`

12. **Quelle est la fonction utilisée pour accéder à l'élément n-ième d'une liste en Haskell ?**
    a. `nthElement`
    b. `elementAt`
    c. `!!`

13. **Quelle est la syntaxe pour déclarer un commentaire sur une seule ligne en Haskell ?**
    a. `// Comment`
    b. `/* Comment */`
    c. `-- Comment`

14. **Quelle est la fonction utilisée pour concaténer deux chaînes de caractères en Haskell ?**
    a. `concat`
    b. `++`
    c. `concatenate`

Haskell pandacodeur

Correction :

1. **Qu'est-ce qu'une fonction en Haskell ?**
   - Réponse: c. Une fonction est une relation entre un ensemble d'entrées et un ensemble de sorties, définie par une règle. En Haskell, une fonction est définie par une expression qui spécifie comment transformer une valeur d'entrée en une valeur de sortie.

2. **Quelle est la syntaxe pour définir une fonction en Haskell ?**
   - Réponse: a. `function name = expression`. En Haskell, les fonctions sont définies en associant un nom à une expression qui spécifie le calcul à effectuer sur ses arguments.

3. **Comment appelle-t-on le processus de remplacement des occurrences d'une variable par son expression correspondante dans une fonction en Haskell ?**
   - Réponse: b. Évaluation. L'évaluation est le processus de substitution des arguments d'une fonction dans son expression, ce qui permet de calculer la valeur finale.

4. **Quel est le résultat de l'expression `2 + 3 * 4` en Haskell ?**
   - Réponse: b. 14. En Haskell, les opérations de multiplication (`*`) ont une priorité plus élevée que les opérations d'addition (`+`), donc l'expression est évaluée comme `2 + (3 * 4)`.

5. **Quelle est la différence entre `let` et `where` lors de la définition de variables dans Haskell ?**
   - Réponse: a. `let` est utilisé à l'intérieur des fonctions, tandis que `where` est utilisé en dehors des fonctions. En Haskell, `let` permet de définir des variables localement dans une expression, tandis que `where` permet de les définir à la fin d'une fonction.

6. **Quel est le résultat de l'évaluation de l'expression `if 5 > 3 then "Yes" else "No"` en Haskell ?**
   - Réponse: a. "Yes". Cette expression évalue si 5 est plus grand que 3. Comme c'est vrai, elle retourne "Yes".

7. **Qu'est-ce qu'une liste en Haskell ?**
   - Réponse: a. Une liste est une séquence d'éléments de même type. En Haskell, les listes sont des structures de données homogènes, ce qui signifie qu'elles ne peuvent contenir que des éléments du même type.

8. **Comment peut-on déclarer une liste vide en Haskell ?**
   - Réponse: a. `[ ]`. En Haskell, une liste vide est simplement représentée par une paire de crochets sans aucun élément à l'intérieur.

9. **Quel est le résultat de l'expression `head [1, 2, 3]` en Haskell ?**
   - Réponse: b. 1. La fonction `head` renvoie le premier élément d'une liste.

10. **Quelle fonction est utilisée pour ajouter un élément à la fin d'une liste en Haskell ?**
    - Réponse: b. `append`. En Haskell, la fonction `append` est utilisée pour ajouter un élément à la fin d'une liste existante.

11. **Comment peut-on déclarer une fonction anonyme en Haskell ?**
    - Réponse: a. `function = \arguments -> expression`. Les fonctions anonymes, également appelées fonctions lambda, sont définies en utilisant la syntaxe `\arguments -> expression` où `\` est le symbole lambda.

12. **Quelle est la fonction utilisée pour accéder à l'élément n-ième d'une liste en Haskell ?**
    - Réponse: c. `!!`. En Haskell, l'opérateur `!!` est utilisé pour accéder à l'élément n-ième d'une liste, où n est un indice entier.

13. **Quelle est la syntaxe pour déclarer un commentaire sur une seule ligne en Haskell ?**
    - Réponse: c. `-- Comment`. En Haskell, les commentaires sur une seule ligne sont précédés par `--`.

14. **Quelle est la fonction utilisée pour concaténer deux chaînes de caractères en Haskell ?**
    - Réponse: b. `++`. En Haskell, l'opérateur `++` est utilisé pour concaténer deux chaînes de caractères ou deux listes.

Si vous avez trouvé les exercices corrigés en Haskell de JoëlYk intéressants et utiles, pourquoi ne pas les partager avec d'autres personnes qui pourraient également en bénéficier ? Partagez ce lien sur les réseaux sociaux ou envoyez-le à vos amis et collègues. Vous pourriez aider quelqu'un à améliorer ses compétences en programmation ou à trouver des solutions à des problèmes complexes. N'oubliez pas que la connaissance doit être partagée pour grandir. Merci pour votre soutien et votre partage !

Contact WhatsApp : +237 658395978 | Réaliser Par Joël_Yk

  • Aucune note. Soyez le premier à attribuer une note !

Ajouter un commentaire

Anti-spam