procédure pair_impair_generique(E v: vecteur d'entier, E Taille : entier, S vi : vecteur d'entier, S ni: entier, S vp : vecteur d'entier, S np: entier) { variable i : entier np <-- 0 ni <-- 0 Pour i de 0 à Taille - 1 { Si (v[i] mod 2 = 0) alors { vp[np] <-- v[i] np <-- np + 1 } sinon { vi[ni] <-- v[i] ni <-- ni + 1 } } } procedure saisie_vecteur(E/S vect : vecteur d'entier, E nbelts : entier) { variable i : entier Pour i de 0 à nbelts - 1 { Afficher("Saisir le ",i+1,"ème élément.\n") Saisir(vect[i]) } } procedure affichage_vecteur(E vect : vecteur d'entier, E nbelts : entier) { variable i : entier Pour i de 0 à nbelts - 1 { Afficher("Le ", i+1,"ème élément est ", vect[i], ".\n") } } Algorithme Divorce_pair_impair { constante entier TAILLE <-- 20 variable v, vi, vp : vecteur de TAILLE entier nbImpair, nbPair: entier saisie_vecteur(v,TAILLE) pair_impair_generique(v, TAILLE, vi, nbImpair, vp, nbPair) Afficher("Le contenu du vecteur initial est :\n") affichage_vecteur(v,TAILLE) Afficher("Le contenu du vecteur impair est :\n") affichage_vecteur(vi,nbImpair) Afficher("Le contenu du vecteur pair est :\n") affichage_vecteur(vp,nbPair) }