Séries Exercices 1 - Algorithmique


Exercices en algorithmique
Exercice 1 :
Pour un entier n strictement positif on associe n/2 si n est pair et 3n+1 si n est impair. En réappliquant cette transformation à l’entier obtenu, on définit un algorithme dit de Syracuse. On admettra que pour tout entier n strictement positif de départ on finisse toujours par arriver à 1.
Ecrire un algorithme qui permet de saisir un entier n et d’afficher la liste des entiers obtenus jusqu’à 1, ainsi que le nombre de fois qu’il est nécessaire d’appliquer la transformation pour y arriver.
Voici un exemple de déroulement de l’algorithme :
Exemple d’exécution :
Entrer un entier  > 0  : 10
5      16     8       4        2       1
Le nombre de transformation nécessaire avant d’arriver à 1 est : 6

Exercice 2 :
1.      Ecrire une fonction qui reçoit en paramètre un tableau de taille n et un entier x, qui vérifie qui cet entier x possède son carré dans le tableau (t(i) * t(i)) en retournant un booléen et en arrêtant le parcours une fois trouvée.
2.      Ecrire un programme qui affiches les éléments du tableau qui possède leur carrée dans le même tableau.
         Exemple
1
2
4
7
11
5
16
25
8

Les éléments dans le carrés sont présent : 2, 4, 5

Exercice 3 :
Soit T1 un tableau de 100 valeurs ordonnées de manière croissante.
1.      Ecrire un algorithme permettant de construire deux nouveaux tableaux ordonnés de manière décroissante contenant l’un les valeurs paires, l’autre les valeurs impaires. 
Tableau Initial  T1:
 1
4
13
28
31
33
40
Tableau des valeurs paires T2 :
40
28
4
Tableau des valeurs impaires T3 :
33
31
13
1
2.      Ecrire un algorithme qui permet d’insérer une valeur X dans le tableau T1, supposé triée, de façon à respecter l’ordre des éléments de T1. 
Exemple :
Si N=5 et T1: 
6
8
13
 15
  17
Si X=9 alors T1 devient:
6
8
9
13
15
17
3.      Ecrire un algorithme qui permet de faire le décalage à droite des éléments du tableau T1, un certain nombre de fois. 
Exemple :
Si T1=
1
4
13
28
31
33
40
Nombre de décalage à droite est : 2
T1=
33
40
1
4
13
28
31
4.     Ecrire un algorithme qui élimine toutes les occurrences d’un entier X saisit au clavier. 

Exercice 4 :
Soit A une matrice carrée à deux dimensions
1.      Ecrire un algorithme qui calcul la trace de cette matrice.
      Trace(A)=la somme des éléments diagonaux   
2.      Ecrire l’algorithme qui vérifie si la matrice est triée en ordre croissant ou non. 
3.     Ecrire l’algorithme qui transfère cette matrice A à deux dimensions dans un tableau B à une seule dimension. 

2.      Exercice 5 :
Ecrire un algorithme qui demande un entier N à l’utilisateur et calcule la somme suivante :
Sn=1+1/2!+1/3!+….+1/N! avec  X! =1*2*3*…*X
Exercice 6 :
Ecrire un algorithme qui demande la saisie d’un tableau des entiers T, de mettre les éléments pairs dans un tableau T1 et les éléments impairs dans un tableau T2.
Exercice 7 :
Ecrire un algorithme qui demande la saisie d’un tableau des réels, de le trier par ordre croissant, ensuite demander à l’utilisateur un entier X et l’insérer dans le tableau en gardant ce dernier trié par ordre croissant.
Exercice 8 :
1.      Ecrire une fonction qui prend un entier en paramètre et retourne 1 si cet entier et parfait et 0 sinon.
(Remarque : Un nombre parfait et un entier qui est égal à la somme de ses diviseurs (Exemple : le nombre 6 est parfait car 6=1+2+3)).
2.      Ecrire une fonction qui retourne le nombre des entiers parfaits entre deux entiers passés en paramètres en utilisant la fonction précédente.
Exercice 9 :
1.      Définir une structure Produit caractérisée par les champs Code(numérique), Nom et PrixUnitaire.
2.      Créer une fonction LireProduit qui demande à l’utilisateur les informations d’un enregistrement de type produit pour le lire et le retourner.
3.      Créer une procédure AfficherProduit qui prend un tableau de produits en paramètre et l’affiche à l’écran.
4.     Ecrire un algorithme qui affiche à l’utilisateur le menu suivant :
1:    Lire les produits
2:    Afficher la liste des produits
3:    Quitter le programme
et réalise l’opération demandée par l’utilisateur en utilisant les fonctions définies précédemment.


Previous
Next Post »