Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

Département de Mathématique & Informatique

Télécharger au format pdf ou txt
Télécharger au format pdf ou txt
Vous êtes sur la page 1sur 3

Département de Mathématique

&
Informatique

Module : ALGORITHME II

SMI/S3
2021/2022
TD3 : Fonctions/Procédures/Tableaux/Complexité

Exercice 0:
- Écrivez la fonction saisi_tableau (N : entier) : tableau des entiers

qui retourne un tableau de taille N.

- Écrivez la procédure affiche_tableau(m[N]: tableau des entiers)

qui affiche un tableau de taille N.

- Ecrivez un algorithme permettant à l’utilisateur de saisir un nombre quelconque de valeurs,


qui devront être stockées dans un tableau. L’utilisateur doit commencer par entrer le
nombre de valeurs qu’il compte saisir. Il effectuera ensuite cette saisie (appel de la fonction
saisi_tableau). Enfin, une fois la saisie terminée, le programme affichera le tableau
(appel de la fonction affiche_tableau)

Exercice 1:
- Écrivez une procédure valeur_positive_negative (m[N]: tableau des
entiers, S ; P : entier, S ;N : entier) qui prend en argument un tableau de
taille N, et qui permet l’affichage du nombre de valeurs négatives et du nombre de valeurs
positives de ce tableau.

- Ecrivez un algorithme permettant à l’utilisateur de saisir un nombre quelconque de valeurs,


qui devront être stockées dans un tableau. L’utilisateur doit commencer par entrer le
nombre de valeurs qu’il compte saisir. Il effectuera ensuite cette saisie (appel de la fonction
saisi_tableau). Enfin, une fois la saisie terminée, le programme affichera le nombre de
valeurs négatives et le nombre de valeurs positives de ce tableau (appel de la procédure
valeur_positive_negative)

- Calculez la complexité de cet algorithme.


Département de Mathématique
&
Informatique

Exercice 2 :
- Ecrivez une fonction retournant le maximum d’un tableau de taille N.

- Ecrivez une fonction retournant le minimum d’un tableau de taille N.

- Est ce qu’on peut consolider le résultat des deux fonctions précédentes en utilisant une
procédure ? Comment ?

Soit un tableau contenant 50 valeurs réelles. Écrivez un algorithme permettant de trouver


les valeurs min et max (avec les indices correspondant) dans un tableau saisis
préalablement.

- Calculez la complexité de cet algorithme.

Exercice 3 :
- Ecrivez une procédure element_plus_proche qui permet de trouver l’élément le plus
proche d’un entier donnée dans un tableau d’entier, de l’afficher ainsi d’afficher son indice
dans le tableau.

- Ecrivez un algorithme permettant à l’utilisateur de saisir un entier donné afin de chercher


son élément le plus proche dans le tableau initial (appel de la procédure
element_plus_proche).

- Calculez la complexité de cet algorithme.

Exercice 4 :
- Écrivez la fonction saisi_caracteres (N : entier) : tableau de caracters

qui retourne un tableau de caracters de taille N. La constante N doit être préalablement


déclarée, avec la valeur que vous voulez.

- Écrivez la procédure affiche_tableau_caracteres(m[N]: tableau des


caracteres) qui affiche un tableau de caractères de taille N.

- Écrivez la procédure plus_longue_suite_caracteres(m[N]: tableau des


caracteres, S ; c : caractére, S ;k : entier)

qui cherche la plus longue suite de caractères identiques et d’afficher le caractère concerné
ainsi que le nombre de fois qu’il est répété.
Département de Mathématique
&
Informatique

- Ecrivez un algorithme qui permet de saisir un tableau de caractère, de chercher la plus


longue suite de caractères identiques et d’afficher le caractère concerné ainsi que le nombre
de fois qu’il est répété. (en utilisant les fonctions et les procédures précédentes).

- Calculez la complexité de cet algorithme.

Exercice 5 :
- Ecrivez une procédure inverse qui permet de ranger les éléments d'un tableau de N
entiers dans l'ordre inverse

- Ecrivez un algorithme permettant d’afficher un tableau saisi par l’utilisateur dans l’ordre
inverse (appel de la procédure inverse et de la fonction affiche_tableau)

- Calculez la complexité de cet algorithme.

Exercice 6 :
- Ecrivez une procédure decalage_gauche qui permet le décalage à gauche des
éléments d'un tableau.

- Ecrivez un algorithme permettant d’afficher un tableau saisi par l’utilisateur et décalé à


gauche (appel de la procédure decalage_gauche et de la fonction
affiche_tableau)

- Calculez la complexité de cet algorithme.

Exemple :

Exercice 7 :
Soient deux matrices carrées A et B (NxN). Ecrire une fonction qui permet de calculer:

- La transposé de la matrice A

- La matrice S somme des deux matrices A et B

- La matrice P produit des deux matrices A et B.

Calculez la complexité de chaque fonction.

Vous aimerez peut-être aussi