Séquences nulles dans un tableau – Bac pratique 2017 [ Algorithme + Python ]

Algo et Python 24-09-24
106 0

Sujet bac informatique pratique 2017 (Bac scientifique)

Une séquence nulle d’un tableau d’entiers T est un ensemble d’éléments consécutifs dont la somme de valeurs est égale à zéro.

On se propose d’écrire un programme Python qui permet de remplir un tableau T par n entiers (avec 3≤N≤15) et d’afficher les entiers de chacune de ces séquences et le nombre de séquences nulles de ce tableau.

Exemple : Pour N=12 et le tableau T suivant :

Le programme affiche :

Les séquences nulles sont :

5, 12,-6 ,-11

15, -11, -4

-4, 4

4, -4

Le nombre de séquences paires est 4

Solution Algorithmique

Voici le principe algorithmique pour remplir un tableau d'entiers T avec 3≤n≤153 \leq n \leq 15, identifier les séquences nulles (sous-ensembles consécutifs dont la somme est égale à zéro), afficher ces séquences et compter le nombre de séquences nulles.

1- Lire la taille n du tableau (3≤n≤15)

2- Si n<3 ou n>15, afficher un message d'erreur : "La taille du tableau doit être comprise entre 3 et 15" et retourner à l'étape 1

3- Pour chaque index i allant de 0 à n−1: Lire l'entier à la position ii dans le tableau T

4- Initialiser le compteur cp à 0 pour compter les séquences nulles

5- Parcourir toutes les sous-séquences possibles du tableau :

Pour chaque index i allant de 0 à n−1 :

Pour chaque index j allant de i à n-1 :

Calculer la somme des éléments de la sous-séquence de T[i] à T[j]

Si la somme est égale à zéro :

Afficher "Séquence nulle :"

Afficher les éléments de la sous-séquence T[i] à T[j]

Incrémenter cp de 1

3- Afficher le nombre de séquences nulles : "Nombre de séquences nulles = nb_sequences"

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

Algorithme du programme Principal

Déclaration des objets

Objet Type / Nature
n entier
t tableau des entiers

 

La fonction saisie_taille

Cette fonction saisit un entier entre 3 et 20.

Déclaration des objets

Objet Type / Nature
n entier

 

La procédure remplir

Cette procédure remplit le tableau t par des chiffres.

Déclaration des objets

Objet Type / Nature
i entier

 

La procédure afficher_sequences_nulles

Cette procédure recherche et affiche les entiers de chaque séquence nulle du tableau.

Déclaration des objets

Objet Type / Nature
i entier
cp entier
s entier
test_nulle booléen

 

Solution en Python

Exécution du programme

Solution en Python et Designer QT

Pour créer une application en Python et Designer QT qui remplit un tableau T par n entiers (avec 3≤N≤20) et affiche les entiers de chacune de ces séquences  et le nombre de séquences nulles de ce tableau, on va suivre ces étapes:

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 les entiers.

QPushButton nommé 'remplir_bt pour mettre les entiers dans le tableau t

QLabel nommé 'msg' pour afficher des messages d'erreur

QPushButton nommé 'bt_recherche' pour rechercher les séquences nulles

QLabel nommé 'tab_label' pour afficher les entiers du tableau

QLabel nommé 'resultat' pour afficher les séquences nulles

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

1) Remplissage du tableau

2) Recherche et affichage des séquences nulles

 

Vous pouvez voir aussi :

1) des exercices sur les chaînes des caractères

2) des exercices sur les tableaux

3) des sujets Bac pratique

4) des sujets Bac théorique

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