On déclare un Type Vect dans la clause Type Type Vect=Tableau[1..100] de entier ;
1- Fonction Identique(V1,V2 :vect ; N,M :entier) :booleen ;
Var I :entier ; Idem :booleen ;
Debut
Si N<>M
Alors Idem←Faux
Sinon Idem←Vrai ; I←1 ;
Tantque I≤N et Tdem Faire Si V1[I]<> V2[I] Alors Idem←Faux Fsi ;
Fait
Fsi ; Identique←Idem ;
Fin ;
2- Algorithme SupIdem ;
Type Vect=Tableau[1..100] de entier ; Matrice=Tableau[1..100,1..150] de entier ;
Var V1,V2 :Vect ; A :Matrice ; I,J,K,N,M:entier ;
Fonction Identique(V1,V2 :vect ; N,M :entier) :booleen ;
---------- reprendre les actions de la fonction ------------
Debut
Repeter Lire(N) ; Jusqu’à (N>0) et (N≤100) ;
Repeter Lire(M) ; Jusqu’à (M>0) et (M≤150) ;
//Lecture de la Matrice
Pour I ←1 à N Faire Pour J ←1 à M Faire Lire(A[I,J]) ; Fait ; Fait ;
/*Lecture du vecteur
Ecrire(‘Donner un vecteur de taille N’) ;
Pour I ←1 à N Faire Lire(V1[I]) ; Fait ;
/* localiser les colonnes identiques à V1 et les supprimer
J ←1 ;
Tantque J≤ M
Faire
/*récupérer la colonne dans V2
Pour I ←1 à N Faire V2[I]←A[I,J] ; Fait ;
Si Identique(V1,V2, N,N) /*les deux vecteurs ont la même dim.
Alors /*suppression de la colonne J qui revient à décaler les colonnes de droite.
Pour I ←1 à N
Faire Pour K←J à M-1
Faire A[I,K] ← A[I,K+1] ;
Fait ;
Fait ;
M←M-1 /*diminuer le nombre de colonnes sans passer à la colonne suiv, car la
/* colonne décalée peut être aussi identique à V1
Sinon J←J+1
Fsi ;
Fait ;
Ajouter un commentaire
Veuillez vous connecter pour ajouter un commentaire.
Pas encore de commentaires.