Poster un nouveau sujet Poster une réponse
aide pour les Goto et Labels
Auteur Message
thedarkprogrammeur



Autorisation : Membre
Nb de messages : 27
Inscrit le : Sam 09 Jui 2012, 21:58
Posté le : Sam 09 Jui 2012, 22:14   Citer 

Bonjour à tous amis programmeurs, en fait voila mon problème:
j'ai plusieurs labels (Lbl)
mais ce que je veux c'est que la calculatrice choisisse aléatoirement une valeur et aille au label qui lui correspond; en claire sur mon programme y'a écrit ça =
:Goto entAléat(1,10
:Lbl 1
:Disp "message"
:Lbl 2
:Disp "message"
etc...
j'aimerai savoir pourquoi ca ne marche pas, cry.gif
sinon je sais que je pourais ecrire à la place =
:entAléat(1,10->A
:If A=1
:Goto 1
:If A=2
:Goto 2
etc... (et définir mes labels à la fin), mais le problème c'est que cela occupe beaucoup de mémoire d'autan plus qu'il y a plusieurs labels (pas que 10), donc si vous pouvez corriger mon premier exemple ou me donner une autre soluce qui occupe le moins de mémoire possible, je vous en serai reconnaissant. loupe.gif

----------------------
Le jour que je deteste le plus?... le dimanche, car 32 heures après j'ai cours de sport
 Adresse email Haut de page Bas de page 
 
linkakro



Autorisation : Membre
Nb de messages : 3738
Inscrit le : Lun 19 Oct 2009, 21:25
Posté le : Sam 09 Jui 2012, 23:03   Citer 

Je ne connais aucun autre moyen que la série de If.
Il est tout simplement impossible d'intégrer un nombre variable à un goto.
Rest à voir s'il existe une méthode miraculeuse, à laquelle je ne m'attend pas.

----------------------
ti82statfr: 2008, inscrit: 2009, ti84pocketfr: noël2011, ti30xbmultiview: iut 2012-2014
Perfectionniste, manque tact. Pas le temps de tout publier depuis 2011. Répond toujours aux questions. (rédigé juin 2014)

Pour tout le monde et surtout les débutants, quelques-uns des articles courants :
*Traductions Algorithmie/Ti-Basic.
*Caractères spéciaux sur Tout82
Les défauts du TI-Basic : Goto_versus_algo et DelVar/End/Lbl/guillemet/store
 Adresse email Haut de page Bas de page 
 
thedarkprogrammeur



Autorisation : Membre
Nb de messages : 27
Inscrit le : Sam 09 Jui 2012, 21:58
Posté le : Dim 10 Jui 2012, 0:39   Citer 

merci de ta réponse linkakro glasses.gif , bon, ben je crois que je n'ai plus qu'à utiliser ces bons vieux If.
Si vous avez d'autres propositions, elles seront bien venues.

----------------------
Le jour que je deteste le plus?... le dimanche, car 32 heures après j'ai cours de sport
 Adresse email Haut de page Bas de page 
 
F-BVXT



Autorisation : Membre
Nb de messages : 177
Inscrit le : Dim 27 Mai 2012, 20:38
Posté le : Dim 10 Jui 2012, 0:46   Citer 

Non, désolé, comme l'a dit Linkakro il n'existe probablement pas de méthode miracle, par contre tu peux optimiser ta deuxième proposition en supprimant les Goto et les LBL :

Code
:entAléat(1,10->A
:If A=1
:...     //Instruction
:If A=2
:...     //Instruction

Ou si tu as plusieurs instructions :
:entAléat(1,10->A
:If A=1
:Then
:...
:...
:End
:If A=2
:Then
:...
:...
:End



----------------------
Il y a 10 types de personnes dans le monde : celles qui comprennent le binaire et celles qui ne le comprennent pas.
 Adresse email Haut de page Bas de page 
 
Poster un nouveau sujet Poster une réponse





  Page générée en 6 requêtes