Dans ce TP, on propose d'étudier les coûts d'une entreprises. Nous commencerons pas étudier les coûts "classiques" puis le coût moyen et enfin les coûts marginal.
Des aides sont disponibles à la fin de ce TP.
L'étude des coûts totaux d'une entreprise a mené à la formule suivante où $q$ décrit la quantité produite (entre 0 et 500): $$ Coût(q) = 0.3q^3 + 1.25q^2 + 7,5q + 900$$
quantites = list(range(0, 11))
import matplotlib.pyplot as plt
%matplotlib inline
Le coût moyen est le coût pour une unité produite. Plus ce coût moyen est faible plus le coût unitaire d'une unité est faible. Ce coût se calcule à partir du coût total avec la formule suivante $$ C_m(q) = \frac{C(q)}{q}$$ Dans la suite, on reprend la formule du coût de la partie précédente.
Le coût marginal est le coût supplémentaire si l'on décide de produire une unité de plus. Il se calcule à partir du coût total avec la formule suivante: $$ C_M(q) = C(q+1) - C(q)$$
Les fonctions mathématiques peuvent aisement se programmer avec des fonctions de programmation. Seul la syntaxe change.
Si l'on souhaite programmer la fonction
$$ f(x) = \frac{x + 1}{3x - 1} $$On écrira
def f(x):
return (x+1)/(3*x-1)
Quelques éléments sont à noter:
return
est indentéOn pourra ensuite utiliser cette fonction pour calculer des images de nombres. Dans ce cas, la syntaxe est la même qu'en math.
print(f(1))
print(f(100))
1.0 0.3377926421404682
En programmation, il existe plusieurs types de variables. Vous connaissez par exemples les integer
qui sont des nombres entiers, les string
qui sont les chaines de caractères. Il existe aussi les listes qui permettent de stocker plusieurs valeurs dans une seule variable.
liste = [1, 5, 'a', 10]
print(liste)
[1, 5, 'a', 10]
On peut accéder à des valeurs particulières avec des crochets
print(liste[0])
print(liste[2])
1 a
On peut ajouter des éléments à une liste
liste.append(100)
print(liste)
[1, 5, 'a', 10, 100]
Les listes marchent particulièrement bien avec les boucles. On peut alors faire des actions sur chacune des valeurs de la liste.
for valeur in liste:
print(valeur * 5)
5 25 aaaaa 50 500
Quand on fait des calculs sur des listes, il est utile garder les résultats dans une deuxième liste
deuxieme_liste = [] # On crée une liste vide
for valeur in liste:
deuxieme_liste.append(valeur*5)
print(deuxieme_liste)
[5, 25, 'aaaaa', 50, 500]
On peut tracer des graphiques à partir de deux listes:
avant de pouvoir tracer ce graphique, il faut s'assurer d'avoir importer la biliothèque qui permet de les réaliser. Il faut donc valider (une seule fois) les lignes suivantes
import matplotlib.pyplot as plt
%matplotlib inline
On calcule ou on entre les abscisses et les ordonnées
abscisses = [0, 1, 2, 3, 4]
ordonnees = [2, 4, 5, 0, 1]
Et on peut tracer le graphique
plt.plot(abscisses, ordonnees)
[<matplotlib.lines.Line2D at 0x7ff498343640>]