je la liste suivante:éléments de filtre dans une liste par longueur - Ocaml
["A";"AA";"ABC";"BCD";"B";"C"]
J'extrais au hasard un élément dans la liste. Mais l'élément I Le texte devrait être de taille 3 ne pas moindre que 3.
Je suis en train de le faire comme suit:
let randomnum = (Random.int(List.length (list)));;
let rec code c =
if (String.length c) = 3 then c
else (code ((List.nth (list) (randomnum)))) ;;
print_string (code ((List.nth (list) (randomnum)))) ;;
Cela fonctionne bien si au hasard une chaîne de longueur 3 est choisi à partir la liste.
Mais le programme ne se termine pas si une chaîne de longueur < 3 est prise en compte. J'essaye de faire un appel récursif de sorte que le nouveau code continue à être pris jusqu'à ce que nous obtenions un de longueur = 3.
Je suis incapable de comprendre pourquoi ceci ne se termine pas. Rien n'est généré par l'instruction d'impression.
merci. J'ai juste essayé et était sur le point de supprimer ce poste et j'ai vu votre réponse :) merci encore. – JJunior