Palindrome
Exercice · OCaml (option informatique), chapitre 6 — Caractères et chaînes de caractères
Énoncé
Écrire est_palindrome s (la chaîne se lit pareil dans les deux sens).
Corrigé
let est_palindrome s =
let n = String.length s in
let ok = ref true in
for i = 0 to n / 2 - 1 do
if s.[i] <> s.[n - 1 - i] then ok := false
done;
!ok
On compare le caractère i à son symétrique n-1-i, pour i jusqu'au milieu. Aucune construction de chaîne : on lit seulement. est_palindrome "kayak" vaut true, est_palindrome "ocaml" vaut false.
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.