Adloun

Diagnostiquer des erreurs de type

Exercice · OCaml (option informatique), chapitre 1 — Découvrir OCaml : expressions, valeurs et types

Énoncé

Pour chaque phrase, dire si elle est acceptée ; sinon, expliquer l'erreur et la corriger.

(* a *) 3 + 4.0
(* b *) if 1 < 2 then 0 else "zéro"
(* c *) 5.0 /. 2

Corrigé

(a) Refusée : + attend deux int, or 4.0 est un float. Correction selon l'intention : 3 + 4 (entiers) ou 3.0 +. 4.0 (flottants).

(b) Refusée : les deux branches doivent avoir le même type, or 0 est int et &quot;zéro&quot; est string. Correction : choisir un type commun, p. ex. if 1 &lt; 2 then &quot;0&quot; else &quot;zéro&quot;.

(c) Refusée : /. attend deux float, or 2 est un int. Correction : 5.0 /. 2.0.

Les autres exercices de ce chapitre Le cours du chapitre

Un blocage sur cet exercice ? Le tuteur d'Adloun guide par questions, sans donner la réponse.