B
Bonjour,
Pour le fun :
Programme Python qui calcule l'eau à ajouter à un certain volume (à entrer) mélange eau alcool d'un pourcentage alcoolique à entrer pour l'amener à un degré inférieur à entrer.
def masvol (p) :
#liste des densités des mélanges eau-alcool dégré par degré d'alcool à 15°C
liste = [1.00009, 0.99844, 0.99695,0.99552, 0.99413, 0.99277, 0.99145, 0.99016, 0.98891,0.99770, 0.98652, 0.98537, 0.98424, 0.98314, 0.98206, 0.981, 0.97995, 0.97892, 0.97790, 0.97688, 0.97567, 0.97487, 0.97387,0.97291, 0.97185, 0.97084, 0.96981, 0.96876, 0.96769, 0.96659, 0.96545, 0.96428, 0.96307,0.96183,0.96055, 0.95923, 0.95786, 0.95645,0.95499,0.95350,0.95196,0.95036,0.94872,0.94705,0.94535,0.94361,0.94183,0.94002,0.93187, 0.93629,0.93437,0.93241,0.93041,0.92837,0.92630,0.92420,0.92209,0.91997,0.91784,0.91569,0.91351,0.91130,0.90907,0.90682,0.90454,0.90224,0.89991,0.89755,0.89516,0.89274,0.89029,0.88781,0.88531,0.88278,0.88022,0.877763,0.87500, 0.87234,0.86965,0.86602,0.86416,0.86137,0.85854,0.85567,0.85275,0.84979,0.84678,0.84372,0.84060,0.83741,0.83415,0.83081,0.82738,0.82385,0.82020,0.81641,0.81245,0.80829,0.80390,0.79926,0.79433,0]
p = float(p)
m = int(p)
calcul = liste[m] + (p - m) * (liste[m+1] - liste[m] )
return (calcul)
pini = 0
pini = float(pini) #pourcentage en alcool du mélange initial, entrer 25 pour alcool à 25%
pini = float(input("entrer le pourcentage en alcool du mélange initial"))
pf = 0
pf = float(pf) #pourcentage en alcool du mélange final, entrer 15 pour alcool à 15%
pf = float(input("entrer le pourcentage en alcool du mélange final"))
if (pini < pf) :
print("Le pourcentage initial doit être supérieur au final")
else:
if (pini > 100) :
print("Le pourcentage initial doit être inférieur à 100")
else:
if (pf < 0) :
print("Le pourcentage final doit être supérieur à 0")
else:
densite_alco = 0.79433
densite_eau = 1.0
mvolini = float(masvol(pini)) #masse volumique mélange initial
mvolfin = float(masvol(pf)) #masse volumique mélange final
volinitial = float(input("entrez le vol initial (en litres)"))
m_alco_init = float(pini/100 * densite_alco * volinitial) #masse alcool dans mélange initial
m_eau_init = float(mvolini * volinitial - m_alco_init) #masse eau dans mélange initial
m_alco_1Litre_final = float(pf/100 * densite_alco) #masse alcool dans 1L de mélange final
m_eau_1Litre_final = float(masvol(pf) - m_alco_1Litre_final) #masse eau dans 1L de mélange final
rapport_alcool = m_alco_init/m_alco_1Litre_final
eau_finale = rapport_alcool * m_eau_1Litre_final
eau_ajoutee = eau_finale - m_eau_init
print("Il faut ajouter", eau_ajoutee , "litre(s) d'eau")
Sauf erreur dans les valeurs dans la table des densités que je n'ai pas relues.