M1102-TD2 Exercie4 Corrigé

[Algo]
procedure GenereTabInt (TabInt : in_out tableau_de entier)
debut

declarer Val : entier;
pour (i variant_de 0 a taille (TabInt) – 1)
faire
afficher ("entrer la ", i, "eme valeur du tableau : ");
saisir (Val);
TabInt [i] <- Val;
ffaire
fin

procedure AfficheTabInt (TabInt : in tableau_de entier)
debut
pour (i variant_de 0 a taille(TabInt) – 1)
faire
afficher (TabInt [i], " ");
ffaire
ligne_suivante;
fin

algorithme UtilisationDeAfficheTabIntEtDeGenereTabInt
debut
declarer N : entier_naturel;
afficher ("entrer la taille du tableau : ");
saisir (N);

declarer TabInts : tableau_de N entier;

GenereTabInt (TabInts);

AfficheTabInt (TabInts);
fin
[/Algo]

M1102-TD2 Exercice5

Ecrire la procedure GenereTabInt () de profil :
[Algo]procedure GenereTabInt (TabInt : in_out tableau_de entier, Min : in entier, Max : in entier);[/Algo]
Cette procédure doit générer un tableau le tableau TabInt dont tous les éléments sont tirés aléatoirement entre les bornes Min et Max. Ensuite, réécrire l’algorithme de l’exercice 1 pour qu’il utilise cette procédure.

Remarque : pour générer un nombre aléatoire entre Min et Max, utiliser la fonction Rand () de profil :
[Algo]fonction Rand (Min : in entier, Max : in entier) renvoie entier;[/Algo]

M1102-TD2 Exercie5 Corrigé

[Algo]
procedure GenereTabInt (TabInt : in_out tableau_de entier, Min : in entier, Max : in entier)
debut

declarer Val : entier;
pour (i variant_de 0 a taille (TabInt) – 1)
faire
Val <- Rand (Min, Max);
TabInt [i] <- Val;
ffaire
fin

procedure AfficheTabInt (TabInt : in tableau_de entier)
debut
pour (i variant_de 0 a taille(TabInt) – 1)
faire
afficher (TabInt [i], " ");
ffaire
ligne_suivante;
fin

algorithme UtilisationDeAfficheTabIntEtDeGenereTabInt
debut
declarer N : entier_naturel;
afficher ("entrer la taille du tableau : ");
saisir (N);

declarer TabInts : tableau_de N entier;

GenereTabInt (TabInts, 0, 100);

AfficheTabInt (TabInts);
fin
[/Algo]

M1102-TD2 Exercice6

Ecrire la procédure AfficheTabInt () qui affiche tous les éléments du tableau passé en paramètre, séparés par des espaces, à raison de 5 éléments par ligne (sans utiliser la fonction modulo ()).

Faire la trace de votre procédure.

M1102-TD2 Exercie6 Corrigé

[Algo]
procedure GenereTabInt (TabInt : in_out tableau_de entier, Min : in entier, Max : in entier)
debut

declarer Val : entier;
pour (i variant_de 0 a taille (TabInt) – 1)
faire
Val <- Rand (Min, Max);
TabInt [i] <- Val;
ffaire
fin

procedure AfficheTabInt (TabInt : in tableau_de entier)
debut

//cpt designe le nombre d’affichage déjà effectué
declarer cpt :entier_naturel;
cpt <- 0;

pour (i variant_de 0 a taille(TabInt) – 1)
faire

afficher (TabInt [i], " ");
cpt <- cpt + 1;
si (cpt vaut 5)
ligne_suivante;
cpt <- 0;
fsi
ffaire
fin

algorithme UtilisationDeAfficheTabIntEtDeGenereTabInt
debut
declarer N : entier_naturel;
afficher ("entrer la taille du tableau : ");
saisir (N);

declarer TabInts : tableau_de N entier;

GenereTabInt (TabInts, 0, 100);

AfficheTabInt (TabInts);
fin[/Algo]

M1102-TD2 Exercice7

Ecrire la procédure AfficheTabInt () qui affiche tous les éléments du tableau passé en paramètre, séparés par des espaces, à raison de 5 éléments par ligne (en utilisant la fonction modulo ()).

Faire la trace de votre procédure.

M1102-TD2 Exercie7 Corrigé

[Algo]
procedure GenereTabInt (TabInt : in_out tableau_de entier, Min : in entier, Max : in entier)
debut

declarer Val : entier;
pour (i variant_de 0 a taille (TabInt) – 1)
faire
Val <- Rand (Min, Max);
TabInt [i] <- Val;
ffaire
fin

procedure AfficheTabInt (TabInt : in tableau_de entier)
debut

//cpt designe le nombre d’affichage déjà effectué
declarer cpt :entier_naturel;
cpt <- 0;

pour (i variant_de 0 a taille(TabInt) – 1)
faire

afficher (TabInt [i], " ");
cpt <- cpt + 1;
si (modulo (cpt, 5) vaut 0)
ligne_suivante;
fsi
ffaire
fin

algorithme UtilisationDeAfficheTabIntEtDeGenereTabInt
debut
declarer N : entier_naturel;
afficher ("entrer la taille du tableau : ");
saisir (N);

declarer TabInts : tableau_de N entier;

GenereTabInt (TabInts, 0, 100);

AfficheTabInt (TabInts);
fin[/Algo]

M1102-TD2 Exercice8

Ecrire la procédure AfficheTabInt () qui affiche tous les éléments du tableau passé en paramètre, séparés par des tirets (caractère '-'), à raison de 5 éléments par ligne.

Faire la trace de votre procédure. On doit constater que c’est laid. Corriger le problème de façon à avoir un plus bel affichage.

M1102-TD2 Exercie8 Corrigé

[Algo]
procedure GenereTabInt (TabInt : in_out tableau_de entier, Min : in entier, Max : in entier)
debut

declarer Val : entier;
pour (i variant_de 0 a taille (TabInt) – 1)
faire
Val <- Rand (Min, Max);
TabInt [i] <- Val;
ffaire
fin

procedure AfficheTabInt (TabInt : in tableau_de entier)
debut

//cpt designe le nombre d’affichage déjà effectué
declarer cpt :entier_naturel;
cpt <- 0;

pour (i variant_de 0 a taille(TabInt) – 1)
faire

afficher (TabInt [i]);
cpt <- cpt + 1;
si (modulo (cpt, 5) vaut 0)
ligne_suivante;
sinon
afficher (" – ");
fsi
ffaire
fin

algorithme UtilisationDeAfficheTabIntEtDeGenereTabInt
debut
declarer N : entier_naturel;
afficher ("entrer la taille du tableau : ");
saisir (N);

declarer TabInts : tableau_de N entier;

GenereTabInt (TabInts, 0, 100);

AfficheTabInt (TabInts);
fin
[/Algo]

M1102-TD2 Exercice9

Ecrire la procédure AfficheTabInt () qui affiche tous les éléments du tableau passé en paramètre, séparés par un caractère également passé en paramètre, à raison de 5 éléments par ligne.