Sujet type bac pratique n°7 : zéro d'une fonction par dichotomie et matrice des intervalles (Qt Designer et PyQt5)
Écris tes programmes en Python ou en algorithme et vérifie-les tout de suite, puis ouvre la correction exercice par exercice.
Comme à l'épreuve pratique : l'interface est dessinée dans Qt Designer et enregistrée sous le nom interface.ui, le programme Python la charge avec loadUi. Les noms des objets imposés doivent être respectés. Tout se fait dans l'Atelier Qt de Mission Carthage, sur téléphone comme sur PC. Barème sur 20 points.
Sujet : zéro d'une fonction par dichotomie (20 pts)
La fonction f(x) = x³ + x - 1 s'annule une seule fois sur l'intervalle [0, 1] : f(0) = -1 < 0 et f(1) = 1 > 0. Pour approcher ce zéro par dichotomie, on part de a = 0 et b = 1 ; à chaque étape on calcule le milieu m = (a + b) / 2 : si f(a) et f(m) sont de même signe, le zéro est dans [m, b] et on remplace a par m, sinon on remplace b par m. On s'arrête quand b - a < eps, et la valeur approchée est (a + b) / 2.
Les intervalles successifs sont rangés dans une matrice E de 20 lignes et 2 colonnes de réels : la ligne k contient les bornes a et b après k étapes (E[k][0] = a, E[k][1] = b), et la ligne 0 contient l'intervalle de départ [0, 1]. Si la dichotomie s'arrête après k étapes, le dernier intervalle est la ligne k et la valeur approchée est son milieu.
On veut une application où l'utilisateur choisit la précision eps dans une liste, puis obtient la valeur approchée du zéro (arrondie à 4 chiffres après la virgule) et le nombre d'étapes.
L'interface contient :
- une étiquette avec le texte « Précision : »,
- une liste déroulante nommée cmbEps (QComboBox) qui contient, dans cet ordre, 0.1, 0.01, 0.001 et 0.0001,
- un bouton nommé btnCalculer (QPushButton) avec le texte « Calculer »,
- deux étiquettes nommées lblX et lblEtapes (QLabel) pour les résultats.
Travail demandé
- 1) Concevoir l'interface graphique décrite ci-dessus et l'enregistrer sous le nom interface.ui (3 pts).
- 2) Créer un programme Python et l'enregistrer sous le nom Zero.py (1 pt).
- 3) Dans ce programme, développer une fonction F(x) qui renvoie x³ + x - 1 (2 pts).
- 4) Développer une fonction Dicho(eps, E) qui applique la dichotomie à F sur [0, 1], range chaque intervalle dans la matrice E et renvoie le nombre d'étapes, c'est-à-dire le nombre de fois où l'intervalle est coupé en deux avant que sa longueur soit inférieure à eps (5 pts).
- 5) Développer une fonction Milieu(E, k) qui renvoie le milieu de l'intervalle rangé dans la ligne k de E (2 pts).
- 6) Développer un module Play, appelé par un clic sur le bouton btnCalculer, qui affiche « x ≈ … » (arrondi à 4 chiffres après la virgule) dans lblX et « Étapes : … » dans lblEtapes, pour la précision choisie (4 pts).
- 7) Ajouter les instructions qui chargent l'interface, relient le bouton au module Play et affichent la fenêtre (3 pts).
Exemple : pour la précision 0.0001, lblX affiche « x ≈ 0.6823 » et lblEtapes « Étapes : 14 ».
Correction détaillée
La correction de ce devoir est réservée aux abonnés. Elle donne l'analyse, l'algorithme en notation tunisienne, le programme Python vérifié et les erreurs fréquentes de chaque exercice. Avec un compte gratuit, tu peux ouvrir 3 corrections de ton choix.
Connecte-toi d'abord : créer un compte ou me connecter.
Tu as encore 0 correction(s) gratuite(s) à utiliser.
Il te faut un abonnement actif pour les autres corrections. Voir les tarifs ou demander un code sur WhatsApp, Instagram ou Facebook.
Les corrections gratuites de cet appareil ont déjà été utilisées, avec ce compte ou un autre : chaque appareil a droit à 3 corrections gratuites, quel que soit le nombre de comptes. Pour les autres corrections, il faut un abonnement. Voir les tarifs ou écrire sur WhatsApp.
Mission Carthage est en période de test : le site s'ouvre avec un code d'accès. Demande ton code sur WhatsApp, Instagram ou TikTok, puis tape-le sur missioncarthage.tn.
Cette correction n'est pas encore publiée. Reviens bientôt.
Impossible de charger la correction. Vérifie ta connexion et réessaie.
Toutes les corrections jusqu'au devoir de synthèse3 mois pour 20 TND, offre jusqu'au 30 novembre 2026 Envoyer à un parent pour qu'il paieSujet original écrit pour Mission Carthage, dans le format de l'épreuve pratique d'informatique du bac Sciences de l'informatique. Ce n'est pas un sujet officiel.
Tout le programme : Bac Sciences de l'informatique · Revoir le cours · Tous les devoirs