problème en info

Modérateur : Michel Quercia

Répondre
haw7ski
Messages : 109
Enregistré le : mar. déc. 04, 2018 11:07 pm
Classe : MP

problème en info

Message par haw7ski » mer. mars 06, 2019 7:51 pm

Bonjour,

Je veux tracer la fonction f qui est nulle partout et en [-1,1] elle est égale à (1-t²)^3 . J'ai fait ce programme mais je comprends pas pq ça me donne une fonction nulle :
C'est tout ridicule mais je vois pas pourquoi ça marche pas :(
Merci

Code : Tout sélectionner

import matplotlib.pyplot as plt
import numpy as np

d=np.arange(-1,1.1,0.1)
def f(x):   
  if x in d :
    return (1-x**2)**3
  else:
    return 0

x=np.arange(-2,2,0.1)
y=[f(k) for k in x]
plt.plot(x,y)
plt.show()

justin067
Messages : 4
Enregistré le : ven. juin 10, 2016 10:48 pm
Classe : MP2

Re: problème en info

Message par justin067 » mer. mars 06, 2019 9:37 pm

Salut,

je pense que le soucis vient de la mauvaise gestion par python des nombres sous la forme 0.100000000eXX il doit y donc y avoir des problèmes de "valeurs approchées".
Je te conseil, après avoir essayé, de définir tes ensembles de points d'une manière un peu plus barbare, par exemple en écrivant

Code : Tout sélectionner

d = [ -1 + k/10 for k in range(21)]
MPSI 1 -> MP3 (3/2) -> MP2 (5/2)

Luckyos
Messages : 474
Enregistré le : dim. juin 14, 2015 11:42 am
Classe : 1A

Re: problème en info

Message par Luckyos » mer. mars 06, 2019 9:57 pm

Tu utilises des test d'égalité entre des floats (c'est à bannir parce que ça marche jamais à cause des approximations) avec "x in d".
Si t'as vraiment besoin de comparer des floats, tu peux faire des tests du type |x-y|<epsilon avec epsilon suffisamment petit, mais là c'est pas nécessaire.

Tout simplement : -1<x<1
2015 - 2016 : Terminale S-SVT Spé maths
2016 - 2018 : MPSI/MP* (Option Info) Ginette

X2018

haw7ski
Messages : 109
Enregistré le : mar. déc. 04, 2018 11:07 pm
Classe : MP

Re: problème en info

Message par haw7ski » jeu. mars 07, 2019 12:13 am

@justin067 j'ai essayé, ça marche oui, mais "brutalement" . Genre ça donne une courbe un peu moche mdr ( à cause du range ), mais merci.
@Luckyos OUiii c'est ça, tout simplement!! Mdr merci

Répondre

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 2 invités