Questions / réponses

Fonction parameters_gen

Fonction parameters_gen

von Nicolas Diot -
Anzahl Antworten: 5

Bonjour,

Après quelques tests sur emacs j'ai de bon résultat mais pas sous moodle. Pouvez-vous m'aiguiller sur la fonction qui pose problème s'il vous plaît ?

Merci par avance.

Diot Nicolas

Als Antwort auf Nicolas Diot

Re: Fonction parameters_gen

von Marc Zeitoun -

Moodle renvoie un exemple où le calcul est incorrect. Il faut s'en servir.

J'ai testé le code qui m'indique que le calcul est incorrect pour (Bin (21, Bin (70, Empty, Empty), Empty)).

J'ai ensuite lancé le code sur cet exemple, sur ma machine :

# let _ = parameters_gen (fun x -> x mod 3 = 0) (Bin (21, Bin (70, Empty, Empty), Empty));;

- : int * int * int * int * int * int = (1, 0, 1, 0, 0, 0)

Les 4 premiers paramètres sont bons, mais les 2 derniers sont incorrects : il y a une seule branche dans l'arbre : (21 - 70), qui est de longueur 1. Comme 70 n'est pas divisible par 3, il n'y a aucune branche dont tous les nœuds sont divisibles par 3, et une branche de longueur 1 qui a au moins un nœud divisible par 3 (le nœud 21).

Les 2 dernières valeurs doivent donc être -1 et 1.

Als Antwort auf Marc Zeitoun

Re: Fonction parameters_gen

von Sofian Antri -

J'ai peur de ne pas comprendre.

Ainsi avec un arbre contenant un seul noeud dont l'étiquette satisfera p, tel que :

Bin(21,Empty,Empty)

 la 5e valeur devra être -1?

Als Antwort auf Sofian Antri

Re: Fonction parameters_gen

von Vincent Jeunehomme -

Non, dans cet exemple, la 5eme valeur sera 0, ce nœud satisfait p et sachant que ce nœud est le seul, alors tous les nœuds de cette branche (de hauteur 0) satisfont p

Als Antwort auf Vincent Jeunehomme

Re: Fonction parameters_gen

von Marc Zeitoun -

Exactement (et pour la même raison que le dit Vincent, la 6ème valeur est aussi 0).

Als Antwort auf Marc Zeitoun

Re: Fonction parameters_gen

von Sofian Antri -
Merci beaucoup, j'avais omis le fait qu'une branche allait de la racine à une feuille.