53 lines
No EOL
1.8 KiB
Markdown
53 lines
No EOL
1.8 KiB
Markdown
# Notion avancé
|
|
### Difficulté : ***
|
|
by chatGPT
|
|
|
|
***
|
|
# Exercice : Recherche du minimum dans une matrice
|
|
|
|
## Objectif :
|
|
|
|
Créer un programme en Ada qui recherche le minimum dans une matrice carrée de nombres entiers.
|
|
|
|
## Consignes :
|
|
|
|
### 1. Définir la matrice :
|
|
- Crée une matrice carrée de dimensions N x N où N est un entier positif (choisi par l'utilisateur).
|
|
- Les valeurs de la matrice seront des entiers donnés par l'utilisateur.
|
|
|
|
### 2. Lecture de la matrice :
|
|
- Implémente une fonction ou procédure qui permet à l'utilisateur de saisir les éléments de la matrice. L'utilisateur doit entrer les valeurs ligne par ligne.
|
|
- Affiche la matrice à la fin de la saisie pour vérification.
|
|
|
|
### 3. Trouver le minimum :
|
|
- Crée une procédure ou fonction qui parcourt la matrice et trouve le plus petit élément.
|
|
- Retourne la valeur du minimum ainsi que ses indices (ligne, colonne) dans la matrice.
|
|
|
|
### 4. Gestion des erreurs :
|
|
- Si la matrice est vide (dimension N=0), assure-toi que ton programme affiche un message d'erreur et ne tente pas de trouver un minimum.
|
|
- Si l'utilisateur entre une dimension invalide (comme un nombre négatif pour N), le programme doit afficher un message d'erreur et redemander la dimension correcte.
|
|
|
|
### 5. Affichage des résultats :
|
|
- Après avoir trouvé le minimum, affiche-le à l'écran avec les indices correspondants (ligne et colonne).
|
|
|
|
### 6. Optimisation (facultatif) :
|
|
- Essaie de minimiser le nombre de comparaisons en t'arrêtant dès que tu as trouvé le minimum.
|
|
|
|
## Exemple de sortie :
|
|
|
|
|
|
```
|
|
Entrez la dimension de la matrice (N x N) : 3
|
|
Entrez les éléments de la matrice :
|
|
Ligne 1 : 10 12 15
|
|
Ligne 2 : 8 5 20
|
|
Ligne 3 : 17 6 9
|
|
|
|
La matrice est :
|
|
10 12 15
|
|
8 5 20
|
|
17 6 9
|
|
|
|
Le minimum est : 5
|
|
Il se trouve à l'indice (2, 2)
|
|
``` |