A | |
add_elt [Cdst] | (add_elt e s) ajoute l'élément e à la liste s
s'il n'y figure pas déjà.
|
add_elt_a [Cdst] |
Variante: utilise
List.mem
|
alt_seq1 [Cdst] | (alt_seq1 s) renvoie true si et seulement si s
est une suite binaire alternée.
|
alt_seq2 [Cdst] | (alt_seq2 s) renvoie true si et seulement si s
est une suite binaire alternée.
|
alt_seq2_b [Cdst] |
Variante: utilise une boucle
while : la fonction
retourne false dès que la suite n'est plus alternée.
|
C | |
cart_of_pol [Cdst] | (cart_of_pol d t) renvoie les coordonnées cartésiennes
corespondant aux coordonnées polaires d'angle t et de
mesure d .
|
I | |
inter [Cdst] | (inter s1 s2) renvoie l'intersection des ensembles s1 et s2
|
inter_a [Cdst] |
Variante: fonction locale récursive terminale.
|
inter_b [Cdst] |
Variante: fonction locale récursive terminale;
utilise le caractère fonctionnel du
if .
|
inter_c [Cdst] |
Variante: utilise l'itérateur
List.filtre :
les éléments de s1 inter s2 sont les élements
de s1 qui sont aussi dans s2 .
|
M | |
max_sub_hom1 [Cdst] | (max_sub_hom1 e s) renvoie la longueur de la plus longue sous-suite
e -homogène de s .
|
max_sub_hom2 [Cdst] | (max_sub_hom2 e s) renvoie la longueur de la plus longue sous-suite
e -homogène de s .
|
N | |
nb_occ_elt1 [Cdst] | (nb_occ_elt1 e s) renvoie le nombre d'occurrences de e dans
la suite binaire s .
|
nb_occ_elt1_a [Cdst] |
Variante: utilise la fonctionnalité de
if .
|
nb_occ_elt1_b [Cdst] |
Variante: utilise l'itérateur
List.fold_left .
|
nb_occ_elt1_c [Cdst] |
Variante: utilise l'itérateur
List.iter
ainsi qu'une référence locale.
|
nb_occ_elt2 [Cdst] | (nb_occ_elt2 e s) renvoie le nombre d'occurrences de e dans
la suite binaire s .
|
nb_occ_elt2_a [Cdst] |
Variante: utilise l'itérateur
Array.iter .
|
nb_sub_hom1 [Cdst] | (nb_sub_hom1 e s ) renvoie le nombre de sous-suites e -homogènes
de s .
|
nb_sub_hom1_a [Cdst] |
Variante: réécriture (racourcie) des tests
|
nb_sub_hom1_b [Cdst] |
Variante: utilise une référence locale (compteur).
|
nb_sub_hom1_c [Cdst] |
Variante: utilise un
if unilatère.
|
nb_sub_hom1_d [Cdst] |
Variante: utilise deux références locales:
un compteur et un booléen qui sert à déterminé
la valeur du dernier élément traité (
e ou non).
|
nb_sub_hom1_e [Cdst] |
Variante: factorisation des tests.
|
nb_sub_hom1_f [Cdst] |
Variante: autre algorithme:
alterner un traitement pour les éléments différents de
e
et un second pour les éléments égaux à e .
|
nb_sub_hom2 [Cdst] | (nb_sub_hom2 e s) renvoie le nombre de sous-suites e -homogènes
de s .
|
nb_sub_hom2_a [Cdst] |
Variante: l'autre algorithme avec des boucles
while .
|
P | |
pi [Cdst] |
valeur approchée du nombre pi
|
S | |
set_of_list [Cdst] | set_of_list xs renvoie l'ensemble (i.e.
|
set_of_list_a [Cdst] |
Variante: utilise
Cdst.add_elt (Quest II.1)
|
set_of_list_b [Cdst] |
Variante: fonction locale récursive terminale
|
set_of_list_c [Cdst] |
Variante: utilise l'itérateur
List.fold_left
|
spirale [Cdst] | spirale() écrit sur la sortie standard les coordonnées
cartésiennes des points d'une spirale d'Archimède donnés
par la suite de coordonnées polaire d'angle variant de 0 à
13pi /2 avaec un pas de pi /60
|
spirale_a [Cdst] |
Variante: utilise une boucle
for
|
U | |
union [Cdst] | (union s1 s2) revoie l'union des ensembles s1 et s2
|
union_a [Cdst] |
Variante: récursive terminale; utilise
s2 comme
accumaulatuer
|
union_b [Cdst] |
Variante: utilise l'itérateur
List.fold_left
|