0% ont trouvé ce document utile (0 vote)
42 vues3 pages

DC1 Ab

Le document est un devoir de contrôle pour une classe de 4 SI sur le thème de l'algorithme et de la programmation. Les élèves doivent créer un dossier de travail, extraire des fichiers, et développer une solution modulaire pour déterminer la colonne dominante d'une matrice à partir d'un fichier. Les tâches incluent la création d'une interface graphique et le développement de plusieurs modules pour remplir et afficher les données de la matrice.

Transféré par

Rjab Karim
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
42 vues3 pages

DC1 Ab

Le document est un devoir de contrôle pour une classe de 4 SI sur le thème de l'algorithme et de la programmation. Les élèves doivent créer un dossier de travail, extraire des fichiers, et développer une solution modulaire pour déterminer la colonne dominante d'une matrice à partir d'un fichier. Les tâches incluent la création d'une interface graphique et le développement de plusieurs modules pour remplir et afficher les données de la matrice.

Transféré par

Rjab Karim
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Classe : 4 SI

Lycée Utique
Matière : Algorithme & programmation
Enseignant : Dkhil Aziza Date : Lundi 21 Novembre 2024 Durée : 1 H 30
Devoir de Contrôle N°2 (abscent)
Nom & Prénom : ……………………………………………………………… Num : ………… Note : ………… /20

Important :
• Toutes les ressources à utiliser se trouvent dans le répertoire Ressources situé sur la racine du disque C.
• Il est demandé au candidat :
o De créer, dans le répertoire Bac2025 situé sur la racine du disque C, un dossier de travail portant son
Nom&Prénom et dans lequel il doit enregistrer, au fur et à mesure, tous les fichiers solutions de ce sujet.
o De copier, dans son dossier de travail le fichier AlgoRessources1.rar situé dans C:\Ressources, puis
extraire son contenu, en utilisant le mot de passe AlGo1, dans ce même dossier de travail.
o D’élaborer une solution modulaire au problème posé.
o De vérifier à la fin de l’épreuve que tous les fichiers créés sont dans son dossier de travail.

Soit A une matrice de N*M entiers distincts, chaque ligne contient un seul maximum.
On désigne par colonne dominante d’une matrice, la colonne qui
contient le plus de maximums des lignes de cette matrice.
Exemple : Pour n=5 et m= 4 et la matrice A ci-contre, la colonne numéro
2 est la colonne dominante puisque parmi les 5 maximums des 5 lignes
il y a 3 maximums qui se trouvent dans la 2ème colonne.
Pour déterminer la colonne dominante de la matrice A, on se propose
d’appliquer la méthode suivante :
1- Créer et remplir un fichier d’enregistrement « Fmax.dat » à partir de la matrice A. Chaque
enregistrement du fichier contient les champs suivants :
• Vmax :la valeur du maximum d’une ligne de la matrice A.
• NL : le numéro de la ligne
• NC : le numéro de la colonne.
2- Parcourir le fichier « Fmax.dat » pour déterminer le numéro de la colonne dominante ainsi que
le nombre des maximums dans cette colonne.
Exemple : Pour la matrice A, le fichier « Fmax.dat » contiendra les enregistrements suivants :

Donc la colonne dominante est la colonne numéro 2, et le nombre de maximums est égal à 3
En disposant du fichier « mat.txt » on vous demande de créer l’application suivantes :

• Remplir une matrice A à partie du fichier « mat.txt »,


• Remplir le fichier « Fmax.dat » comme décrit ci-dessus,
• Afficher le numéro de colonne dominante ainsi que le nombre de maximum dans cette colonne :
Travail demandé :
1- Compléter l’interface graphique « devoir.ui » suivant le modèle présenté ci-dessus.

Page 1|3
2- Ouvrir le fichier nommé « devoir.py » situé dans votre dossier de travail dans lequel vous apportez les
modifications suivantes :
a. Développer le module « Remplir », qui s’exécute suite à un clic sur le bouton « Remplir », et
permettant de :
• Remplir la matrice A à partir du fichier « mat.txt »,
• Afficher la matrice dans le listWidget correspondant,
• Afficher le nombre de lignes de la matrice dans le lineEdit correspondant,
• Afficher le nombre de colonnes de la matrice dans le lineEdit correspondant.
b. Développer le module « Afficher », qui s’exécute suite à un clic sur le bouton « Afficher », permettant
de :
• Vérifier si la matrice est remplie, afficher un message d’erreur via QMessageBox, si elle n’est
pas remplie,
• Remplir le fichier « Fmax.dat », dans le cas contraire
• Afficher le fichier « FMax.dat » dans le tableWidget correspondants.
c. Développer un module « Resultat », qui s’exécute suite à un clic sur le bouton « Résultat », et
permettant de :
• Afficher le numéro de la colonne dominante dans le lineEdit correspondant,
• Afficher le nombre des maximums se trouvant dans cette colonne dans le lineEdit
correspondant.
Barème :
Question : Nbre Points Note
Interface graphique 2.5
Décomposition en modules utiles à la solution 0.5
Appels des modules 0.5
Structures de données adéquates pour le problème 2
Module Remplir 7
Module Afficher 4
Module Resultat 3.5

Page 2|3
Exemples d’interface

Page 3|3

Vous aimerez peut-être aussi