Inscription / Connexion Nouveau Sujet
Niveau terminale
Partager :

Algorithme et suite

Posté par
Alex28
03-05-12 à 16:39

Bonjour à tous,

Dans un devoir maison, je dois faire un algorithme de façon à trouver la valeur de n pour laquelle Un+1-Un < 0.01

J'ai Un= 1+(12/5n)
     Un+1= (1/5)*Un + (4/5)
     U0= 13

Voici mon algorithme mais il ne fonctionne pas, pouvez m'aider à trouver mon (mes) erreur(s)

VARIABLES
Un EST_DU_TYPE NOMBRE
Un+1 EST_DU_TYPE NOMBRE
n EST_DU_TYPE NOMBRE
DEBUT_ALGORITHME
n PREND_LA_VALEUR 0
Un PREND_LA_VALEUR 1+(12/5^n)
Un+1 PREND_LA_VALEUR (1/5)*Un+(4/5)
TANT_QUE (Un+1 - Un > 0.01) FAIRE
DEBUT_TANT_QUE
n PREND_LA_VALEUR n+1
FIN_TANT_QUE
AFFICHER n
FIN_ALGORITHME

Merci de votre aide ...
Alexandre

Posté par
Hadrian
re : Algorithme et suite 03-05-12 à 17:08

Dans ton TANT_QUE il n'y a pas de priorité dans ton langague de programmation ?
peut-être ((Un+1-Un)>0.01)

Posté par
Alex28
re : Algorithme et suite 03-05-12 à 19:15

Merci de votre réponse, j'ai essayé mais ça ne marche toujours pas
Je cherche mais je ne comprend toujours pas comment il faut faire ...

Posté par
Hadrian
re : Algorithme et suite 03-05-12 à 19:42

Salut,
j'ai copié/coller ton algo et ça marche très bien en effet.
tu cherche "la valeur de n pour laquelle Un+1-Un < 0.01"
Or U0=13 et U1=17/5 donc Un+1-Un < 0 donc ça renvoie n.

Posté par
Alex28
re : Algorithme et suite 03-05-12 à 20:00

Désolé mais je ne comprend pas ...

Posté par
Hadrian
re : Algorithme et suite 03-05-12 à 20:07

Ta suite est décroissante.
De plus , U0=13, U1=17/5 ce qui fait U1-U0 < 0 < 0.01
donc ton algorithme renvoie 0, si tu veux trouver la valeur  de n pour laquelle Un+1-Un < 0.01.
Dans ton algo tu fait "TANT_QUE (Un+1 - Un > 0.01) FAIRE"
or ce n'est jamais vrai !

Posté par
Alex28
re : Algorithme et suite 03-05-12 à 20:16

ok mais comment faut-il faire alors ?

Posté par
Hadrian
re : Algorithme et suite 03-05-12 à 20:40

Ok, alors.
Moi j'ai fais ceci :

VARIABLES
Un EST_DU_TYPE NOMBRE
Un+1 EST_DU_TYPE NOMBRE
n EST_DU_TYPE NOMBRE
DEBUT_ALGORITHME
n PREND_LA_VALEUR 0
Un PREND_LA_VALEUR 1+(12/pow(5,n))
Un+1 PREND_LA_VALEUR (1/5)*Un+(4/5)
TANT_QUE ((Un-Un+1) > 0.01) FAIRE
DEBUT_TANT_QUE
n PREND_LA_VALEUR n+1
Un PREND_LA_VALEUR 1+(12/pow(5,n))
Un+1 PREND_LA_VALEUR (1/5)*Un+(4/5)
FIN_TANT_QUE
AFFICHER n
FIN_ALGORITHME


Si je ne met pas l'affectation de Un et Un+1 dans la boucle, j'ai un dépassement de capacité. J'imagine qu'il ne met pas les valeurs a jours avec l'incrémentation seul du n.


Par contre tu est sur que tu devais " trouver la valeur de n pour laquelle Un+1-Un < 0.01" et pas " trouver la valeur de n pour laquelle Un-Un+1 < 0.01 ????

Posté par
Alex28
re : Algorithme et suite 04-05-12 à 12:01

Bonjour et encore merci pour votre aide

Mon sujet c'est:

Rédiger les questions bonus du contrôle du 13 avril, puis lma question 6)
6) a) Etant donner une suite (Un) définit par U0 = 13 et Un+1 = (1/5)Un+4/5, écrire en langage naturel un algorithme déterminant la plus petite valeur de n pour laquelle Un+1 - Un < 0.01.
   b) Le programmer sur votre calculatrice ou sous algobox.
       recopier le programme sur votre copie.

Après la prof s'est peut être trompée ...

Posté par
Alex28
re : Algorithme et suite 04-05-12 à 12:15

J'ai envoyé un e-mail à ma prof pour savoir, j'attend sa réponse

Encore merci pour votre aide  



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 !