Premiers termes d'une suite

Marguerite5925 Messages postés 4 Date d'inscription   Statut Membre Dernière intervention   -  
ccm81 Messages postés 11033 Statut Membre -
Bonjour,
Bonjour,
je débute avec Python . J'aimerais calculer les premiers termes de cette suite . Quelles sont mes erreurs s'il vous plaît? merci beaucoup
def f(x):
    return x**2-2
    a=1
    b=2
    for n in range(4):
        a=a-f(a)*(b-a)/(f(b)-f(a)) 
    print (a)



PS: l'indentation n'apparaît pas ici... bizarre, comment faire?

EDIT : En utilisant correctement les balises de code... l'indentation apparait.... bizarre... :-)
Utilisation des balises de code : https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code

Configuration: Windows / Chrome 80.0.3987.106

11 réponses

  1. jordane45 Messages postés 30427 Date d'inscription   Statut Modérateur Dernière intervention   4 832
     
    Bonjour,
    en virant le return peut-être
    1
  2. ccm81 Messages postés 11033 Statut Membre 2 434
     
    Bonjour à tous

    Tu mélanges la définition de la fonction f et le programme proprement dit qui l'utilise
    Essaies comme ceci

    def f(x):
        return x**2-2
    
    a=1
    b=2
    for n in range(4):
        a=a-f(a)*(b-a)/(f(b)-f(a)) 
        print (a)

    Cdlmnt
    1
  3. ccm81 Messages postés 11033 Statut Membre 2 434
     
    Il te suffit de "sortir" print(a) de ta boucle for n in range(101)

    Cdlmnt
    1
  4. ccm81 Messages postés 11033 Statut Membre 2 434
     
    print (s(n))

    Cdlmnt
    1
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. marguerite5925
     
    Ca ne fonctionne toujours pas...
    0
    1. jordane45 Messages postés 30427 Date d'inscription   Statut Modérateur Dernière intervention   4 832
       
      Que t'affiche ton print ?

      Q'uesperes tu obtenir ?
      0
    2. ccm81 Messages postés 11033 Statut Membre 2 434
       
      Si

      0
  7. Marguerite5925 Messages postés 4 Date d'inscription   Statut Membre Dernière intervention  
     
    J'aimerais obtenir les 4 premiers termes de cette suite. c'est juste un exemple, j'aimerais savoir en règle générale comme calculer et obtenir les premiers termes d'une suite à l'aide de Python.
    0
    1. jordane45 Messages postés 30427 Date d'inscription   Statut Modérateur Dernière intervention   4 832
       
      Tu ne m'as toujours pas indiqué ce que t'affichait ton print
      0
  8. Marguerite5925 Messages postés 4 Date d'inscription   Statut Membre Dernière intervention  
     
    il devrait afficher les premiers termes de cette suite définie par récurrence: f(a)=(2+2a)/(2+a)
    4/3, etc...
    0
  9. Marguerite5925 Messages postés 4 Date d'inscription   Statut Membre Dernière intervention  
     
    super ça fonctionne, un grand merci!!
    0
  10. Marguerite5925 Messages postés 4 Date d'inscription   Statut Membre Dernière intervention  
     
    Bonjour, autre question: et si maintenant j'aimerais afficher uniquement le terme d'indice 100 de cette suite. faut-il remplacer "for n in range(4):" par "for n in range(100, 101):" ?
    ça ne fonctionne pas...ça m'affiche uniquement le 1er terme...
    merci
    0
  11. Marguerite5925 Messages postés 4 Date d'inscription   Statut Membre Dernière intervention  
     
    Merci beaucoup!
    0
  12. Marguerite5925 Messages postés 4 Date d'inscription   Statut Membre Dernière intervention  
     
    Bonjour,
    autre question: j'aimerais après avoir défini une fonction ,la calculer pour une certaine valeur.
    Par exemple j'ai défini ici la somme de n entiers, et j'aimerais ensuite donner le résultat pour n=10 (somme des entiers de 1 à 10).
    Apparemment il y a une erreur au niveau de "n=10 print(s)"... laquelle? merci
    def s(n):
        s=0
        for i in range (1,n+1):
            s=s+i
        return (s)
        
    n=10
    print (s)
    
    
    0