Inscription / Connexion Nouveau Sujet
Niveau terminale
Partager :

Algorithme

Posté par
juan11
12-02-15 à 16:51

Bonjour, à tous j'ai un exercice sur les algorithme j'aimerai bien avoir de l'aide parce que c'est pas mon fort svp

On note n le nombre d'intervalles construits entre 1 et 2 et h le pas utilisé.
Chaque rectangle a pour base un intervalle [a;b] dont les valeurs successives sont [1;1,2],[1,2;1,4] etc...[1.8,2].
On concidère l'algorithme suivant :

i,n,h,a,b,GetD sont des nombres
n prend la valeur 5
a prend la valeur 1
b prend la valeur a+h
G prend la valeur 0
D prend la valeur 0
Pour i allant de 1 à n
G prend la valeur ...
D prend la valeur ...
a prend la valeur ...
b prend la valeur ...
Fin pour
Afficher G
Afficher D

1) On souhaite maintenant que l'utilisateur indique en entrée le nombre n d'intervalles à utiliser. Proposer et tester un algorithme qui réponde à cette question.
2)Modifier et tester l'algorithme précédent de façon à implémenter la méthode des trapèzes.Compléter alors le tableau suivant :

n                                  10                100             1000
Approximation de l'aire  

3)Modifier l'algorithme précédent pour qu'il calcule l'aire sous la courbe de la fonction inverse entre c ou d où c et d sont des réels strictements positifs donnés par l'utilisateur.
Tester ce programme pour calculer:

I = de3 à 10 de  1/x dx

Comparer avec la valeur exacte.(logiciel de calcul formel)

Merci pour votre aide

Posté par
Cherchell
re : Algorithme 13-02-15 à 15:23

Je devine que tu veux calculer une approximation de l'aire mais il faudrait me donner au moins des renseignements sur la fonction : est-elle croissante ? décroissante sur [a ; b] ?
G et D doivent représenter probablement des sommes de rectangles mais comment sont ils fabriqués ? Il est impossible que ton prof t'ait posé l'exercice ainsi. Il y a autre chose.

Posté par
juan11
re : Algorithme 13-02-15 à 16:11

Je n'avais pas mis le début de l'exercice je trouvais que ça faisais long mais en fait il le faut le voici :

On souhaite calculer l'aire sous la courbe de la fonction inverse entre 1 et 2.
L'intervalle [1;2] a été partagé en 5 petits intervalles d'amplitudes 0,2.Le domaine dont on veut calculer l'aire est contenu dans la réunion de 5 petits rectangle dits "à gauche " de hauteurs respectives f(1),f(1,2),f(1,4),f(1,6) et f(1,8).
Ce même domaine contient la réunion de 5 petits rectangles dits "à droite" de hauteurs respectives f(1,2),f(1,4),f(1,6),f(1,8)et f(2).


Ensuite pour l'algorithme j'ai oublié de remplir les "... "
c'est :
G prend la valeur G+(1/b)*h
D prend la valeur D+(1/a)*h
a prend la valeur a+h
b prend la valeur b+h

Voilà en espérant que vous pourrez m'aider

Posté par
Cherchell
re : Algorithme 14-02-15 à 06:43

1 On souhaite maintenant que l'utilisateur indique en entrée le nombre n d'intervalles à utiliser
Proposer et tester un algorithme qui réponde à cette question

Si n désigne le nombre de rectangles, la largeur de chaque rectangle est  
Le rectangle N° 1 est construit à partir des points de l'axe des abscisses d'abscisses 0 et  , le rectangle droit a pour longueur    donc a pour aire   soit h f (a)
Le rectangle N° 2 est construit à partir des points de l'axe des abscisses d'abscisses   et   donc a pour largeur  , le rectangle droit a pour longueur   donc f (b)  donc a pour aire h f (b)
Le rectangle N° k est construit à partir des points de l'axe des abscisses d'abscisses   et   donc a pour largeur  , le rectangle droit a pour longueur    donc f (b)  donc a pour aire h f (b)

De même pour les rectangles gauches

Le rectangle N° 1 est construit à partir des points de l'axe des abscisses d'abscisses 0 et  , le rectangle gauche a pour longueur    donc a pour aire   soit h f (a)
Le rectangle N° 2 est construit à partir des points de l'axe des abscisses d'abscisses   et   donc a pour largeur  , le rectangle gauche a pour longueur   donc f (a)  donc a pour aire h f (a)
Le rectangle N° k est construit à partir des points de l'axe des abscisses d'abscisses   et   donc a pour largeur  , le rectangle gauche a pour longueur    donc f (a)  donc a pour aire h f (a)

L'algorithme est donc

VARIABLES
a EST_DU_TYPE NOMBRE
b EST_DU_TYPE NOMBRE
G EST_DU_TYPE NOMBRE
D EST_DU_TYPE NOMBRE
h EST_DU_TYPE NOMBRE
n EST_DU_TYPE NOMBRE
i EST_DU_TYPE NOMBRE
DEBUT_ALGORITHME
LIRE n
a PREND_LA_VALEUR 1
h PREND_LA_VALEUR 1/n
G PREND_LA_VALEUR 0
D PREND_LA_VALEUR 0
POUR i ALLANT_DE 1 A n
  DEBUT_POUR
  b PREND_LA_VALEUR a + h
  G PREND_LA_VALEUR G + h*1/a
  D PREND_LA_VALEUR D + h*1/b
  a PREND_LA_VALEUR a + h
  FIN_POUR
AFFICHER D
AFFICHER G
FIN_ALGORITHME

2 Modifier et tester l'algorithme précédent de façon à implémenter la méthode des trapèzes
  L'aire d'un trapèze  est égale à    soit pour un trapèze de base les points d'abscisses a et b :    donc avec la fonction inverse :  
L'algorithme devient donc :
VARIABLES
  a EST_DU_TYPE NOMBRE
  b EST_DU_TYPE NOMBRE
  n EST_DU_TYPE NOMBRE
  h EST_DU_TYPE NOMBRE
  S EST_DU_TYPE NOMBRE
  k EST_DU_TYPE NOMBRE
  m EST_DU_TYPE NOMBRE
DEBUT_ALGORITHME
  a PREND_LA_VALEUR 1
  b PREND_LA_VALEUR 2
  LIRE n
  h PREND_LA_VALEUR (b-a)/n
  S PREND_LA_VALEUR 0
  POUR k ALLANT_DE 1 A n
  DEBUT_POUR
    b PREND_LA_VALEUR a+h
    S PREND_LA_VALEUR S+h*(1/a+1/b)/2
    a PREND_LA_VALEUR a+h
    b PREND_LA_VALEUR b+h
  FIN_POUR
  AFFICHERCALCUL S
FIN_ALGORITHME

Compléter alors le tableau suivant :

n                     10            100             1000
Approximation de l'aire 0,6937714 0,6937714 06937714

3
  c EST_DU_TYPE NOMBRE
  d EST_DU_TYPE NOMBRE
  n EST_DU_TYPE NOMBRE
  h EST_DU_TYPE NOMBRE
  S EST_DU_TYPE NOMBRE
  k EST_DU_TYPE NOMBRE
  m EST_DU_TYPE NOMBRE
DEBUT_ALGORITHME
  Lire c
  Lire d
  LIRE n
  h PREND_LA_VALEUR (b-a)/n
  S PREND_LA_VALEUR 0
  POUR k ALLANT_DE 1 A n
  DEBUT_POUR
    b PREND_LA_VALEUR a+h
    S PREND_LA_VALEUR S+h*(1/a+1/b)/2
    a PREND_LA_VALEUR a+h
    b PREND_LA_VALEUR b+h
  FIN_POUR
  AFFICHERCALCUL S
FIN_ALGORITHME

Avec l'algorithme : l'intégrale est approximativement 1,2039728 en choisissant c = 3, b = 10 et n = 10 000
Avec un logiciel de calcul formel, l'intégrale est égale à ln 10 - ln 3 ≈ 1,203972804.
L'approximation est donc bonne

Posté par
Cherchell
re : Algorithme 14-02-15 à 06:51

j'ai fait une erreur de manipulation
Si n désigne le nombre de rectangles, la largeur de chaque rectangle est h = 1/n  
Le rectangle N° 1 est construit à partir des points de l'axe des abscisses d'abscisses 0 et h = 1/n , le rectangle droit a pour longueur f(1/n) donc a pour aire h f(a + h) soit h f(b)
Le rectangle N° 2 est construit à partir des points de l'axe des abscisses d'abscisses 1/n  et 2/n  donc a pour largeur h = 1/n, le rectangle droit a pour longueur f(2/n) donc f(b)  donc a pour aire h f (b)
Le rectangle N° k est construit à partir des points de l'axe des abscisses d'abscisses k/n  et (k + 1)/n  donc a pour largeur h = 1/n , le rectangle droit a pour longueur  f((k+1)/n) donc f (b)  donc a pour aire h f (b)

De même pour les rectangles gauches

Le rectangle N° 1 est construit à partir des points de l'axe des abscisses d'abscisses 0 et 1/n, le rectangle gauche a pour longueur f(0)  donc a pour aire h f(0)  soit h f (a)
Le rectangle N° 2 est construit à partir des points de l'axe des abscisses d'abscisses 1/n  et 2/n  donc a pour largeur 1/n, le rectangle gauche a pour longueur f(1/n) donc f(a)  donc a pour aire h f(a)
Le rectangle N° k est construit à partir des points de l'axe des abscisses d'abscisses k/n  et (k + 1)/n donc a pour largeur h = 1/n, le rectangle gauche a pour longueur f(k/n) donc f (a)  donc a pour aire h f(a)
  
L'aire d'un trapèze  est égale à \frac{petite base + grande base}{2}\times hauteur soit pour un trapèze de base les points d'abscisses a et b : \frac{f(a)+ f(b)}{2}\times h donc avec la fonction inverse :  \frac{\frac{1}{a}+\frac{1}{b}}{2}\times h d'où l'algorithme



Vous devez être membre accéder à ce service...

Pas encore inscrit ?

1 compte par personne, multi-compte interdit !

Ou identifiez-vous :


Rester sur la page

Inscription gratuite

Fiches en rapport

parmi 1742 fiches de maths

Désolé, votre version d'Internet Explorer est plus que périmée ! Merci de le mettre à jour ou de télécharger Firefox ou Google Chrome pour utiliser le site. Votre ordinateur vous remerciera !