0% ont trouvé ce document utile (0 vote)
78 vues8 pages

Serie 5

Le document présente des exercices de programmation en Python, incluant des fonctions pour gérer des examens, des villes et des salles. Les exercices demandent de créer des fonctions pour enregistrer des données, afficher des informations et trouver des valeurs minimales ou maximales. Des exemples de fonctions Built-in et de méthodes de chaîne de caractères sont également fournis.

Transféré par

huaweiyuti9
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
78 vues8 pages

Serie 5

Le document présente des exercices de programmation en Python, incluant des fonctions pour gérer des examens, des villes et des salles. Les exercices demandent de créer des fonctions pour enregistrer des données, afficher des informations et trouver des valeurs minimales ou maximales. Des exemples de fonctions Built-in et de méthodes de chaîne de caractères sont également fournis.

Transféré par

huaweiyuti9
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Sujet 1

Exercice 1 : (4 points)

1. Donner deux exemples de fonctions Built-in et deux exemples de méthodes de chaine


de caractères en python (2 points)
2. Quelle est la différence entre les méthodes read() et readline()? (2 points)

1. Deux exemples de fonctions Built-in en Python :

 len() : retourne la longueur d'un objet (par exemple une liste ou une chaîne de
caractères).
 type() : retourne le type d'une variable ou d'un objet.

2. Deux exemples de méthodes de chaîne de caractères :

 upper() : convertit tous les caractères d'une chaîne en majuscules.


 replace(old, new) : remplace une sous-chaîne par une autre.

3. Différence entre read() et readline() :

 read() lit tout le contenu du fichier (ou un nombre donné de caractères si on précise un
argument).
 readline() lit une seule ligne du fichier à chaque appel.

Exercice 2 : (12 points)

Un examen a un code, un libelle, une date (jour, mois et année) et le nom du module
concerné. Compléter le programme suivant qui permet de :

1. Créer une fonction qui permet d’enregistrer les informations de n examens.

Le code, le libelle et le module sont des chaines de caractères. Le jour, le mois et l’année
sont des entiers.

2. Créer une fonction qui permet d’afficher les infos d’un examen.
3. Utiliser les fonctions déjà définies dans le programme principal pour :

 Enregistrer n examens.
 Afficher les examens passés dans la même date (la date est donnée par l’utilisateur)

def enregistrer_examens(n):

examens = []
for i in range(n):

print(f"\n‐‐‐ Enregistrement de l'examen {i+1} ‐‐‐")

code = input("Code de l'examen : ")

libelle = input("Libellé de l'examen : ")

jour = int(input("Jour : "))

mois = int(input("Mois : "))

annee = int(input("Année : "))

module = input("Module : ")

examen = {

"code": code,

"libelle": libelle,

"jour": jour,

"mois": mois,

"annee": annee,

"module": module

[Link](examen)

return examens

def afficher_examen(examen):

print(f"\n‐‐‐ Informations de l'examen ‐‐‐")

print(f"Code : {examen['code']}")

print(f"Libellé : {examen['libelle']}")

print(f"Date : {examen['jour']:02d}/{examen['mois']:02d}/{examen['annee']}")

print(f"Module : {examen['module']}")

# Programme principal

n = int(input("Combien d'examens voulez‐vous enregistrer ? "))

# Enregistrement des examens


examens = enregistrer_examens(n)

# Demander la date à rechercher

print("\n‐‐‐ Recherche des examens par date ‐‐‐")

jour_recherche = int(input("Jour : "))

mois_recherche = int(input("Mois : "))

annee_recherche = int(input("Année : "))

# Affichage des examens qui correspondent à la date recherchée

print(f"\nExamens passés le {jour_recherche:02d}/{mois_recherche:02d}/{annee_recherche} :")

examen_trouve = False

for examen in examens:

if (examen['jour'] == jour_recherche and

examen['mois'] == mois_recherche and

examen['annee'] == annee_recherche):

afficher_examen(examen)

examen_trouve = True

if not examen_trouve:

print("Aucun examen trouvé à cette date.")

Exercice 3 : (4 points)
1. Ecrire une fonction qui retourne le plus grand entre deux nombres réels (2pts)
2. Utiliser la fonction déjà définie dans le programme principal pour trouver le plus grand
nombre entre 10 nombres donnés par l’utilisateur. (2pts)

def plus_grand(a, b):


if a > b:
return a
else:
return b
# Programme principal
plus_grand_nombre = float(input("Entrez le 1er nombre : "))

for i in range(2, 11):


nombre = float(input(f"Entrez le {i}e nombre : "))
plus_grand_nombre = plus_grand(plus_grand_nombre, nombre)

print(f"\nLe plus grand nombre parmi les 10 est : {plus_grand_nombre}")

Sujet 2

Exercice 1 : (8 points)

Une ville est caractérisée par un nom, une altitude, les températures de 12 mois. Compléter
le programme suivant qui permet de :

1. Créer une fonction qui permet d’enregistrer les informations de 10 villes.

Le nom de la ville est une chaine de caractères. L’altitude et les températures de 12 mois
sont des réels.

2. Créer une fonction pour calculer la ville la plus froide au cours de l’année
3. Créer une fonction pour afficher les informations de la ville la plus froide

def enregistrer_villes():

villes = []

for i in range(10):

print(f"\n--- Enregistrement de la ville {i+1} ---")

nom = input("Nom de la ville : ")

altitude = float(input("Altitude de la ville (en mètres) : "))

temperatures = []

for mois in range(1, 13):

temp = float(input(f"Température pour le mois {mois} : "))


[Link](temp)

ville = {

"nom": nom,

"altitude": altitude,

"temperatures": temperatures

[Link](ville)

return villes

def ville_la_plus_froide(villes):

ville_froide = villes[0]

temp_min = min(villes[0]['temperatures'])

for ville in villes[1:]:

ville_temp_min = min(ville['temperatures'])

if ville_temp_min < temp_min:

temp_min = ville_temp_min

ville_froide = ville

return ville_froide, temp_min

def afficher_ville(ville):

print("\n--- Informations de la ville la plus froide ---")

print(f"Nom : {ville['nom']}")
print(f"Altitude : {ville['altitude']} mètres")

print("Températures sur 12 mois :", ville['temperatures'])

# Programme principal

villes = enregistrer_villes()

ville_froide, temperature_minimale = ville_la_plus_froide(villes)

afficher_ville(ville_froide)

print(f"\nTempérature la plus basse enregistrée : {temperature_minimale}°C")

Exercice 2 : (8 points)

Une salle est caractérisée par son code, son libellé, nombreTables et son type. Compléter le
programme suivant qui permet de :

1. Enregistrer les informations de 20 salles (3pts)

Le code, le libelle et le type sont des chaines de caractères.

2. Afficher les informations de la salle qui a le plus petit nombre de tables. (3pts)

def enregistrer_salles():

salles = []

for i in range(2):

print(f"\n--- Enregistrement de la salle {i+1} ---")

code = input("Code de la salle : ")

libelle = input("Libellé de la salle : ")

nombre_tables = int(input("Nombre de tables : "))

type_salle = input("Type de la salle : ")


salle = {

"code": code,

"libelle": libelle,

"nombre_tables": nombre_tables,

"type": type_salle

[Link](salle)

return salles

def afficher_salle_min_tables(salles):

salle_min = salles[0]

min_tables = salles[0]['nombre_tables']

for salle in salles[1:]:

if salle['nombre_tables'] < min_tables:

min_tables = salle['nombre_tables']

salle_min = salle

print("\n--- Salle avec le plus petit nombre de tables ---")

print(f"Code : {salle_min['code']}")

print(f"Libellé : {salle_min['libelle']}")

print(f"Nombre de tables : {salle_min['nombre_tables']}")

print(f"Type : {salle_min['type']}")

# Enregistrement des 20 salles

salles = enregistrer_salles()
# Affichage de la salle avec le minimum de tables

afficher_salle_min_tables(salles)

Vous aimerez peut-être aussi