Programation tant que |
Auteur |
Message |
Xayru
Autorisation : Membre
Nb de messages : 8
Inscrit le : Sam 09 Nov 2013, 15:47
|
Posté le : Sam 09 Nov 2013, 16:01
|
|
|
Bonjour,
Je cherche à réaliser un programme pouvant répondre à cette énoncé :
"On souhaite déterminer le rang N à partir duquel U(n)> ou = A
1) Ecrire l'algorithme permettant de résoudre ce problème
2) Déterminer le rang N pour A=1000 puis A=10^6"
En sachant que la suite est u(0) = 0
et U(n+1)= U(n)²+3U(n)+1
Donc j'ai compris qu'il faut faire un algorithme "tant que U(n)> ou = A" mais je ne sais pas le réaliser
Donc je possède une calculatrice TI-82 stats.fr et aimerais connaitre l'algorithme correspondant
Merci d'avance j’espère avoir été le plus claire possible
Cordialement, une personne perdue
|
|
|
|
Google_AdSense
|
Publicité
|
|
|
|
|
m@thieu41
Autorisation : Membre
Nb de messages : 856
Inscrit le : Mer 18 Juil 2012, 18:44
|
Posté le : Dim 10 Nov 2013, 10:05
|
|
|
Bonjour,
Tu veux savoir à partir de quel rang U(n)>=A, donc la boucle doit tourner tant que U(n)>A (ainsi elle s'arrête quand U(n)>=A).
Essaye de nous proposer le début de l’algorithme, ou au moins ce que tu as cherché, qu'on puisse te corriger.
---------------------- Pour vous aidez dans vos débuts (et même ensuite ^^) :
*Tuto Algo->Ti Basic (par Linkakro) : Traduisez vos algo (de type algobox) en prgm pour votre TI!
*Catalogue des emplacements et traductions (anglais/français) des fonctions sur la TI.
*Faites vos propres programmes de maths (par ash)
Et au fait: la politesse n'a jamais tué personne |
|
|
|
Xayru
Autorisation : Membre
Nb de messages : 8
Inscrit le : Sam 09 Nov 2013, 15:47
|
Posté le : Dim 10 Nov 2013, 12:36
|
|
|
Bah j ai beau essayer je ne réussi pas a le commencer
|
|
|
|
m@thieu41
Autorisation : Membre
Nb de messages : 856
Inscrit le : Mer 18 Juil 2012, 18:44
|
Posté le : Dim 10 Nov 2013, 15:29
|
|
|
Tu as fait un peu d'algorithme en cours? Le prof a du t'apprendre à poser les bases: les variables à utiliser, les initialisations, pose aussi les boucles même si elles sont vides, bref met le maximum de ce que tu sais, et n'ai pas peur de te tromper, je t'aiderai à compléter.
---------------------- Pour vous aidez dans vos débuts (et même ensuite ^^) :
*Tuto Algo->Ti Basic (par Linkakro) : Traduisez vos algo (de type algobox) en prgm pour votre TI!
*Catalogue des emplacements et traductions (anglais/français) des fonctions sur la TI.
*Faites vos propres programmes de maths (par ash)
Et au fait: la politesse n'a jamais tué personne |
|
|
|
Xayru
Autorisation : Membre
Nb de messages : 8
Inscrit le : Sam 09 Nov 2013, 15:47
|
Posté le : Lun 11 Nov 2013, 11:18
|
|
|
Ok
Disp A
U-> U²+3U+1
Tant que U=< A
End
Je sais qu'il manque le For (....) mais à part ça .. :/
|
|
|
|
m@thieu41
Autorisation : Membre
Nb de messages : 856
Inscrit le : Mer 18 Juil 2012, 18:44
|
Posté le : Lun 11 Nov 2013, 11:43
|
|
|
Alors effectivement il y a quelques problèmes:
Disp sert à afficher, et non à demander une valeur (ce qui se fait avec la fonction Prompt variable).
Ensuite, concernant le calcul de U:
U-> U²+3U+1
C'est l'inverse:
U²+3U+1->U
De plus, il faut le mettre à l'intérieur de la boucle Tant que, et non avant.
par contre, il faut donner une valeur initiale à U (se sera 0 puisque U(0)=0). Ca s'appelle initialiser la variable. Il faut mettre cette initialisation en dehors de la boucle, avant celle ci.
Ensuite, tu as besoin d'une variable (mettons N) que tu initialises à 0, et à laquelle tu rajoutes 1 à chaque tour de boucle.
Je te laisse réfléchir avec ces indications, si tu as besoin d'explications supplémentaires n'hésites pas.
PS: Inutile ici de rajouter une boucle for...
---------------------- Pour vous aidez dans vos débuts (et même ensuite ^^) :
*Tuto Algo->Ti Basic (par Linkakro) : Traduisez vos algo (de type algobox) en prgm pour votre TI!
*Catalogue des emplacements et traductions (anglais/français) des fonctions sur la TI.
*Faites vos propres programmes de maths (par ash)
Et au fait: la politesse n'a jamais tué personne |
|
|
|
Xayru
Autorisation : Membre
Nb de messages : 8
Inscrit le : Sam 09 Nov 2013, 15:47
|
Posté le : Lun 11 Nov 2013, 14:52
|
|
|
Ah oui l'initialisation c'est vrai :/
donc :
Prompt U
0-> U
While U>=A
U²+3U+1-> U
End
Disp N
Si je ne me trompe pas (sauf pour le N peut-être non ?)
Au tout cas merci beaucoup à toi
|
|
|
|
m@thieu41
Autorisation : Membre
Nb de messages : 856
Inscrit le : Mer 18 Juil 2012, 18:44
|
Posté le : Lun 11 Nov 2013, 15:14
|
|
|
Tu y es presque
Au début tu mets:
Prompt U
0-> U
Ce qui veut dire que tu demande une valeur pour U, puis, sans en tenir compte, tu la remplace par 0.
En fait l'utilisateur ne doit pas rentrer la valeur de U (qui vaut 0 au début), mais celle de A (puisque c'est la seule donnée qui dépend de l'utilisateur et qui varie d'une utilisation à l'autre).
Ensuite, pour le N:
Tu ne t'en sert qu'une fois: A la fin, pour l’afficher. Or, tu ne sais pas quelle est la valeur de N puisque tu ne l'utilises jamais, donc ce qui sera affiché sera complètement aléatoire.
Il faut donc, au début, initialiser N à 0 (puisqu'on commence à tester le rang 0).
Puis, dans la boucle, il faut rajouter 1 à la valeur de N à chaque fois (comme ça on sait quel rang on est en train de tester).
Petite erreur (que tu n'avais pas faite sur ton code précédent):
While U>=A
Il faut tester si c'est inférieur ou égal, et non pas supérieur ou égal.
Aide: Pour rajouter 1 à N, il suffit de mettre:
N+1->N
Pour l'initialisation, c'est comme pour U.
---------------------- Pour vous aidez dans vos débuts (et même ensuite ^^) :
*Tuto Algo->Ti Basic (par Linkakro) : Traduisez vos algo (de type algobox) en prgm pour votre TI!
*Catalogue des emplacements et traductions (anglais/français) des fonctions sur la TI.
*Faites vos propres programmes de maths (par ash)
Et au fait: la politesse n'a jamais tué personne |
|
|
|
Xayru
Autorisation : Membre
Nb de messages : 8
Inscrit le : Sam 09 Nov 2013, 15:47
|
Posté le : Lun 11 Nov 2013, 16:07
|
|
|
Euh tu t'es trompé au debut c'est prompt A que l'on souhaite
Prompt A
0->U
O->n
n+1->n
u²+3u+1->u
while U>=A
Disp n
je sais pas où est ma faute malheureusement..
|
|
|
|
Google_AdSense
|
Publicité
|
|
|
|
|
m@thieu41
Autorisation : Membre
Nb de messages : 856
Inscrit le : Mer 18 Juil 2012, 18:44
|
Posté le : Lun 11 Nov 2013, 17:07
|
|
|
Citer : Xayru | Euh tu t'es trompé au debut c'est prompt A que l'on souhaite |
C'est ce que je t'ai signalé
Tu as les bonnes instructions (sauf qu'il faut mettre while U<=A), mais pas dans le bon ordre.
Voici la structure que tu aurais du avoir (et qu'il y avait dans le code précédent):
Saisie de la variable A
Initialisation de U et de N
Début de la boucle While
Calcul de U et de N
Fin de la boucle (End)
Affichage du résultat
Tu as toutes les instructions, il faut juste que tu les replace dans l'ordre que je te donne ci-dessus.
Attention à la confusion entre 0 et O
---------------------- Pour vous aidez dans vos débuts (et même ensuite ^^) :
*Tuto Algo->Ti Basic (par Linkakro) : Traduisez vos algo (de type algobox) en prgm pour votre TI!
*Catalogue des emplacements et traductions (anglais/français) des fonctions sur la TI.
*Faites vos propres programmes de maths (par ash)
Et au fait: la politesse n'a jamais tué personne |
|
|
|
Xayru
Autorisation : Membre
Nb de messages : 8
Inscrit le : Sam 09 Nov 2013, 15:47
|
Posté le : Lun 11 Nov 2013, 17:42
|
|
|
Alors j'ai ré-essayé
Prompt A
0-> u
1-> n
While u=<A
n+1->n
U²+3U+1-> U
End
Disp n
Mais ça me met toujours erreur
|
|
|
|
m@thieu41
Autorisation : Membre
Nb de messages : 856
Inscrit le : Mer 18 Juil 2012, 18:44
|
Posté le : Lun 11 Nov 2013, 17:46
|
|
|
Quand tu fais l'initialisation, il faut mettre N à 0 puisqu'on commence à U(0).
Code correct:
Code | Prompt A
0->U
0->N
While U=<A
N+1->N
U²+3U+1->U
End
Disp N |
Citer | Mais ça me met toujours erreur |
Comment ça?
Quel est le type d'erreur et à quel ligne est ce que ça te renvoi?
Sources possibles:
-> se saisit avec la touche [sto->], à coté du 1.
=< se trouve dans le menu [2nde],[math],[6].
Il n'y a pas d'espace après un ->
---------------------- Pour vous aidez dans vos débuts (et même ensuite ^^) :
*Tuto Algo->Ti Basic (par Linkakro) : Traduisez vos algo (de type algobox) en prgm pour votre TI!
*Catalogue des emplacements et traductions (anglais/français) des fonctions sur la TI.
*Faites vos propres programmes de maths (par ash)
Et au fait: la politesse n'a jamais tué personne |
|
|
|
Xayru
Autorisation : Membre
Nb de messages : 8
Inscrit le : Sam 09 Nov 2013, 15:47
|
Posté le : Lun 11 Nov 2013, 17:53
|
|
|
ERR: TYPE DONNEE
Et oui je sais sto-> ainsi que le =<
Je comprend pas pourquoi
|
|
|
|
m@thieu41
Autorisation : Membre
Nb de messages : 856
Inscrit le : Mer 18 Juil 2012, 18:44
|
Posté le : Lun 11 Nov 2013, 18:25
|
|
|
Fais "voir" et dis moi à quelle ligne va le curseur.
---------------------- Pour vous aidez dans vos débuts (et même ensuite ^^) :
*Tuto Algo->Ti Basic (par Linkakro) : Traduisez vos algo (de type algobox) en prgm pour votre TI!
*Catalogue des emplacements et traductions (anglais/français) des fonctions sur la TI.
*Faites vos propres programmes de maths (par ash)
Et au fait: la politesse n'a jamais tué personne |
|
|
|
Xayru
Autorisation : Membre
Nb de messages : 8
Inscrit le : Sam 09 Nov 2013, 15:47
|
Posté le : Lun 11 Nov 2013, 18:41
|
|
|
0->U
|
|
|
|
m@thieu41
Autorisation : Membre
Nb de messages : 856
Inscrit le : Mer 18 Juil 2012, 18:44
|
Posté le : Lun 11 Nov 2013, 19:21
|
|
|
Le U se saisis avec [alpha],[5].
---------------------- Pour vous aidez dans vos débuts (et même ensuite ^^) :
*Tuto Algo->Ti Basic (par Linkakro) : Traduisez vos algo (de type algobox) en prgm pour votre TI!
*Catalogue des emplacements et traductions (anglais/français) des fonctions sur la TI.
*Faites vos propres programmes de maths (par ash)
Et au fait: la politesse n'a jamais tué personne |
|
|
|