TD 3: Records in Algorithmics - Python Course

Telechargé par kemoeleonel
Universit´e Mohammed Premier
Facult´e des Sciences OUJDA
epartement d’Informatique
Informatique 2: Algorithmique 2 / Python
Pr: DAHMANI Soufiane
Fili`ere: MIP-S2
TD N°3 : Les Enregistrements en algorithmique
1 Exercice 1 :
Un joueur est caract´eris´e par son num´ero, nom, pr´enom, position, prix, nom Equipe
1.) Cr´eer la structure joueur.
2.) Enregistrer les informations de deux joueurs j1 et j2.
3.) V´erifier si les deux joueurs appartiennent `a la mˆeme ´equipe ou non.
2 Exercice 2 :
1.) Consid´erons les types d’enregistrements suivants :
Type TDate = Enregi s treme n t
Jour , mois , annee : e n t i e r ;
Fin ;
TAdresse = Enreg i strem e nt
Numero : e n t i e r ;
Rue : chaine [ 5 0 ] ;
V i l l e : cha ine [ 2 0 ] ;
Fin ;
THabitant = Enregi s treme n t
Nom, prenom : chai ne [ 2 0 ] ;
Da t e na i s s : TDate ;
Residence : TAdresse ;
Fin ;
2.) ´
Ecrire un algorithme permettant de :
(a) Remplir un tableau T de N habitants (N <= 100).
(b) Afficher `a partir de T les adresses des habitants n´es avant une ann´ee de naissance donn´ee.
(c) Afficher les noms et les dates de naissance des habitants de la ville d’ ‘Oujda‘.
(d) ´
Editer le nombre d’habitants par ville.
3 Exercice 3 :
Un compte CCP concerne un ´etudiant de la fac se sp´ecifi´e par les donn´ees suivantes :
Nom et pr´enom de propri´etaire de compte (40 caract`eres au maximum)
Num´ero de compte (cl´e)
Montant en lettres
Montant en chiffres
1
Nom et pr´enom de b´en´eficiaire (40 au maximum)
Questions :
1.) D´eclarer le type de cette structure
2.) Saisir les informations pour 10 ´etudiants.
4 Exercice 4 :
Une voiture est caract´eris´ee par son matricule, sa marque, son mod`ele et son prix.
1.) D´efinir le type structur´e (Enregistrement) voiture
2.) enregistrer les informations de deux voitures v1 et v2
3.) Afficher les informations de la voiture la plus ch`ere
4.) Supposons, on veut enregistrer les informations de 20 voitures et afficher celle la plus ch`ere.
Proposer un algorithme
5 Exercice 5 : Enregistrement Temps
1.) D´efinir un type TEMPS qui contient les champs heure, minute, seconde.
2.) ´
Ecrire une action param´etr´ee (Proc´edure ) qui r´ealise la somme T de deux dur´ees T1 et T2
de type temps.
3.) ´
Ecrire une fonction TRANSFORM qui transforme un temps T de type TEMPS en un entier
S qui exprime ce temps en secondes.
Exemple :
pour T = 2 heures 10 minutes 37 secondes, S = 7837 secondes.
4.) ´
Ecrire une proc´edure DECOMPOS qui d´ecompose un temps S exprim´e en secondes en un
temps T de type TEMPS.
Exemple :
pour S = 7837 secondes, T = 2 heures 10 minutes 37 secondes.
5.) ´
Etant donn´es deux temps T1 et T2 de type TEMPS, ´ecrire un algorithme qui calcule le temps
T somme des temps T1 et T2 (T, T1 et T2 sont de type TEMPS) en utilisant les actions
TRANSFORM et DECOMPOS.
2
1. Exercice 1 : Solution
1. efinition de la structure joueur
Enregistrement joueur
numero : Entier
nom : Cha^ıne
prenom : Cha^ıne
position: Cha^ıne
prix : R´eel
equipe : Cha^ıne
FinEnregistrement
2. Enregistrement des informations de deux joueurs
ebut
eclarer j1, j2 : joueur
´
Ecrire "Entrer les informations du joueur j1 :"
Lire j1.numero, j1.nom, j1.prenom, j1.position, j1.prix, j1.equipe
´
Ecrire "Entrer les informations du joueur j2 :"
Lire j2.numero, j2.nom, j2.prenom, j2.position, j2.prix, j2.equipe
3. erification si les deux joueurs appartiennent `a la mˆeme ´equipe
Si j1.equipe = j2.equipe Alors
´
Ecrire "Les deux joueurs appartiennent `a la m^eme ´equipe."
Sinon
´
Ecrire "Les deux joueurs n’appartiennent pas `a la m^eme ´equipe."
FinSi
Fin
2. Exercice 2 : Solution
Algorithme Remplir Habitant s
// D e c l a r a t i o n d es t y pe s d e n r e g i s t r e m e n t s
Type TDate = Enregi s treme n t
Jour , Mois , Annee : E nt ie r ;
Fin ;
Type TAdresse = E nregi s treme n t
Numero : E n t i er ;
Rue : Chaine [ 5 0 ] ;
V i l l e : Chaine [ 2 0 ] ;
Wilaya : Chaine [ 2 0 ] ;
CW : En t i e r ; // Code Wilaya
Fin ;
Type THabitant = Enre g istre m ent
Nom, Prenom : Chaine [ 2 0 ] ;
Da t e na i s s : TDate ;
3
Residence : TAdresse ;
Fin ;
// D e c l a r a t i o n du ta b le a u d h a b i t a nt s
D e c l a r e r T [N] : Tableau de THabitant ;
De c l ar e r N, i : E nt i e r ;
// S a i s i e d es do nnees d es h a b i t a n t s
Pour i de 1 a N f a i r e
A f f i c h e r ( ” S a i s i r l e nom de l ha bita nt , i , ” : ) ;
L i r e (T [ i ] . Nom ) ;
A f f i c h e r ( ” S a i s i r l e prenom de l h abit ant , i , ” : ” ) ;
L i r e (T [ i ] . Prenom ) ;
A f f i c h e r ( S a i s i r l e j o u r de n a i s s a n c e de l h ab it ant , i , : ) ;
L i r e (T [ i ] . D a te n a i ss . Jour ) ;
A f f i c h e r ( S a i s i r l e mois de n a i s s a n c e de l ha bit an t , i , : ) ;
L i r e (T [ i ] . D a te n a i ss . Mois ) ;
A f f i c h e r ( S a i s i r l annee de n a i s s a n c e de l ha bi tan t , i , : ) ;
L i r e (T [ i ] . D a te n a i ss . Annee ) ;
A f f i c h e r ( S a i s i r l e numero de l a rue de r e s i d e n c e de l ha bita nt
, i , ” : ) ;
L i r e (T [ i ] . Reside nce . Numero ) ;
A f f i c h e r ( S a i s i r l e nom de l a rue de r e s i d e n c e de l habi tant ,
i , ” : ” ) ;
L i r e (T [ i ] . Reside nce . Rue ) ;
A f f i c h e r ( S a i s i r l e nom de l a v i l l e de r e s i d e n c e de l habi tant ,
i , ” : ” ) ;
L i r e (T[ i ] . R e s i d e n c e . V i l l e ) ;
Fin Pour ;
Fin Algorithme ;
Algorithme Aff iche r A dres ses Av ant An n ee
D e c l a r e r T : Tableau de THabitant ;
D e c l a r e r Annee : E n t i e r ;
D e c l a r e r i : E n t i e r ;
A f f i c h e r ( S a i s i r l annee de n a i s s a n c e a p a r t i r de l a q u e l l e a f f i c h e r l e s
a d r e s s e s : ) ;
L i r e ( Annee ) ;
Pour i de 1 a T a i l l e (T) f a i r e
Si T[ i ] . D at e n a i s s . Annee <Annee a l o r s
A f f i c h e r ( Adresse de l habi tant , T[ i ] . Nom, , T[ i ] . Prenom ,
: ” , T[ i ] . Residence . Numero , ” , T[ i ] . Residence . Rue , ” , ” ,
T[ i ] . Residence . V i l l e ) ; ;
Fin Si ;
Fin Pour ;
Fin Algorithme ;
Algorithme A f f i ch e r Ha b i t an t s O u jd a
D e c l a r e r T : Tableau de THabitant ;
4
D e c l a r e r i : E n t i e r ;
Pour i de 1 a T a i l l e (T) f a i r e
Si T[ i ] . Residenc e . V i l l e = oujda a l o r s
A f f i c h e r Nom : , T[ i ] . Nom, , Prenom : , T[ i ] . Prenom , ,
Date de n a i s s a n c e : , T [ i ] . D a te n a i ss . Jour , / ,
T[ i ] . Da t e n ai s s . Mois , / ” , T[ i ] . Da t e na is s . Annee ;
Fin Si ;
Fin Pour ;
Fin Algorithme ;
Algorithme Nombre Habitan t s V ille
D e c l a r e r T : Tableau de THabitant ;
De cla rer V i l l e : Chaine ;
De c l ar e r i , NbHabitants : En t i e r ;
A f f i c h e r ( S a i s i r l e nom de l a v i l l e pour l a q u e l l e vous s o u h a i t e z
c o n n a i t r e l e nombre d h ab i t an t s : ” ) ;
L i r e ( V i l l e ) ;
NbHabitants <0 ;
Pour i de 1 a T a i l l e (T) f a i r e
Si T[ i ] . Residenc e . V i l l e = V i l l e a l o r s
NbHabitants <NbHabitants + 1 ;
Fin Si ;
Fin Pour ;
A f f i c h e r ( Le nombre d ha bi ta nt s de l a v i l l e de , V il l e ,
e s t : , NbHabitants ) ;
Fin Algorithme ;
3. Exercice 3 : Solution
1. eclaration du type structur´e
Enreg i strem e nt CompteCCP
p r o p r i e t a i r e : Chaene [ 4 0 ]
numero : En ti e r
montantLettre : Chaene
montantChiffre : Reel
b e n e f i c i a i r e : Chaine [ 4 0 ]
FinEnregistrement
2. Saisie des informations de 10 ´etudiants
Debut
De c l ar e r comptes [ 1 0 ] : Tableau de CompteCCP
D e c l a r e r i : E n t i e r
Pour i de 0 a 9 f a i r e
E c r i r e S a i s i r l e s i n f o r m a t i o n s du compte numEro ” , i +1
5
1 / 8 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans l'interface ou les textes ? Ou savez-vous comment améliorer l'interface utilisateur de StudyLib ? N'hésitez pas à envoyer vos suggestions. C'est très important pour nous!