Adloun

Écrire une fonction Python taux avancement(x f, n0, coeffs) qui…

Exercice d'entraînement · niveau 3 (difficile) · chimie (première), chapitre 4 — Avancement et bilans de matière · Transformations totales ou non

Énoncé

Écrire une fonction Python taux_avancement(x_f, n0, coeffs) qui renvoie puis le taux , et qui affiche « totale » ou « non totale ». La tester sur l'acide éthanoïque du cours ( mol, mol).

Corrigé


def taux_avancement(x_f, n0, coeffs):
    # n0, coeffs : quantites initiales et coefficients des REACTIFS
    x_max = min(n0[i] / coeffs[i] for i in range(len(n0)))
    tau = x_f / x_max
    if abs(tau - 1.0) < 1e-3:
        print("Transformation totale.")
    else:
        print("Transformation NON totale : tau =", round(100 * tau, 1), "%")
    return x_max, tau

taux_avancement(4.1e-4, [1.0e-2], [1])
# Transformation NON totale : tau = 4.1 %
# (0.01, 0.041)

Le seuil évite de déclarer « non totale » une transformation dont le taux vaut par simple arrondi de mesure : comparer des flottants demande toujours une tolérance.

Contrôle : le taux affiché, , est bien celui annoncé par le cours.

Les autres exercices de ce chapitre Le cours du chapitre

Un blocage sur cet exercice ? Le tuteur d'Adloun guide par questions, sans donner la réponse.