Exercices td algorithmique structures controle conditionnell

Exercices td algorithmique structures controle conditionnell

Télécharger PDF

Introduction aux Exercices d'Algorithmique

Ce document présente une série d'exercices d'algorithmique conçus pour renforcer la compréhension des structures de contrôle conditionnelles, des structures répétitives, ainsi que l'utilisation des procédures et des fonctions. Ces exercices sont fondamentaux pour le développement de la logique de programmation.

Exercices sur les Structures de Contrôle Conditionnelles

1. Résolution d'une Équation du Second Degré

Écrire un algorithme permettant de résoudre une équation du second degré de la forme ax² + bx + c = 0. La solution, si elle existe, est donnée par la formule quadratique : x = (-b ± √(b² - 4ac)) / 2a. Il est demandé de réaliser cet algorithme une première fois, puis de le réécrire en utilisant l'instruction SELON QUE (ou switch case) pour gérer les différents cas possibles en fonction du discriminant (positif, nul ou négatif).

2. Calcul de la Durée de Vol

Écrire un algorithme qui calcule la durée de vol en heures et minutes, connaissant l'heure de départ et l'heure d'arrivée.

  • **Cas A :** On considère que le départ et l'arrivée ont lieu le même jour.
  • **Cas B :** On suppose que la durée de vol est inférieure à 24 heures, mais qu'elle peut avoir lieu le lendemain du départ.

3. Tri de Trois Valeurs Entières

Écrire un algorithme qui lit trois valeurs entières (A, B et C) et qui permet de les trier par échanges successifs. Afficher ensuite les valeurs dans l'ordre croissant.

4. Calculatrice Simple

Écrire un algorithme de calculatrice permettant la saisie d'un premier entier (a), de l'opération (+, –, *, / : ces symboles sont des caractères) et d'un deuxième entier (b). L'algorithme doit ensuite afficher le résultat de l'opération choisie.

Exercices sur les Structures Répétitives

1. Somme et Moyenne des Entiers

Écrire un algorithme qui demande un nombre de départ, et qui calcule la somme des entiers de 1 jusqu'à ce nombre. Par exemple, si l'on entre 4, l'algorithme doit calculer : 1 + 2 + 3 + 4 = 10. Réécrire ensuite l'algorithme pour calculer cette fois la moyenne de ces entiers.

2. Somme des Prix d'Articles

Écrire l'algorithme qui affiche la somme des prix d'une suite d'articles en DH (entiers) saisis par l'utilisateur. La saisie des prix doit se terminer lorsque l'utilisateur entre la valeur zéro.

3. Recherche du Plus Grand Nombre et de son Rang

Écrire un algorithme qui demande successivement 10 nombres à l'utilisateur, et qui affiche à la fin le plus grand de ces 10 nombres ainsi que son rang (sa position) dans la liste saisie.

Exemple :

  • Entrez le nombre numéro 1 : 13
  • Entrez le nombre numéro 2 : 17
  • ...
  • Entrez le nombre numéro 10 : 5
  • Le plus grand de ces nombres est : 17
  • C'était le 2ème nombre saisi.

4. Jeu de Deviner le Nombre

Écrire un algorithme mettant en œuvre le jeu suivant entre deux joueurs : Le premier utilisateur saisit un entier que le second joueur doit deviner. Pour cela, le second joueur a le droit à autant de tentatives qu'il souhaite. À chaque échec, le programme lui indique si l'entier à deviner est plus grand ou plus petit que sa proposition. Un score est affiché lorsque l'entier est trouvé.

Exercices sur les Procédures et Fonctions

1. Fonction MAXIMUM

Écrire une fonction nommée MAXIMUM qui permet de retourner le plus grand de trois nombres réels donnés en entrée.

2. Fonction MINIMUM

Écrire une fonction nommée MINIMUM qui permet de retourner le plus petit de trois nombres réels donnés en entrée.

3. Procédure MAX_MIN

Écrire une procédure nommée MAX_MIN qui permet de déterminer et d'afficher le maximum et le minimum de trois nombres réels. Cette procédure doit faire appel à la fonction MAXIMUM précédemment définie.

4. Fonction PGCD (Plus Grand Commun Diviseur)

Écrire une fonction nommée FONCT_PGCD qui retourne le PGCD de deux nombres entiers. Implémenter cette fonction de deux manières différentes :

  • **Méthode 1 :** En utilisant la technique de soustraction répétée : soustraire le plus petit des deux entiers du plus grand jusqu'à ce qu'ils soient égaux.
  • **Méthode 2 :** En utilisant l'algorithme d'Euclide. Implémenter cette version en utilisant d'abord la structure TANT QUE, puis une seconde fois en utilisant la structure RÉPÉTER JUSQU'À pour une approche alternative.

Foire Aux Questions (FAQ)

Qu'est-ce qu'une structure de contrôle conditionnelle en algorithmique ?

Une structure de contrôle conditionnelle permet à un algorithme d'exécuter différentes séquences d'instructions en fonction de la vérification d'une ou plusieurs conditions logiques. Les exemples courants incluent les instructions SI...ALORS...SINON et SELON QUE, qui dirigent le flux d'exécution du programme.

Quel est l'avantage d'utiliser des fonctions et procédures dans la conception d'algorithmes ?

L'utilisation de fonctions et procédures offre plusieurs avantages, tels que la modularité du code (découper un problème complexe en sous-problèmes gérables), la réutilisabilité (éviter la répétition de code), l'amélioration de la lisibilité et la facilité de maintenance. Elles permettent une meilleure organisation et abstraction des tâches.

En quoi l'algorithme d'Euclide est-il pertinent pour le calcul du PGCD ?

L'algorithme d'Euclide est une méthode très efficace pour calculer le Plus Grand Commun Diviseur (PGCD) de deux nombres entiers. Sa pertinence réside dans sa rapidité et sa simplicité. Il est basé sur le principe que le PGCD de deux nombres reste le même si l'on remplace le plus grand nombre par la différence entre les deux nombres ou, de manière plus optimisée, par le reste de leur division euclidienne, réduisant ainsi progressivement les nombres jusqu'à trouver le PGCD.

Partagez vos remarques, questions ou propositions d'amélioration ici...

Enregistrer un commentaire (0)
Plus récente Plus ancienne

Publicité 1

Publicité 2