
Dans ce contexte, on envisage de concevoir une application, enrichie par une interface graphique, qui simule l’étude de la monotonie de la suite 𝑈𝑛 définit comme suit :

Cette application permet :
- de saisir un entier n (5 ≤ n ≤ 15) représentant le nombre de termes de la suite Un,
- de saisir un entier x (0 ≤ x ≤ 9) représentant le premier terme de la suite (U0),
- de remplir un tableau T par les n premiers termes de la suite,
- d’afficher les termes de la suite et leur sens de variation (monotonie de la suite).
Exemple :
Pour n = 10 et x = 3, le tableau T contenant les 10 premiers termes de la suite est le suivant :

La suite est strictement décroissante
Travail demandé
1. Créer l’interface graphique illustrée dans la figure Fig-1 suivante et l’enregistrer sous le nom InterfaceSuite.

2) Créer un programme en python et l’enregistrer sous le nom Suite, dans lequel on demande :
a. D’implémenter l’algorithme suivant de la procédure Termes permettant de remplir un tableau T par les n premiers termes de la suite 𝐔𝐧.

b. D’écrire une fonction Monotonie (T, n) qui permet de retourner la monotonie de la suite (strictement croissante, strictement décroissante ou constante).
c. D’écrire une fonction Former (T, n) qui retourne une chaîne de caractères composée par les n premiers termes de la suite séparés par le caractère espace.
d. D’écrire un module Play, qui s’exécute suite au clic sur le bouton "Vérifier", permettant :
- de récupérer les valeurs de n et x saisis, puis de s’assurer de leurs validités et d’afficher, le cas échéant, le message adéquat via le label dédié à l’affichage, comme illustré dans les figures Fig-2, Fig-3, Fig-4 et Fig-5.
- d’afficher les termes de la suite et leur sens de variation (monotonie de la suite) en faisant appel aux modules Termes, Monotonie et Former comme illustré dans les figures Fig-6, Fig-7 et Fig-8.
e. D’exploiter l’annexe présentée ci-après tout en apportant les modifications nécessaires à l’intégration de l’interface graphique InterfaceSuite.


Pour créer une application en Python et Designer QT afin de concevoir une application, enrichie par une interface graphique, qui simule l’étude de la monotonie de la suite 𝑈𝑛, on va suivre ces étapes:
a- Ouvrez Qt Designer et créez un nouveau fichier de type Main Window.
b- Ajoutez ces widgets:
QLabel nommé 'affichage' pour afficher les messages générés par le programme
QLineEdit nommé 'n' pour entrer l'entier n.
QLineEdit nommé 'x' pour entrer l'entier x.
QPushButton nommé 'verifier_bt' pour exécuter le module Play()

Enregistrez le fichier avec l'extension .ui, par exemple InterfaceSuite.ui.
Voici un exemple de script Python qui utilise l'interface graphique générée par Qt Designer.
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 |
# ========================================================= # IMPORTATION DES BIBLIOTHÈQUES # ========================================================= from PyQt5.uic import loadUi # Chargement de l’interface graphique (.ui) from PyQt5.QtWidgets import QApplication # Gestion de l'application PyQt5 from numpy import * # Utilisation des tableaux (array) # ========================================================= # CRÉATION DU TABLEAU POUR STOCKER LA SUITE # ========================================================= # Tableau de 15 éléments pour enregistrer les termes de la suite t = array([int] * 15) # ========================================================= # FONCTION : CALCUL DES TERMES DE LA SUITE # ========================================================= def terme(t, n, x): """ Cette fonction génère les n premiers termes de la suite. x est le premier terme. """ # Initialisation du premier terme t[0] = x # Calcul des termes suivants de la suite for i in range(1, n): t[i] = t[i - 1] + (t[0] % 3 - 1) # Chaque terme dépend du précédent + une constante basée sur x # ========================================================= # PROCEDURE : ANALYSE DE LA MONOTONIE # ========================================================= def monotonie(t, n): """ Cette procédure analyse si la suite est : - croissante - décroissante - constante """ # Création du texte d’affichage liste = 'Termes:' # Ajout de tous les termes de la suite dans une chaîne for i in range(n): liste = liste + ' ' + str(t[i]) # Analyse de la variation entre les deux premiers termes if t[0] < t[1]: liste = liste + ' strictement croissante' elif t[0] > t[1]: liste = liste + ' strictement décroissante' else: liste = liste + ' constante' # Affichage du résultat dans l’interface graphique windows.affichage.setText(liste) # ========================================================= # FONCTION PRINCIPALE (BOUTON CLIQUÉ) # ========================================================= def play(): # Effacer l'ancien résultat affiché windows.affichage.clear() # Vérifier que l'utilisateur a saisi n if windows.n.text() != '': # Conversion de n en entier n = int(windows.n.text()) # Vérifier que n est dans l'intervalle autorisé if 5 <= n <= 15: # Vérifier que x est bien saisi if windows.x.text() != '': # Conversion de x en entier x = int(windows.x.text()) # Vérifier que x est un chiffre (0 à 9) if 0 <= x <= 9: # Calcul de la suite terme(t, n, x) # Analyse de la monotonie monotonie(t, n) else: windows.affichage.setText("x doit être compris entre 0 et 9") else: windows.affichage.setText("Veuillez saisir x") else: windows.affichage.setText("n doit être compris entre 5 et 15") else: windows.affichage.setText("Veuillez saisir le nombre de termes de la suite") # ========================================================= # CRÉATION DE L'APPLICATION PYQT5 # ========================================================= app = QApplication([]) # Chargement de l’interface graphique créée avec Qt Designer windows = loadUi("InterfaceSuite.ui") # Affichage de la fenêtre windows.show() # Connexion du bouton "verifier" à la fonction play() windows.verifier_bt.clicked.connect(play) # Lancement de la boucle principale de l’application app.exec_() |
La robotique éducative joue un rôle important dans l'éducation des enfants et des jeunes en les aidant à acquérir des compétences en science et technologie.
Dans ce cadre notre site web représente une excellente ressource pour les parents, les enseignants et les enfants qui souhaitent découvrir la robotique.
Zaouiet Kontech-Jemmel-Monastir-Tunisie
Site robotique réalisé par Mohamed Ali Haj Salah - Prof Info