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.
83 lines
2.9 KiB
83 lines
2.9 KiB
### Exercice : tableaux en Numpy (introduction)
|
|
###############################################
|
|
|
|
import numpy as np
|
|
|
|
# Tous les passages indiqués "TODO()" sont à remplacer par vos soins
|
|
def TODO():
|
|
print("à vous!")
|
|
exit()
|
|
|
|
### DÉFINITION D'UN ARRAY NUMPY
|
|
|
|
print("Définition d'un array Numpy à partir d'une list :")
|
|
A = np.array([ -4, -32, 25, -15, -12, -23, 4, -3, -17])
|
|
print("A=",A)
|
|
print("len(A)=",len(A))
|
|
|
|
# exit() # -------------- Supprimez cette ligne pour passer à la suite ------------------
|
|
|
|
print("Définition d'un array Numpy avec la fonction arange:")
|
|
# np.arange(DEBUT,FIN,PAS)
|
|
# Fonctionne comme 'range', mais on peut utiliser des nombres non entiers
|
|
B = np.arange(0,1,0.05) #entre 0 et 1, par pas de 0.05
|
|
print("B=",B)
|
|
print("len(B)=",len(B)) #longueur du tableau
|
|
|
|
# exit() # -------------- Supprimez cette ligne pour passer à la suite ------------------
|
|
|
|
print("Définition d'un array Numpy avec la fonction linspace:")
|
|
# np.linspace(DEBUT,FIN,NOMBRE_DE_POINTS)
|
|
C = np.linspace(0,np.pi,20)
|
|
print("C=",C)
|
|
print("len(C)=",len(C))
|
|
# Remarque: linspace est généralement le choix le plus pertinent pour les graphiques (voir plus loin)
|
|
|
|
# exit() # -------------- Supprimez cette ligne pour passer à la suite ------------------
|
|
|
|
|
|
### MANIPULATIONS DE BASE : À VOUS !
|
|
|
|
print("Affichez un tableau contenant la somme de B et C (élément par élément):")
|
|
Z = np.array([B+C])
|
|
print(Z)
|
|
|
|
# Remarque : notez bien la différence de fonctionnement comparé aux listes Python!
|
|
# Dans le cadre de Numpy, l'opérateur '+' reprend un sens mathématique d'addition.
|
|
|
|
# exit() # -------------- Supprimez cette ligne pour passer à la suite ------------------
|
|
|
|
print("Définissez un tableau D de 100 nombres (exactement) répartis uniformément de 1 (inclus) à 10 (inclus).")
|
|
D = np.linspace(1,10,100)
|
|
print("D=",D)
|
|
print("len(D)=",len(D))
|
|
|
|
# exit() # -------------- Supprimez cette ligne pour passer à la suite ------------------
|
|
|
|
print("Définissez un tableau E de 100 nombres, contenant le LOGARITHME DÉCIMAL de chaque valeur contenue dans D.")
|
|
E = np.log10(D) # a exactement le meme nombre de valeurs que D
|
|
print("E=",E)
|
|
print("len(E)=",len(E))
|
|
|
|
# exit() # -------------- Supprimez cette ligne pour passer à la suite ------------------
|
|
|
|
print("Définissez un tableau F de 100 nombres, contenant la formule \"cos(x)+2*sin(x)\" appliquée à chaque élément du tableau D.")
|
|
F = np.cos(D)+2*np.sin(D) # a exactement le meme nombre de valeurs que D
|
|
print("F=",F)
|
|
print("len(F)=",len(F))
|
|
|
|
# exit() # -------------- Supprimez cette ligne pour passer à la suite ------------------
|
|
|
|
print("Trouvez la plus grande valeur contenue dans le tableau F:")
|
|
print("max(F)=",max(F))
|
|
|
|
# exit() # -------------- Supprimez cette ligne pour passer à la suite ------------------
|
|
|
|
print("Créez un tableau contenant la concaténation des tableaux A et B, sur une seule ligne:")
|
|
print("A=",A)
|
|
print("B=",B)
|
|
G = np.concatenate((A,B))
|
|
print("G=",G)
|
|
# (internet autorisé, attention aux parenthèses!)
|
|
|