Des quantités, des prix, un produit matriciel
Exercice d'entraînement · niveau 3 (difficile) · mathématiques (ECT 1re année), chapitre 13 — Informatique et algorithmique · Tableaux et statistiques
Énoncé
Les quantités vendues de trois produits sur deux mois sont Q = np.array([[10, 5, 8], [12, 4, 9]]), une ligne par mois. Les prix unitaires sont , et euros. Écrire les lignes qui donnent le chiffre d'affaires de chaque mois, puis le total, et vérifier le premier à la main.
Corrigé
Le principe. Le chiffre d'affaires d'un mois est la somme « quantité prix » sur les trois produits : c'est exactement une ligne de Q multipliée par la colonne des prix. L'opération est le produit matriciel, obtenu par np.dot.
Les lignes Python.
import numpy as np
Q = np.array([[10, 5, 8], [12, 4, 9]])
prix = np.array([30, 50, 20])
ca = np.dot(Q, prix)
print(ca) # [710 740]
print(np.sum(ca)) # 1450
print(np.shape(Q)) # (2, 3)
Vérification à la main du premier mois. Et pour le second : euros. Le total vaut euros.
Le point délicat. Q <em> prix ne donnerait pas ce résultat : les opérations + - </em> / agissent coefficient par coefficient, et rendraient ici un tableau des produits partiels. Seul np.dot effectue le produit matriciel, c'est-à-dire la somme des produits ligne par colonne. La condition de compatibilité se lit sur np.shape : colonnes pour , coefficients pour prix.
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.