Inscription / Connexion Nouveau Sujet
Niveau terminale
Partager :

algorithme

Posté par
binz
22-02-12 à 18:15

Bonjour, on a fait un cours d'informatique sur les algorithme il ya deja plusieurs semaines, j'ai un dm a faire pour les vacances et un des exo sur les algorithme je suis un peu perdue :s

on considere l'algorithme suivant :

Variable

a est du type nombre
b est du type nombre
c est du type nombre
m est du type nombre
epsilon est du type nombre

début algorithme
    lire epsilon
    a prend la valeur 0
    b prend la valeur 1
    tant que
         début tant que
      m prends la valeur (a+b)/2
     si (m3-2*m2+4m-1<0) ALORS
                
                 Debut de si
                a prend la valeur m
                   Finsi
                   Sinon
                              
                                Debut de sinon
                               b prend la valeur m
                                 finsi
                                 sinon
                          Fin de tant que
     afficher a=
     afficher a
     afficher b=
     afficher b

fin algorithme

faites tourner a la main

pourriez vous juste m'eclairer en me le traduisant et en me donnant un exemple pour que je puisse continuer...vu que j'y comprend pas grand chose à ttes ces conditions ...

Posté par
sanantonio312
re : algorithme 22-02-12 à 18:22

Bonjour,
Il manque quelque chose après 'tant que'.  Non?

Posté par
sanantonio312
re : algorithme 22-02-12 à 18:23

Une autre bizarrerie: epsilon n'est jamais utilisé

Posté par
Glapion Moderateur
re : algorithme 22-02-12 à 18:26

Bonsoir, c'est un algorithme qui cherche par une méthode appelée dichotomies successives les racines d'une fonction (ici y=x3-2*x2+4x-1).
Comment ça marche ?
il repère un intervalle [a;b] (au début c'est [0;1]) pour lequel f(a) et f(b) sont de signe contraire (et donc que la fonction s'annule entre les deux du fait du théorème des valeurs intermédiaires). Puis il teste le point qui est au milieu donc d'abscisse (a+b)/2 et il regarde si pour cette valeur f(m) est positif ou négatif et il retient les deux bornes (entre a et a+b/2 ou (a+b)/2 et b) pour lesquelles la fonction continue à changer de signe.
Par ce procédé il a divisé l'intervalle par 2. Il recommence jusqu'à ce que la distance entre a et b soit plus petite qu'une valeur epsilon donnée au début (par exemple 1/1000).

Et donc il déduit de tout ça, qu'à la fin, la racine est entre a et b et ça permet de donner la valeur de la racine à 1/1000 près (si on a donné epsilon = 1/1000 au début par exemple).

Posté par
Glapion Moderateur
re : algorithme 22-02-12 à 18:28

oui sanantonio a raison, le tant que doit être complété par TANT QUE (a-b)> epsilon

Posté par
binz
re : algorithme 22-02-12 à 19:05

oui, vous avez raison je me suis trompé dans l'énoncé... au temps pour loi...c'est bien
TANT QUE (b-a > epsilon) FAIRE

Posté par
FannyCarimalo
demande de correction 24-04-12 à 13:16

Bonjour binz, mon prof m'a donné le même exercice que toi en devoir maison.
Est-ce qu'il serait possible d'en avoir la correction, afin que je puisse confronter mes résultats aux tiens.
Merci d'avance

Posté par
sanantonio312
re : algorithme 25-04-12 à 12:43

Bonjour,
Tout est dans le post de Glapion du 22 à 18h26



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