Algorithme

Réponses à toutes vos questions de la 2nde à la Terminale toutes séries
forgotten
Membre Naturel
Messages: 13
Enregistré le: 24 Mai 2012, 19:15

algorithme

par forgotten » 24 Mai 2012, 19:27

[CENTER]*******
[/CENTER]



forgotten
Membre Naturel
Messages: 13
Enregistré le: 24 Mai 2012, 19:15

par forgotten » 24 Mai 2012, 20:30

[CENTER]*******
[/CENTER]

Iroh
Membre Relatif
Messages: 374
Enregistré le: 14 Oct 2008, 19:24

par Iroh » 24 Mai 2012, 21:18

Tu considères un intervalle [A, B] que tu segmentes en N intevalles de même taille (B-A)/N que tu appelles P.

Tu détermine la valeur de la fonction en A, puis en A + (B-A)/N, puis en A + 2 * (B-A)/N , ... ; tu sommes le tout et divisent par (N+1): ça sent la moyenne.


Pour l'intégrale, pense à approcher l'aire de la fonction.

forgotten
Membre Naturel
Messages: 13
Enregistré le: 24 Mai 2012, 19:15

par forgotten » 24 Mai 2012, 21:48

[CENTER]*******
[/CENTER]

Iroh
Membre Relatif
Messages: 374
Enregistré le: 14 Oct 2008, 19:24

par Iroh » 24 Mai 2012, 22:09

forgotten a écrit:Bonsoir et merci de votre aide
=> j'avais pensé à la moyenne pondéré mais ca ne semble pas fonctionner car lorsque je choisis des valeurs au hasard, et que je compare à celle de l'algorithme, je n'ai pas trouvé les mêmes valeurs.

Pour la question 3, ne faut il pas que je mette alors:
à la ligne 18: S=> S/((n+1)(B-A))..... OU j'ai faux svp ?


Il y a plusieurs méthode:

Code: Tout sélectionner
a?, b?, n?
s = 0
p = (b - a)/n
for i in {0, ..., n-1} # ou {1, ..., n}
  s = s + p * f(a + i*p)
end
afficher(s)

forgotten
Membre Naturel
Messages: 13
Enregistré le: 24 Mai 2012, 19:15

par forgotten » 25 Mai 2012, 17:43

[CENTER]*******
[/CENTER]

Avatar de l’utilisateur
chan79
Membre Légendaire
Messages: 10330
Enregistré le: 04 Mar 2007, 19:39

par chan79 » 25 Mai 2012, 18:06

forgotten a écrit:Re-bonjour,
j'ai essayé de faire les changements que vous m'avez conseillé de faire et j'obtient:
Image

Mais, je ne vois pas ou est mon erreur (si j'en ai fait une) car en remplaçant par des valeurs je des résultats qui me semblent faux. :mur:
Merci à vous.

essaie d'enlever la ligne 18

forgotten
Membre Naturel
Messages: 13
Enregistré le: 24 Mai 2012, 19:15

par forgotten » 25 Mai 2012, 18:10

[CENTER]*******
[/CENTER]

Avatar de l’utilisateur
chan79
Membre Légendaire
Messages: 10330
Enregistré le: 04 Mar 2007, 19:39

par chan79 » 25 Mai 2012, 18:24

forgotten a écrit:bonjour chan79,
mais si je supprime la ligne 18, ca ne risque pas de "transformer" tous l'algorithme car en me demande que modifier pour calculer l'intégrale que j'ai écrite.
Il faut donc que je fasse intervenir ou directement les primitives (ou l'intégrale mais je ne crois pas que ce soit possible).......sauf si je me trompe entièrement.

La ligne 18 ne doit pas être mise pour l'intégrale. Il s'agit d'ajouter les aires des rectangles.
Pour s'approcher de l'intégrale, n doit être grand

forgotten
Membre Naturel
Messages: 13
Enregistré le: 24 Mai 2012, 19:15

par forgotten » 25 Mai 2012, 18:31

[CENTER]*******
[/CENTER]

Iroh
Membre Relatif
Messages: 374
Enregistré le: 14 Oct 2008, 19:24

par Iroh » 25 Mai 2012, 18:35

Peut-être alors utiliser le théorème de la moyenne:

t'auras alors comme algo:

Code: Tout sélectionner
a?, b?, n?
s = 0
p = (b - a)/n

for i in {0, ..., n}
  s = s + f(a + i*p)
end
s = (s/(n + 1))*(b - a) # changement: tu multiplies en plus s par (b-a)


Là t'as qu'un changement à faire.

forgotten
Membre Naturel
Messages: 13
Enregistré le: 24 Mai 2012, 19:15

par forgotten » 25 Mai 2012, 18:50

[CENTER]*******
[/CENTER]

Iroh
Membre Relatif
Messages: 374
Enregistré le: 14 Oct 2008, 19:24

par Iroh » 25 Mai 2012, 18:59

forgotten a écrit:Merci de votre aide.
Existet-il un moyen de vérifier si l'algorithme final est le bon svp.
Je sais que lorsque j'ai Image j'ai: . (au cas ou sa peut aider).


Vérifier lequel des algo?

Tu peux tester pour a=0, b=2 et n=1000 et donner le résultat ? En précisant quel algo.

forgotten
Membre Naturel
Messages: 13
Enregistré le: 24 Mai 2012, 19:15

par forgotten » 25 Mai 2012, 19:06

[CENTER]*******
[/CENTER]

Iroh
Membre Relatif
Messages: 374
Enregistré le: 14 Oct 2008, 19:24

par Iroh » 25 Mai 2012, 19:19

Code: Tout sélectionner
1   VARIABLES
2     a EST_DU_TYPE NOMBRE
3     b EST_DU_TYPE NOMBRE
4     s EST_DU_TYPE NOMBRE
5     i EST_DU_TYPE NOMBRE
6     n EST_DU_TYPE NOMBRE
7     p EST_DU_TYPE NOMBRE
8   DEBUT_ALGORITHME
9     LIRE a
10    LIRE b
11    LIRE n
12    s PREND_LA_VALEUR 0
13    p PREND_LA_VALEUR (b-a)/n
14    POUR i ALLANT_DE 0 A n
15      DEBUT_POUR
16      s PREND_LA_VALEUR s + F1(a + i*p)
17      FIN_POUR
18    s PREND_LA_VALEUR (s/(n+1))*(b-a)
19    AFFICHER s
20  FIN_ALGORITHME

Fonction numérique utilisée :
F1(x)=pow(x,2)


Pour a=0, b=2, n=1000, j'obtiens: 2.688

Et la valeur théorique de l'intégrale de x^2 entre 0 et 2 vaut: 8/3 = 2.666666

forgotten
Membre Naturel
Messages: 13
Enregistré le: 24 Mai 2012, 19:15

par forgotten » 25 Mai 2012, 19:29

[CENTER]*******
[/CENTER]

Iroh
Membre Relatif
Messages: 374
Enregistré le: 14 Oct 2008, 19:24

par Iroh » 25 Mai 2012, 19:46

forgotten a écrit:Je suis surement conne mais, on diré ke j'ai le même algorithme mais je ne trouve pas le même résultat avec vos valeurs( je retrouve 4.995)
Image
Ou peut être ma faute svp ?!

C'est la fonction F1(x).

forgotten
Membre Naturel
Messages: 13
Enregistré le: 24 Mai 2012, 19:15

par forgotten » 25 Mai 2012, 19:49

[CENTER]*******
[/CENTER]

forgotten
Membre Naturel
Messages: 13
Enregistré le: 24 Mai 2012, 19:15

par forgotten » 25 Mai 2012, 19:53

[CENTER]*******
[/CENTER]

forgotten
Membre Naturel
Messages: 13
Enregistré le: 24 Mai 2012, 19:15

par forgotten » 25 Mai 2012, 20:14

[CENTER]*******
[/CENTER]

 

Retourner vers ✎✎ Lycée

Qui est en ligne

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

Tu pars déja ?



Fais toi aider gratuitement sur Maths-forum !

Créé un compte en 1 minute et pose ta question dans le forum ;-)
Inscription gratuite

Identification

Pas encore inscrit ?

Ou identifiez-vous :

Inscription gratuite