Inscription / Connexion Nouveau Sujet
Niveau première
Partager :

Algorithme

Posté par
MarionPreS
03-11-11 à 18:37

Salut, j'aurais besoin de votre aide.
Il s'agit d'un algorithme avec des questions, voici l'énoncé

1a) Représenter à l'écran de la calculatrice les fonctions x x²-1 et x-x sur [ 0 ; +[.
b) On considère une valeur approchée à 0.1 près de la solution de l'équation x²-1 = x .

2. On considère l'algorithme suivant :

Initialisations
a prend la valeur 1
b prend la valeur 2
Traitement
Tant que b-a > 0.01
m prend la valeur a+b/2
Si m²-1 < m alors
a prend la valeur m
sinon
b prend la valeur m
Fin Si
Fin tant que
Sorties
Afficher a, b


a) Faire fonctionner cet algorithme : effectuer quatre itérations et noter les valeurs successives de a et b
b) quel est le rôle de cet algorithme ?
c) Ecrire le programme associé dans un langage de programmation. Quel est l'encadrement obtenu ?

Voila, si vous pouvez m'aider ça serait cool , et rapidement.

Merci Marion

Posté par
MarionPreS
Un algorithme que j'ai du mal a comprendre 03-11-11 à 20:01

Salut, j'aurais besoin de votre aide.
Il s'agit d'un algorithme avec des questions, voici l'énoncé

1a) Représenter à l'écran de la calculatrice les fonctions x x²-1 et x-x sur [ 0 ; +[.
b) On considère une valeur approchée à 0.1 près de la solution de l'équation x²-1 = x .

2. On considère l'algorithme suivant :

Initialisations
a prend la valeur 1
b prend la valeur 2
Traitement
Tant que b-a > 0.01
m prend la valeur a+b/2
Si m²-1 < m alors
a prend la valeur m
sinon
b prend la valeur m
Fin Si
Fin tant que
Sorties
Afficher a, b


a) Faire fonctionner cet algorithme : effectuer quatre itérations et noter les valeurs successives de a et b
b) quel est le rôle de cet algorithme ?
c) Ecrire le programme associé dans un langage de programmation. Quel est l'encadrement obtenu ?

Voila, si vous pouvez m'aider ça serait cool ,

*** message déplacé ***
* Océane > le multi-post n'est pas toléré sur le forum ! *

Posté par
plumemeteore
re : Algorithme 03-11-11 à 20:58

Bonsoir Marion.
départ : a = 1; b = 2
première itération : m = (1+2)/2 = 1,5; m²-1 = 2,25-1 = 1,25 < 1,5; a devient 1,5 et b reste 2
deuxième itération : m = (1,5+2)/2 = 1,75; m²-1 = 3,0625-1 = 2,0625 > 1,75; a reste 1,5 et b devient 1,75
etc

L'équation x²-1 = x équivaut à x²-x = 1.
La dérivée de x²-x est 2x-1 et est positive quand x > 0,5; la fonction est donc croissante dans [0,5;infini[
Dans cet intervalle, si x²-1 < x : x²-x < 1 et x est inférieur à s tel que s²-s = 1 et que s²-1 = 1; de même,  si x²-1 > x : x²-x > 1 et x est supérieur à s tel que s²-s = 1 et que s²-1 = 1
La solution se trouve dans l'intervalle [1;2] car on s'est assuré que 1²-1 < 1 et que 2²-2 > 2
supposons un intervalle [a:b] dans lequel se trouve la solution
on prend m le milieu de cet intervalle; [a;m] et [m;b] sont deux intervalles deux fois plus petits
on teste m
si m²-1 < m, c'est que m est trop petit et la solution est supérieure à m tout en restant inférieure à b; la solution se trouve dans [m;b]; comme le début et la fin d'un intervalle où se trouve la solution doivent toujours s'appeler respectivement a et b, a prend la valeur m pour le tour suivant
si m²-1 > m, c'est que m est trop grand et la solution est inférieur à m tout en restant supérieure à b; la solution se trouve dans [a;m] et cette fois, c'est b qui prend la valeur de m pour le tour suivant
à chaque itération, [a;b] devient deux fois plus petit; après un certain nombre d'itérations (sept), il devient égal ou inférieur 0,01, ce qui arrête la boucle; comme solution est entre a et b : (solution moins a) b-a 0,01; (b moins solution) b-a 0,01; a et b sont donc des solutions à 0,01 près

Voici un programme en Visual Basic

Sub éqn
dim a as single, b as single, m as single 'single nombre à virgule à précision moyenne
a = 1 : b = 2
do while b-a > 0.01 'on utilise dans ce langage le point décimal au lieu de la virgule décimale
m = (a+b)/2
if m^2-1 < m then
a = m
else
b = m
end if
loop 'la boucle va de do à loop
msgbox "a: " & a & "; b: " & b 'affiche quelque chose comme a: 1.6; b: 1.62
end sub

Posté par
plumemeteore
re : Algorithme 03-11-11 à 21:13

rebonsoir
avec l'équation x²-1 = √x, équivalente à x²-√x = 1
la dérivée de x²-√x = 2x - 1/(2√x)
dérivée positive 2x > 1/(2√x) 4x² > 1/(4x) (car on est dans les nombres positifs) 16x³ > 1 x > racine cubique de 1/16
x²-√x est donc croissante dans [1; infini]
la solution se trouve dans [1;2] car 1²-1 < √1 et 2²-1 > √2
le reste est comme dans mon texte précédent

dans le programme la ligne if m^2-1 < m then devient if m^2-1 < sqr(m) then



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 1677 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 !