Je sais que la série somme de 1/n est divergente
Comment faire avec mapple pour lui demander de sommer jusqu'à ce que le résultat ateigne environ 100 ?
Merçi par avance
*** message déplacé ***
Salut,
somme:= proc(n)
> local i, resultat;
> i:=1; resultat:= 0;
> while i<=n do resultat := resultat+1/i: i:=i+1 od;
> return evalf(resultat);
> end proc;
> somme(100);
5.187377518
La question que tu poses si je me trompes c'est :
Determiner la plus petite valeur de n telle que :
Riemann:=proc()
local i,s:
s:=0:
i:=0:
while s<100 do
i:=i+1;
s:=s+1/i;
od:
[i,evalf(s)];
end;
Bonsoir, cygne.
La procédure donnée par Matouille2b dans son post de 19h48 est correcte, mais Maple va mettre "un certain temps" à trouver le résultat. Parce que une valeur approchée de n est e^(100), soit 2.7 10^(43). Il faudra au moins 10^20 années ...
Merçi à tous
Mais si je sais que c est possible on l avait fait et il faut environ 65*10^45 termees pour atteindre environ 108 et on a eu le résultat en trés peu de temps
Mais voilà je sais qu il y a une histoire de boucle Mais aprés ??
Bon je vais essayer vos méthodes
Merçi
Je n'ai pas affirmé qu'il était impossible de trouver le résultat, j'ai affirmé que la procédure décrite par Matouille2b mettrait au moins 10^(20) années à s'exécuter.
Si on tient vraiment à écrire des instructions Maple, en voici:
n:=1:i:=0:while evalf(sum(1/k,k=1..n))<100 do n:=n*10:i:=i+1: od:i;
Maple renvoie la valeur 44.
Cela montre que la somme des 1/k, pour k variant de 1 à 10^(43) est inférieure à 100 et que la somme des 1/k, pour k variant de 1 à 10^44 est supérieure à 100.
On peut affiner l'encadrement trouvé:
i:=0:while evalf(sum(1/k,k=1..10^(43)+i*10^(42)))<100 do i:=i+1: od:i;
Maple renvoie la valeur 6.
La valeur de n pour laquelle la somme de 1/k, pour k variant de 1 à n, dépasse pour la première fois 100, est donc comprise entre 1.5 10^(43) et 1.6 10^43
Si on veut trouver la valeur exacte de n, il y a moyen d'aller plus vite. On sait que la somme des 1/k pour k allant de 1 à n est égale à ln n + gamma, où gamma est la constante d'Euler, la précision étant approximativement 1/(2n).
D'où les petites instructions très simples:
Digits:=100:n:=floor(evalf(exp(100-gamma)));
Maple répond:
n := 15092688622113788323693563264538101449859497
Vérifications:
evalf(sum(1/k,k=1..15092688622113788323693563264538101449859497));
Réponse:
100.0000000000000000000000000000000000000000000090043212088978916558581607357775193996186012972170661
evalf(sum(1/k,k=1..15092688622113788323693563264538101449859496));
Réponse:
99.99999999999999999999999999999999999999999994274707407171113078294114873868911019770156104249600526
Vous devez être membre accéder à ce service...
Pas encore inscrit ?
1 compte par personne, multi-compte interdit !
Ou identifiez-vous :