🔝 Recherche du Maximum : Cours & Principes
📖 1. Définition
La recherche du maximum dans un tableau est un traitement séquentiel qui consiste à examiner l’ensemble des valeurs numériques pour déterminer la plus grande d’entre elles.
⚙️ 2. Principe de l’algorithme
Le fonctionnement repose sur les étapes clés suivantes :
- Stocker le premier élément du tableau dans une variable de garde (
Mx ou max).
- Parcourir le reste du tableau à l’aide d’une boucle itérative.
- Comparer chaque élément courant
T[i] avec le maximum provisoire.
- Mettre à jour le maximum dès qu’une valeur strictement supérieure est rencontrée, puis retourner le résultat final.
⚠️ Note très importante :
L’utilisation de la fonction prédéfinie en Python max() est strictement hors programme dans le cadre des épreuves d’informatique. Vous devez obligatoirement implémenter la logique algorithmique du parcours itératif et des comparaisons.
📝 3. Exercice d’application
Situation : Lors d’une étude météorologique, les températures maximales enregistrées chaque jour de la semaine dans une ville doivent être analysées pour identifier le jour le plus chaud.
Écrire un programme modulaire permettant de saisir les températures, de rechercher la valeur maximale à l’aide d’une fonction, et d’afficher le pic de température.
Donner la solution sous forme d’algorithme et sa traduction en programme Python.
Correction détaillée
💻 Programme Principal (Algorithme)
Algorithme Station_Meteo_Maximum
DEBUT
SaisieTaille(N)
RemplirTableau(Temperatures, N)
MaxVal ← Recherche_Max(Temperatures, N)
AfficherResultat(MaxVal)
FIN
📋 Tableaux de Déclaration (TDNT & TDOG)
TDNT
| Type |
Structure |
| Tab |
Tableau de 50 entiers |
TDOG (avec les noms des modules)
| Objet |
Type / Nature |
| Temperatures |
Tab |
| N, MaxVal |
Entier |
| SaisieTaille |
Procédure |
| RemplirTableau |
Procédure |
| Recherche_Max |
Fonction |
| AfficherResultat |
Procédure |
⚙️ Liste des Modules et TDOL
1. Procédure SaisieTaille
Procedure SaisieTaille(@n: Entier)
DEBUT
Répéter
Ecrire("Donner le nombre de jours (entre 2 et 50) : ")
Lire(n)
Jusqu'à n dans [2..50]
FIN
TDOL : Aucun objet local.
2. Procédure RemplirTableau
Procedure RemplirTableau(@t: Tab, n: Entier)
DEBUT
Pour i de 0 à n-1 Faire
Ecrire("Température jour ", i+1, " : ")
Lire(t[i])
Fin Pour
FIN
TDOL : i (Entier)
3. Fonction Recherche_Max
Fonction Recherche_Max(t: Tab, n: Entier) : Entier
DEBUT
mx ← t[0]
Pour i de 1 à n-1 Faire
Si t[i] > mx Alors
mx ← t[i]
FinSi
Fin Pour
Retourner mx
FIN
TDOL : i, mx (Entiers)
4. Procédure AfficherResultat
Procedure AfficherResultat(valMax: Entier)
DEBUT
Ecrire("La température maximale enregistrée est : ", valMax)
FIN
TDOL : Aucun objet local.
🐍 Version Python (Traduction complète)
def saisie_taille():
n = int(input("Nombre de jours (2-50) : "))
while not (2 <= n <= 50):
n = int(input("Erreur. Nombre de jours (2-50) : "))
return n
def remplir_tableau(n):
return [int(input(f"Température jour {i+1} : ")) for i in range(n)]
def recherche_max(t, n):
mx = t[0]
for i in range(1, n):
if t[i] > mx:
mx = t[i]
return mx
def afficher_resultat(val_max):
print("La température maximale enregistrée est :", val_max)
# Programme Principal
N = saisie_taille()
Temperatures = remplir_tableau(N)
MaxVal = recherche_max(Temperatures, N)
afficher_resultat(MaxVal)