III. Complainte du proviseur automate
Question 1
# Fonction pour déterminer l'avis du proviseur
def avis(maths, fr, ang):
moyenne_generale = (maths * 2 + fr + ang) / 4
if moyenne_generale < 11:
return "Réservé"
elif 11 <= moyenne_generale <= 13:
return "Favorable"
else:
return "Très favorable"
# Exemple d'utilisation
print(avis(14, 12, 10)) # Exemple de test
Question 2
# Modification pour prendre en compte la moyenne par matière
def avis_modifie(maths, fr, ang):
moyenne_generale = (maths * 2 + fr + ang) / 4
if moyenne_generale < 11:
return "Réservé"
elif 11 <= moyenne_generale <= 13:
return "Favorable"
elif moyenne_generale > 13 and maths >= 10 and fr >= 10 and ang >= 10:
return "Très favorable"
else:
return "Favorable"
# Exemple d'utilisation
print(avis_modifie(14, 9, 10)) # Exemple de test
IV. Un séjour au ski
Question 1
# Calcul manuel des prix pour 4 et 6 personnes
prix_4_personnes = 840 + (4 * 245) # Pas de tarif groupe
prix_6_personnes = 840 + (6 * 196) # Tarif groupe
print(prix_4_personnes, prix_6_personnes)
Question 2
# Fonction pour calculer le tarif pendant les vacances
def tarifVacances(personnes):
location = 840
if personnes < 5:
forfait = personnes * 245
else:
forfait = personnes * 196
return location + forfait
# Test de la fonction
print(tarifVacances(4)) # Doit donner le même résultat que prix_4_personnes
print(tarifVacances(6)) # Doit donner le même résultat que prix_6_personnes
Question 3
# Fonction pour calculer le tarif hors vacances
def tarifHorsVacances(personnes, jours):
location = 150 * jours
if personnes <= 5:
forfait = jours * personnes * 40
else:
forfait = jours * personnes * 35
return location + forfait
# Test de la fonction
print(tarifHorsVacances(10, 8)) # Calcul du prix pour l'association
# Vérification pour 2500 €
budget = 2500
cout_total = tarifHorsVacances(10, 8)
if cout_total <= budget:
print("Oui, ils ont assez d'argent.")
else:
print("Non, ils n'ont pas assez d'argent.")