Clients gagnants – Bac pratique – Section informatique – 2022

Bac Info 16-01-26
16 0

Sujet (Algo et programmation - Bac 2022)

Soient "Clients.dat" et "Chance.txt" deux fichiers contenant respectivement les informations de p clients et n chiffres.

Chaque enregistrement du fichier "Clients.dat" se compose de deux champs :

- Identifiant : une chaîne de 10 chiffres qui désigne l'identifiant d'un client.

- NTel : une chaîne de 8 chiffres qui désigne le numéro de téléphone d'un client.

On se propose de déterminer le(s) client(s) gagnant(s), sachant qu'un client est déclaré gagnant si le chiffre de chance CC de son numéro de téléphone existe dans le fichier "Chance.txt".

Un chiffre de chance CC relative â un numéro de téléphone est calculé en additionnant de façon répétitive

tous les chiffres du numéro de téléphone jusqu'à obtenir un seul chiffre.

Exemple

Pour p = 4, n = 6 et les fichiers "Clients.dat" et "Chance.txt" suivants :

Les clients gagnants sont :

Identifiant : 0001998810 — N° Téléphone : 65405003

Identifiant 0001466877 N° Téléphone : 80617081

En effet,

- Le CC du client ayant l'identifiant 0001998810 a été obtenu en additionnat les chiffres de son numéro de télephione jusqu'à obtenir un seul chiffre c'est à dire 6+5+4+0+5+0+0+3 = 23 4 2+3 =5. Le chiffre 5 figure dans le fichier "Chance.txt", donc c'est un client gagnant.

- Le CC du client ayant l'identifiant 0005432179 est 4+9+4+5+6+2+4+1=35 4 34-5=8. Le chiffre 8 ne figure pas dans le fichier "Chance.txt".

- Le CC du client ayant l'identifiant 0001466877 est 8+0+6+1+7+0+8+1=31 4 3+1=4. Le chiffre 4 figure dans le fichier "Chance.txt", donc c'est un client gagnant.

- Le CC du client ayant l'identifiant 0000247855 est 0+9+5+6+2+4+4+4=34 4 3+4=7. Le chiffre 7 ne figure pas dans le fichier "Chance.txtu.

 

Travail demandé :

1- En utilisant l'éditeur de texte disponible (Bloc-notes, Notepad, Notepad-H-, ...), créer un fichier texte nommé "Chance.txt" et y saisir les chiffres du fichier mentionnés dans l'exemple précédent.

2- Ecrire un programme en Python intitulé Jeu qui permet de remplir un fichier "Clients.dat" par l'identifiant et le numéro de téléphone de p

NB :

L'identifiant d'un client est une chaîne de 10 Le numéro de téléphone d'un client est une chaîne de 8 chiffres.

p est un entier de l'intervalle [14,101] choisi aléatoirement. - Le candidat n'est pas appelé à tester l'unicité de l'identifiant.

3- d'afficher l'identifiant et le numéro de téléphone de chaque client gagnant.

 

Solution Algorithmique

Dans cet algorithme, On va utiliser cinq fonctions et une procédure :

- la fonction verif_saisie()

- la fonction saisie_code()

- la fonction test_premier()

- la fonction convertir_binaire()

- la fonction verif_code()

- la procédure valider_code()

 

Algorithme du programme Principal

Déclaration des objets

Objet Type / Nature
code chaîne

 

La fonction verif_code

Le rôle de la fonction verif_code est de vérifier si une chaîne de caractères ch est composée exactement de longueur chiffres.

Déclaration des objets

Objet Type / Nature
i entier

 

La fonction saisie()

Le rôle de la fonction saisie est de permettre à l’utilisateur de saisir une chaîne de chiffres d’une longueur spécifiée et de s’assurer que la saisie est valide.

Déclaration des objets

Objet Type / Nature
ch chaîne

 

La procédure remplir_fichier_client

Cette procédure saisit les informations de plusieurs clients et les enregistre dans un fichier binaire.

Déclaration des objets

Objet Type / Nature
f_clients fichier
i entier
client Enregistrement

 

La fonctionsomme_chiffres

Cette fonction calcule la somme des chiffres d’un code jusqu’à obtenir un seul chiffre.

Déclaration des objets

Objet Type / Nature
somme entier
i entier

 

La procédure afficher_gagnants()

Le rôle de la fonction test_binaire_zeros est de vérifier si la représentation binaire d’un nombre n contient exactement 10 zéros.

Déclaration des objets

Objet Type / Nature
binaire chaîne
cp entier
i entier

 

La fonction verif_code

Cette fonction contrôle qu’un code à 13 chiffres respecte les critères de validité définis.

Déclaration des objets

Objet Type / Nature
partie1 entier
partie2 entier
partie3 entier

 

La procédure valider_code

Le rôle de la procédure valider_code est de vérifier qu’un code est valide selon les règles définies et qu’il n’a pas déjà été utilisé, puis afficher le résultat.

Déclaration des objets

Objet Type / Nature
f_codes fichier
code_fichier chaîne
test booleen

 

Solution en Python

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 Haj Salah - Prof Info