You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
63 lines
2.2 KiB
63 lines
2.2 KiB
import matplotlib.pyplot as plt
|
|
import numpy as np
|
|
import math
|
|
|
|
# Tous les passages indiqués "TODO()" sont à remplacer par vos soins
|
|
def TODO():
|
|
print("à vous!")
|
|
exit()
|
|
|
|
|
|
#################################################################################################
|
|
### EXERCICE 2 : rentabilité d'un fabricant de processeurs
|
|
#################################################################################################
|
|
|
|
print("(1) Définissez un array numpy `N` contenant les entiers de 1 à 5000")
|
|
N = np.arange(1,5001)
|
|
# N = np.linspace(1,5000,1)
|
|
print(N)
|
|
|
|
# -------------- Supprimez cette ligne pour passer à la suite ------------------
|
|
|
|
print("(2) Construisez un array numpy `PN`, de la même taille que `N`, donnant le coût de production en fonction du nombre d'unités fabriquées")
|
|
|
|
PN = 2000 + 60 * (N)**(2/3)
|
|
print(PN)
|
|
|
|
# -------------- Supprimez cette ligne pour passer à la suite ------------------
|
|
|
|
print("(3) Construisez un array numpy `AN`, de la même taille que `N`, donnant le chiffre d'affaires, en fonction du nombre d'unités fabriquées (en supposant que toutes les unités fabriquées sont vendues)")
|
|
AN = N * 5
|
|
print(AN)
|
|
|
|
# -------------- Supprimez cette ligne pour passer à la suite ------------------
|
|
|
|
print("(4) Représentez la courbe P(N) en bleu, et la courbe A(N), en rouge, dans la même figure")
|
|
plt.figure()
|
|
plt.plot(N, PN, color='blue', label='coûts de production')
|
|
plt.plot(N, AN, color='red', label='chiffre d\'affaires')
|
|
plt.legend() # (utilisera le label associé à chaque courbe au niveau des commandes `plot`)
|
|
|
|
|
|
# -------------- Supprimez cette ligne pour passer à la suite ------------------
|
|
|
|
print("(5) Rajoutez\n",
|
|
"- une grille de coordonnées,\n",
|
|
"- des labels *au nom approprié* sur l'axe des abscisses et l'axe des ordonnées.")
|
|
plt.grid()
|
|
plt.xlabel('coûts de production')
|
|
plt.ylabel('chiffre d\'affaires')
|
|
plt.show()
|
|
|
|
# -------------- Supprimez cette ligne pour passer à la suite ------------------
|
|
z = 0
|
|
|
|
for i in range(len(N)):
|
|
if(PN[i]>AN[i]):
|
|
z = N[i]
|
|
|
|
print("(6) Estimez le seuil de rentabilité pour le fabricant, à une unité près:")
|
|
print("Le seuil de rentabilité est approximativement de", z,"unités journalières")
|
|
|
|
|