Adloun

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.