procedure Initialisation (E/S v : vecteur d'entier, E N : entier) { variable i : entier Pour i de 0 à N-1 { v[i] <-- hasard() mod 201 } } procedure Remplissage(E vi : vecteur d'entier, E/S vf : vecteur d'entier, E N : entier) { variable i : entier Pour i de 0 à N-1 { Si ((i mod 2 = 0) ET (vi[i] mod 2 = 0)) alors { vf[i] <-- 2 } sinon { Si ((i mod 2 = 1) ET (vi[i] mod 2 = 1)) alors { vf[i] <-- 1 } sinon { vf[i] <-- 0 } } } } fonction comptage(E v: vecteur d'entier, E N : entier):entier { variable i,cpt : entier cpt <-- 0 Pour i de 0 à N-1 { Si (v[i]=0) alors { cpt <-- cpt +1 } } retourne cpt } procedure Affichage(E v : vecteur d'entier, E vp : vecteur d'entier, E N : entier) { variable i : entier Pour i de 0 à N-1 { Afficher("L'élément ",v[i]," à l'indice ",i," et l'indice sont ") Selon (vp[i]) { 2: Afficher("pairs.\n") 1: Afficher("impairs.\n") 0:Afficher("de parité différente.\n") } /* CE QUI SUIT EST EN COMMENTAIRE -- C'EST UNE AUTRE SOLUTION Si (vp[i]=2) alors { Afficher("pairs.\n") } sinon { Si (vp[i]=1)) alors { Afficher("impairs.\n") } sinon { Afficher("de parité différente.\n") } } */ } } Algorithme exo3 { constante entier TAILLE <-- 10 variable v1, v2 : vecteur de TAILLE entier nbzero : entier Afficher("Initialisation du vecteur.\n") Initialisation(v1, TAILLE) Remplissage(v1,v2,TAILLE) Afficher("Calcul des << couples >>pairs/impairs.\n") nbzero <-- comptage(v2, TAILLE) Afficher("Il y a ",nbzero, " << couples >> (indice/élément) de parité différente.\n") Affichage(v1,v2,TAILLE) }