Bonjour, je suis sur cet exercice depuis ce matin et je ne sais vraiment pas comment m'en sortir, ni par où commencer...
Dans cet exercice nous allons utiliser la série de Leibniz pour approximer π.
On considère la suite (un) définie par
Un= (-1)n/(2n+1)
On note Sn la somme des n premiers termes de (un).
On admet que (Sn) converge vers π/4 mais la convergence est très lente.
Compléter le programme en Python suivant pour qu'il calcule et affiche S100, puis qu'il affiche 4 x S 100
s = 0
u = 0
for i in range (...):
u = ...
s = ...
print (...)
print (...)
Merci d'avance pour votre aide!
bonjour,
"je ne sais vraiment pas comment m'en sortir, ni par où commencer..."
on te demande de compléter l'algorithme.
as tu compris ce que fait cet algo ?
Merci pour votre réponse
Je pense que l'algorithme calcule à partir de Un une valeur se rapprochant de pi? Ou de pi/4? Ou les deux?
l'algo calcule toutes les valeurs de U,
et en fait la somme rangée dans s.
comment peux tu le compléter ?
à chaque tour, u = ??
Si le programme calcule toutes les valeurs de u alors u=(-1)n/(2n+1)? Ou un+1 car la valeur de u doit augmenter?
En fait je ne sais pas du tout comment placer la suite
je te traduis l'algo en pseudo français :
départ : on met u à zero, on met s à 0
for i in range (.....)
calculer la valeur de u
ajouter à s la valeur de u ( comme ça s sera egale à la somme de tous les u qu'on a calculés)
la partie en bleu, on ne la fait pas une seule fois, puisqu'on veut aller jusque S100
on complétera la ligne for à la fin.
que mets tu pour calculer u ?
Aaah merci je crois que je comprend mieux!
On a
For i in range (0,100):
u=(-1)n/(2n+1)
S=S+u
Print (S100)
Print (4*S100)
Je suis pas convaincu par ce que j'ai fais mais je pense avoir compris l'idée globale
oui, tu as bien avancé .. tu y es presque.
en python dans le range , la dernière valeur est exclue.
donc si tu écris range(0, 100), le dernier calcul se fait pour i=99...
rectifie !
calcul de u : quand tu calcules la 1ère fois, (au 1er passage ds la boucle), i=0, mais que vaut n ?
et au deuxième passage, i=1, mais que vaut n ?
ton calcul est presque bien, mais pas avec n....
tu rectifies ?
s=s+u : parfait !
à la fin, print(S100) : on ne connait pas S100, c'est S qu'on a calculé.
rectfiie !
Quand on dit for i in range i remplacerait n dans la syntaxe?
S=0
u=0
For i in range (0,101)
u= (-1i)/2i+1
S=S+u
Print (S)
Print (4*S)
super !
S=0
u=0
For i in range (0,101)
u= (-1i)/2i+1 ===> u = ((-1)**i) / (2*i + 1)
S=S+u
Print (S)
Print (4*S)
en bleu : pour respecter la syntaxe de python.
OK ?
je t'en prie.
si tu fais tourner cet algo,
on affiche
4S = 3.1514934010709914
et si on va jusque 200, on affiche
3.1465677471829556
pas mal comme approximation, non ?
Vous devez être membre accéder à ce service...
Pas encore inscrit ?
1 compte par personne, multi-compte interdit !
Ou identifiez-vous :