Inscription / Connexion Nouveau Sujet
Niveau première
Partager :

Algorithme d'Héron d'Alexandrie

Posté par
Heron
10-03-12 à 15:46

J'aurais besoin d'aide pour rédiger un algorithme sur algobox... Je n'arrive pas à trouver comment faire cet algorithme...
Merci de m'aider le plus vite possible :$..!

Voici l'énoncé:

Il permet de déterminer des valeurs approchées de racines carrées d'entiers.
Pour déterminer une valeur approchée de racinecarrée(n), où n est un entier naturel, on aura à calculer les valeurs successives de A2, A3, A4, A5... avec A1=n, A2= 1/2(A1 + n/A1), A3= 1/2(A2 + n/A2), ect...

On rédigera cet algorithme en considérant que l'on cherche une valeur approchée à 10^-6 près.


Ce serait vraiment vrai très gentil de me donner un coup de main... !

Posté par
Glapion Moderateur
re : Algorithme d'Héron d'Alexandrie 10-03-12 à 16:02

Bonjour, pour réussir à faire des algorithmes, il faut se lancer.
Essaye de faire une boucle qui calcule les termes successifs de la suite. Fait la avec un Tant Que qui te permettra de sortir de la boucle quand la différence entre deux termes consécutifs de la suite sera inférieure à 10-6 (car ça voudra dire que les termes de la suites ont pratiquement atteint leur limite). Il n'y a pas grande difficulté. Je te corrigerai la syntaxe si ton algorithme ne tourne pas dans Algobox, mais essaye de faire quelque chose.

Posté par
Heron
photo 10-03-12 à 22:37

J'ai fait ca à présent, mais ça ne marche pas completement, surtout niveau précision et avec le résultat à 10puissance -6 près...
Merci !


http://img638.imageshack.us/img638/3347/bildschirmfoto20120310u.png

http://img600.imageshack.us/img600/9712/bildschirmfoto20120310uw.png

Posté par
Glapion Moderateur
re : Algorithme d'Héron d'Alexandrie 11-03-12 à 16:16

non ça ne va pas du tout. Tu fais varier X de 1 à 10 mais tu affectes à A la valeur (A+n/A)/2 donc il prends cette valeur et il ne change jamais. ça ne calcule pas les termes de la suite ça. Et ta boucle de sert à rien puisque de toute façon ça affiche A qui vaut (A+n/A)/2 et comme A=n et ne change jamais de valeur ça affiche (n+n/n)/2=(n+1)/2 dans tous les cas. Ton algorithme ne fait pas du tout ce que l'on te demande de faire.

Il faut réfléchir un minimum à l'objectif que l'on veut atteindre avant d'écrire un algorithme, sinon ça fait n'importe quoi.

Posté par
Heron
Algorithme 11-03-12 à 21:10

Je l'ai fait varié de 0 à +l'infini, c'est un !0...
Mais merci quand meme!

Posté par
Glapion Moderateur
re : Algorithme d'Héron d'Alexandrie 11-03-12 à 22:27

Bon c'est ton jour de chance, je vois que tu es sérieusement largué :

VARIABLES
A EST_DU_TYPE NOMBRE
N EST_DU_TYPE NOMBRE
B EST_DU_TYPE NOMBRE
DEBUT_ALGORITHME
LIRE N
A PREND_LA_VALEUR N
B PREND_LA_VALEUR (A+N/A)/2
TANT_QUE (abs(B-A)>pow(10,-6)) FAIRE
DEBUT_TANT_QUE
A PREND_LA_VALEUR B
B PREND_LA_VALEUR (A+N/A)/2
FIN_TANT_QUE
AFFICHER "La racine carrée de "
AFFICHER N
AFFICHER " est : "
AFFICHER* B
FIN_ALGORITHME

Cela dit, il faut que tu comprennes ce que ça fait exactement.

Posté par
Heron
algorithme 12-03-12 à 08:31

Je viens de comprend où étaient mes erreurs...
Je te remercie beaucoup!!!!!



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