Fonction récursive OCaml pour filtrer une liste

Fermé
Camilou - Modifié le 7 avril 2022 à 19:15
 Utilisateur anonyme - 8 avril 2022 à 16:46
Bonjour

Je souhaiterai écrire un programme ocaml, me permettant d afficher un élément sur 2 de ma liste.
Par exemple j ai la liste [a;b;c;d;e]. Ainsi je vois pouvoir avoir en retour [b;d] dans le cas présent par exemple.
Je veux faire déclarer la liste de base.
Puis lancer la fonction récursive et enfin afficher le résultat avec la nouvelle liste.

Je ne sais pas par quoi commencer
Je sui un peu perdu.
Dois-je faire d abord un list-length avant?
Merci par avance
A voir également:

2 réponses

Utilisateur anonyme
8 avril 2022 à 08:13
Bonjour

Je ne code pas en ocaml, et donc une subtilité liée à ce langage pourrait m’échapper, mais du récursif pour ça est contre productif. Ça va multiplier les appels à la fonction, charger la RAM (c’est toujours le cas avec du récursif) sans aucun avantage.
0
Dalfab Messages postés 706 Date d'inscription dimanche 7 février 2016 Statut Membre Dernière intervention 2 novembre 2023 101
8 avril 2022 à 12:32
Je ne connais pas plus OCaml, mais je crois qu'il n'a pas de boucles donc la récursivité y serait obligatoire.
Espérons qu'un OCamleur pourra nous clarifier cela!
0
Utilisateur anonyme
8 avril 2022 à 16:46
Salut,

J’ai trouvé un exemple de for sur le net, mais en écriture impérative.
Comme ocaml est me semble t il « orienté » déclaratif (je sais pas si ça se dit…), il faut peut-être efficace passer la récursivité dans ce mode d’écriture.
0

Discussions similaires