BTS-SRI
Lycée Alkhawarizmi
Algorithmique
TP N° : Programmation C++
Exercice I
Déclarer un tableau A de taille 5.
Faire la saisie et l’affichage du tableau A en utilisant :
a) for
b) while
c) do …..while
Exercice II
1) Déclarer deux tableaux d’entiers A et B de tailles respectivement N=8 et M=10.( Les tailles N et M à définir
par #define )
2) Avec la fonction aléatoire rand( ), remplir le tableau A avec des valeurs comprises entre 1 et 20, et le
tableau B avec des valeurs comprises entre 21 et 40.
3) Copier ensuite dans un tableau C, le tableau A suivi de B.
Exercice III
Réaliser un programme qui permet de saisir des entier dans un tableau A de taille 5. Mais le remplissage ne
doit être possible que pour des valeurs comprises entre 10 et 20.
1) Afficher le tableau A.
2) Rechercher et afficher les valeurs maximale et minimale du tableau ainsi que leurs positions (indices).
3) Trier les éléments du tableau A par ordre croissant.
4) Développer ensuite le programme pour qu’il supprime les multiples de 5 et entasse le reste dans le même
tableau A.
5) Afficher de nouveau le tableau A.
Exercice IV
Etant donné le tableau A suivant:
A[ ]={ 5, 18, -7, 52, -25, 42, 13, -35, 12, -15, -29, 60}
En utilisant le formalisme pointeur constant :
1) Afficher le tableau A
2) Trouver le maximum et le minimum des valeurs du tableau A.
3) Ranger les valeurs positives du tableau A dans un tableau B et les valeurs négatives dans un tableau C.
Afficher les tableaux B et C.
4) Classer les valeurs du tableau A par ordre croissant. Afficher le tableau A.
Exercice V
Soit le début d'un programme:
#include<iostream>
using namespace std;
main()
{
int A= 1, B = 3, C=5;
int *p1, *p2;
p1 = &A;
p2 = &B;
}
1) Afficher les adresses de p1, A, p2 et B.
2) Afficher la différence p1-p2;
3) A l’aide du pointeur p1, modifier le contenu de A par celui de B. Afficher A et B.
3) A l'aide des deux pointeurs, afficher les contenus de A et B .
5) Afficher p1 et p1++
6) Afficher p2 et ++p2
7) pointer p1 sur la variable C puis afficher *p1 et C
Exercice VI
Refaire l’exercice IV, en utilisant le formalisme pointeur variable.
Exercice VII
En utilisant le formalisme pointeur variable, écrire un programme qui demande à l'utilisateur de :
1) Déclarer un tableau d’entier de taille 20
2) Remplir le tableau par des nombres aléatoire compris entre 1 et 20.
3) Supprimer toutes les répétitions de chaque nombre et tasser le tableau.
4) Trier par ordre croissant les éléments restant (tri à Bulles).
5) Insérer les nombres qui manquent de façon à avoir les éléments allant de 1 à 20. Afficher les
éléments insérés.
Exercice VIII (Contrôle 2016-2017)
Soit le début de programme suivant :
#include<iostream>
#include<cmath>
using namespace std;
int main()
{
double T[10]={ 86, 13, 54, 38, 56, 98, 43, 22, 27, 39};
double *p,*pmin;
int i,imax;
Faire un copie/coller de ce morceau de programme de cette feuille vers l’éditeur codeblocks.
Répondez aux questions suivantes dans la suite du programme.
T étant un tableau d’éléments dont aucun ne se répète.
1. Afficher à l’écran les éléments du tableau.
2. Rechercher imax l’indice de la valeur maximale du tableau. Afficher imax et la valeur maximale.
3. Rechercher pmin l’adresse de la valeur minimale du tableau. Afficher pmin, la valeur minimale du tableau et son
indice.
Soit la suite de nombre .
4. Calculer les éléments de cette suite pour et les stocker dans le tableau T, tel que .
5. Calculer Y égale à la somme des éléments de T : . Afficher Y et la comparer, de vue à .
6. Ecrire une fonction « affichage » qui affiche le message "Fin du contrôle !". Appeler cette fonction depuis « main ».