Procédure saisir n avec Procédure remplissage d’un Procédure remplissage d’un tableau avec
contrôle de saisie : tableau v sans contrôle de condition :
saisie : ( remplissage par des entiers >0)
Procédure saisir (@m:entier )
Début Procédure remplir (@ v:tab;m:entier ) Procédure remplir (@t:tab;n:entier )
Répéter Début Début
Ecrire (″m=″);Lire( m ) Pour i de 0 à n-1 faire Pour i de 1 à n-1 faire
Jusqu’à (m dans[5..10]); Ecrire (″v[″,i,″] = ″); Répéter
Fin Lire (v[i]) Ecrire (″t[″,i,″] = ″);
Fin pour Lire (t[i])
fin Jusqu’à (t[i]>0)
Fin Pour
Fin
Procédure remplissage d’un Procédure remplissage d’un Procédure remplissage d’un tableau par
tableau par des entiers au tableau par des lettres des
hasard ( entre 10 et 90 ) : alphabétique majuscule au éléments en ordre :
hasard
Procédure remplir (@t:tab;n:entier ) Procédure remplir (@t:tab;n:entier )
Début Procédure remplir (@t:tab;n:entier ) Début
Pour i de 1 à n-1 faire Début Ecrire (″T[″,0,″] = ″) ; Lire (t[0])
t[i] aléa (10,90) Pour i de 1 à n-1 faire Pour i de 1 à n-1 faire
fin pour t[i] chr( aléa (ord(‘A’),ord(‘Z’)) Répéter
Fin Fin pour Ecrire (″t[″,i,″] = ″);
fin Lire (t[i])
Jusqu’à (t[i]>t[i-1])
Fin Pour
Fin
Procédure remplissage d’un Procédure remplissage d’un Procédure remplissage d’un tableau
tableau tableau par des entiers par des chaines ne contenant que des
par des entiers de deux distinct lettres alphabétiques
chiffres
Procédure remplir (@t:tab;n:entier ) Procédure remplir (@t:tab;n:entier )
Procédure remplir (@t:tab;n:entier ) Début Début
Début Pour i de 1 à n-1 faire Pour i de 1 à n-1 faire
Pour i de 1 à n-1 faire Répéter Répéter
Répéter Ecrire (″t[″,i,″] = ″); Ecrire (″t[″,i,″] = ″);
Ecrire (″t[″,i,″] = ″); Lire (t[i]) Lire (t[i])
Lire (t[i]) Jusqu’à Jusqu’à (verif(t[i])=vrai)
Jusqu’à (10<=t[i]<=99) (recherche(t,i,t[i])=faux) Fin Pour
Fin Pour Fin Pour Fin
Fin Fin
fonction nombre occurrence de Fonction recherche d’un Fonction verif pour verifier si la chaine
x dans tableau T de taille n : élément x dans un tableau T ch ne contient que des lettres
de n éléments alphabétiques
Fonction nbocc(t :tab,n,x :entier):entier
Début fonction recherche(T:tab ,n,x : fonction verif(ch :chaine):booléen
nb 0 entier):booléen Début
Pour i de 0 à n-1 faire Début i0 , test vrai
Si t[i]=x alors i0 , trouve Faux tant que (i<long(ch))et (test==vrai) faire
nbnb+1 tant que (i<n)et (trouve==Faux) faire si (’A’< majus(ch[i])< ‘Z’) alors
fin si si v[i]=y alors ii+1
fin pour trouve Vrai sinon
retourner (nb) sinon testFaux
fin i i+1 finsi
finsi fin tantque
fin tant que retourner( test)
retourner( trouve) fin
fin
Fonction maximum d’un Fonction inverse d’une Fonction somme des éléments de
tableau : chaine ch tableau T de n entiers :
Fonction Maximum(t:tab;n:entier ) : entier Fonction inverse (ch : chaine) : fonction somme (t:tab;n:entier ) : entier
Début chaine Debut
Max t[0] Début S 0
Pour i de 1 à n-1 faire ch1’’’’ Pour i de 0 à n-1 faire
Si t[i] > Max alors Max t[i] Pour i de 0 à long(ch)-1 faire S S + t[i]
Finsi ch1ch[i]+ch1 Fin pour
Fin pour Fin pour Retourner S
Retourner( Max) retourner (ch1) Fin
Fin fin
Fonction somme des diviseurs Fonction nombre des Fonction somme des chiffres d’un entier
d’un entier x : diviseurs d’un entier x : N
fonction sommediv (x :entier ) : entier Fonction nbdiv (x :entier ) : entier Fonction
Début Début sommechiffre(N:entier):entire
S 0 nb0
Pour i de 1 à x faire Pour i de 1 à x faire
début
Si x mod i=0 alors Si x mod i=0 alors S0
S S + i nb nb + i Répéter
Fin pour Fin pour S S + N MOD 10
Retourner S Retourner nb N N DIV 10
Fin Fin
Jusqu’à N = 0
Retourner (S)
fin
Procédure affichage d’un Procédure affichage d’un Procédure extraire à partir d’ un tableau
tableau : tableau avec condition : T les
Procédure affichage( v:tab;n:entier) ( afficher les éléments pairs éléments pairs dans Tp et impairs dans
Début de T) Timp
Pour i de 0 à n-1 faire Procédure affiche ( t:tab;n:entier) Procédure extraire(t,@TP,@Timp:tab;n,@j,@k:entier )
Ecrire (″V[″,i,″] = ″,v[i]); Début Début
Finpour Pour i de 0 à n-1 faire j 0 , k0
fin si t[i] mod 2 = 0 alors Pour i de 0 à n-1 faire
Ecrire (″T[″,i,″] = ″,t[i]); Si(t[i] mod 2 = 0) alors
finsi Tp[j] t[i] ,
Fin pour jj+1
Fin Sinon
Timp t[i]
k k+1
Finsi
Fin pour
Fin
NB :le tableau TP est de taille j
Le tableau Timp est de taille k
Procédure insertion d’un Fonction Fonction ppcm(a,b :entier ):entier
élément x dans un tableau T à pgcd(a,b :entier ):entier Début
une position p début xa
Procédure insertion(@v : tab ;n,x,p : Tantque (a≠b) faire Tantque (x mod b≠0) faire
entier):
Début si(a>b)alors xx+a
Pour i de n à p+1 (pas= -1) faire aa-b fin tantque
t[i]=t[i-1]
fin pour sinon retourner(x)
t[p]=x
fin
bb-a fin
NB : pour insérer un nouvel élément dans finsi
T on doit :
1) décaler les éléments de T vers la droite
fin tantque
pour vider la position p retourner(a)
2) insérer x dans sa position p
fin
retourner v
Fin