Aller au contenu

Tp newton


Clemmellian

Messages recommandés

Bonjour, 

J'ai le programme python à completer !

Cependant, je n"ai pas reussi à le completer complètement :

def f(x):
    return (x**3-2*x-5)
def f_prime(x):
    return (3*x**2-2)
def Newton(x_0,nb_etapes):
    valeurs=[0]*(nb_etapes+1)
    valeur[0]=x0
    for idValeur in range (x1,xn):
        x=valeurs[x_0+n]
        valeurs[idValeur]=x-1
    return valeurs
def affichage(liste):
        n=len(liste)
        for idValeur in range(n):
            print("x_{}={}".format(idValeur,liste[idValeur]))

 

 

Merci :

Doc22 m.odt

Lien vers le commentaire
Partager sur d’autres sites

  • E-Bahut

Bonjour,

Je te mets ci-après ton script avec mes corrections et/ou commentaires en rouge

def f(x):
    return (x**3-2*x-5)

def f_prime(x):
    return (3*x**2-2)

def Newton(x_0,nb_etapes):
    valeurs=[0]*(nb_etapes+1)
    valeurs[0]=x_0 attention aux fautes de frappe
    for idValeur in range (1,nb_etapes+1): de façon à explorer toutes les valeurs en commençant par la deuxième
        x=valeurs[idValeur-1] x prend la valeur précédente puisqu'on veut calculer la valeur actuelle à la ligne suivante
        valeurs[idValeur]=x-1 faux, revois la méthode de newton, à quoi serviraient f(x) et f'(x) ?
    return valeurs

def affichage(liste):
        n=len(liste)
        for idValeur in range(n):
            print("x_{}={}".format(idValeur,liste[idValeur]))

 

Lien vers le commentaire
Partager sur d’autres sites

  • E-Bahut

Bonjour,

Il y a 12 heures, Clemmellian a dit :

valeurs[idValeur]=x- f(a) / f'(a) +a

C'est quoi, ce a ?

Dans la méthode de Newton, on calcule la nouvelle valeur en fonction de l'ancienne et des valeurs de la fonction et de la dérivée pour l'ancienne. Tu n'as pas lu ce que t'a posté PAVE (ou regardé sur la toile le principe de la méthode) ?

L'ancienne valeur est dans x
x=valeurs[idValeur-1]
donc, c'est simplement
valeurs[idValeur]=x- f(x) / f'(x)

Essaie le script avec les rectifications, pour affichage(Newton(1.5,5)) tu dois trouver

x_0=1.5
x_1=2.473684210526316
x_2=2.156432996122822
x_3=2.0966046038619233
x_4=2.094553850744971
x_5=2.0945514815454866

 

 

 

Lien vers le commentaire
Partager sur d’autres sites

Rejoindre la conversation

Vous pouvez publier maintenant et vous inscrire plus tard. Si vous avez un compte, connectez-vous maintenant pour publier avec votre compte.

Invité
Répondre à ce sujet…

×   Collé en tant que texte enrichi.   Coller en tant que texte brut à la place

  Seulement 75 émoticônes maximum sont autorisées.

×   Votre lien a été automatiquement intégré.   Afficher plutôt comme un lien

×   Votre contenu précédent a été rétabli.   Vider l’éditeur

×   Vous ne pouvez pas directement coller des images. Envoyez-les depuis votre ordinateur ou insérez-les depuis une URL.

Chargement
×
×
  • Créer...
spam filtering
spam filtering