Eliminer des occurrences du tableau [ Algorithme + Python ]

Algo et Python 15-07-24
59 0

Travail demandé

Soit le tableau T suivant :

10 7 9 7 10 6 7 4 8 8

Pour chaque élément on élimine ses occurrences et on les remplace par 0

10 7 9 0 0 6 0 4 8 0

On regroupe les éléments restant au début du tableau T

10 7 9 6 4 8 0 0 0 0

Ecrire un programme en Python qui fait le traitement ci-dessus par un tableau T de n (1<=n<=30)

Solution Algorithmique

Pour résoudre ce problème, nous devons suivre un algorithme qui traite un tableau T en supprimant les occurrences de chaque élément, en les remplaçant par 0, puis en regroupant les éléments restants au début du tableau.

Voici les étapes détaillées du principe de cet algorithme :

1- Saisie du tableau T : Saisir ou initialiser un tableau T avec des éléments.

2- Parcourir chaque élément du tableau T :

Pour chaque élément, vérifier s'il a déjà été remplacé par 0.

Si ce n'est pas le cas, remplacer toutes ses occurrences par 0.

3- Regrouper les éléments restants au début du tableau :

Parcourir le tableau et déplacer les éléments non nuls au début du tableau.

Remplir le reste du tableau avec des 0.

4- Affichage du tableau final : Afficher le tableau T après traitement.

Dans cet algorithme, On va utiliser une fonction et 4 procédures :

Déclaration des objets

Objet

Type / Nature


n

entier

t

tableau de 30 entiers

La fonction saisie

Cette fonction retourne un entier n entre 1 et 30 saisi par l'utilisateur.

La procédure remplir

Cette procédure remplit le tableau t de n entiers.

Déclaration des objets

Objet

Type / Nature

i

entier

La procédure afficher_tableau

Cette procédure affiche les éléments du tableau.

Déclaration des objets

Objet

Type / Nature

i

entier

La procédure eliminer_occurrence

Cette procédure vérifie pour chaque élément, s'il a déjà été remplacé par 0. Si ce n'est pas le cas, remplacer toutes ses occurrences par 0.

Déclaration des objets

Objet

Type / Nature

i

entier

j

entier

La procédure organiser

Cette procédure parcourt le tableau , déplacer les éléments non nuls au début du tableau et remplit le reste du tableau avec des 0.

Déclaration des objets

Objet

Type / Nature

i

entier

j

entier

x

entier

Solution en Python

Exécution du programme

Tableau T après élimination des occurrences

Tableau T après le groupement des éléments

Solution en Python et Designer QT

Pour remplir un tableau d'entiers à partir d'une chaîne de caractères en Python, vous pouvez suivre les étapes suivantes :

1- Découper la chaîne de caractères en sous-chaînes contenant les entiers.

2- Convertir chaque sous-chaîne en entier.

3- Ajouter chaque entier au tableau.

Pour créer une application en Python pour supprimer les occurrences de chaque élément, en les remplaçant par 0, puis en regroupant les éléments restants au début du tableau.

1- Créer l'interface graphique avec Qt Designer

a- Ouvrez Qt Designer et créez un nouveau fichier de type Main Window.

b- Ajoutez ces widgets:

QLineEdit nommé 'ch' pour entrer des entiers .

QPushButton nommé 'remplir_bt' pour exécuter le module createTab afin de remplir le tableau à partir de la chaine 'ch'.

QPushButton nommé 'eliminer_bt' pour exécuter le module eliminer_occurrence afin de remplir le tableau à partir de la chaine 'ch'.

QPushButton nommé 'organiser_bt' pour exécuter le module organiser afin de remplir le tableau à partir de la chaine 'ch'.

QLabel nommé 'msg' pour afficher un message d'erreur si ch est vide ou contient des valeurs non numériques .

QLabel nommé 'tablabel' pour afficher les éléments du tableau.

Enregistrez le fichier avec l'extension .ui, par exemple tabtab-2.ui.

2- Créer le script Python pour l'application

Voici un exemple de script Python qui utilise l'interface graphique générée par Qt Designer.

Exécution du programme

Tableau T après élimination des occurrences

Tableau T après le groupement des éléments

0 commentaire

laisser un commentaire

Veuillez noter s'il vous plaît*

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Passion de robotique

Atelier robotique

Construction des robots

Bras robotique

Maison intelligente

But de ce site web

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.

Coordonnées

Zaouiet Kontech-Jemmel-Monastir-Tunisie

+216 92 886 231

medaliprof@gmail.com

Photos des articles

Site robotique réalisé par Mohamed Ali-Prof Info