Afficher les nombres super premiers du tableau [ Algorithme +Python ]

Algo et Python 22-07-24
75 0

Travail demandé

On se propose d’écrire un programme intitulé ‘super’ qui permet de remplir un tableau T par N  entiers de quatre chiffres chacun (avec 1 ≤  N ≤ 30) puis d’afficher les nombres super premiers de T.

Sachant que :

- un nombre est dit premier s’il est divisible par 1 et lui-même

- un nombre est dit super premier si à chaque élimination du chiffre de droite, le nombre obtenu reste premier jusqu’à obtenir un nombre premier formé d’un seul chiffre.

Exemple :  Si N = 9

1 2 3 4 5 6 7 8 9
Et T = 3004 1970 3797 2356 5939 8901 7133 1995 9350

Le programme affichera : 3797 et 5939

En effet, 3797 sera affiché car

3797 est premier
et si on enlève 7, le nombre obtenu 379 reste premier
et si on enlève 9, le nombre obtenu 37 reste premier
et si on enlève 7, le nombre obtenu 3 reste premier.

Solution Algorithmique

Pour remplir un tableau T de entiers de quatre chiffres chacun et afficher les nombres super premiers, nous allons suivre les étapes suivantes :

1- Remplissage du tableau Tsaisir n entiers formés de quatre chiffres (entre 1000 et 9999).

2- Vérification des nombres premiers : Écrire une fonction pour vérifier si un nombre est premier. Un nombre est premier s'il n'a pas de diviseurs autres que 1 et lui-même.

3- Vérification des nombres super premiers : Écrire une fonction pour vérifier si un nombre est super premier. Un nombre est super premier si, en supprimant successivement les chiffres de droite, tous les nombres intermédiaires sont premiers jusqu'à obtenir un nombre premier formé d’un seul chiffre.

4- Affichage des nombres super premiers : parcourir le tableau T et afficher les nombres qui sont super premiers.

Dans cet algorithme, On va utiliser trois fonctions et deux 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 fonction test_premier

Cette fonction teste si un entier est premier ou non .

Déclaration des objets

Objet

Type / Nature

i

entier

x

entier

La fonction test_super

Cette fonction teste si un entier est super ou non .

Déclaration des objets

Objet

Type / Nature

x

entier

ch

chaîne des caractères

La procédure recherche_superpremier

Cette procédure parcourt le tableau T et affiche les nombres qui sont super premiers.

Déclaration des objets

Objet

Type / Nature

i

entier

Solution en Python

Exécution du programme

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 afficher les nombres super premiers.

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é 'super_bt' pour exécuter le module recherche_superpremier afin d'afficher les nombres super premiers.

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.

QLabel nommé 'liste_super' pour afficher les éléments super premiers 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

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