Autorisation : Membre
Nb de messages : 178
Inscrit le : Sam 02 Avr 2011, 12:53
Posté le : Mar 28 Jui 2011, 21:23
Quelque chose me pose problème dans les programmes... c'est très... anbigu... chiant !!
Alors, c'est les :
If
Then
Else
end
(et les goto inclu ou pas)
Exemple:
Je met quelque évenement :
Code
-If Z=1 If Z=1:Goto 1
Then
Goto 1
End
-If -If -If
Then If If
If End End
Then End
End
End
-If -If -If
Then Then Goto 1
Goto 1 Goto 1 Goto 2
Else Goto 2 End
Goto 2 End
end
Dites les autre possibilité si il y en a, je voudrai quelque information sur
ces condition ^^' (pourquoi desfois ça marche pas desfois si par exemple...)
A éssayer de faire un morpion en me basant sur les autre morpion de ce site je me perd
Dans les conditions, je m'arrache les cheveux !
en plus il y a les matrices que j'essai de comprendre/appliqué
Pour mon jeu "batonnet" aussi je me suis arraché les cheveux avec les conditions...
Quand il y a beaucoup de condition... que faire ? :
Code
If Z=1:Goto 1
If Z=2:Goto 2
If Z=3:Goto 3
If Z=4:Goto 4
Lbl 1
---
Lbl 2
---
Lbl 3
---
Lbl 4
---
If Z=1
Lbl 1
---
If Z=2
lbl 2
---
If Z=3
Lbl 3
---
If Z=4
Lbl 4
---
Voila... qu'est-ce qui est le plus rapide ?
Autre cose :
Code
If --- If ----
End
Goto 1 Goto 1
End
Dans certain cas, quand on met un "End" après le goto quand la condition se fait tout de suite après
le programme se termine et marque "fait"
Pourtant parfois c'est en plein milieu du programme...
Je sais que la calcuilette scan depuis le début toute les condition, et dès qu'il y en a une favorable
elle l'applique. (ça aussi c'est complexe )
---------------------- "Des millions de gens ont vu tomber une pomme, Newton est le seul a s'être demandé pourquoi ."
"L'urgent est fait, l'impossible est en cours.
un probléme a toujours une solution, la solution est de trouver le probléme, pour les miracles, prévoir un délai ...
"
Autorisation : Membre
Nb de messages : 438
Inscrit le : Dim 12 Déc 2010, 20:44
Posté le : Mar 28 Jui 2011, 21:42
Il y a beaucoup de possibilité, mais c'est sur, pour moins t'embrouiller, quand derriere une condition tu n'as qu'une fonction, alors ne mets pas Then et End, sinon pour le reste, va voir dans les articles, il y en a un tout frais la dessus il me semble =)
Autorisation : Membre
Nb de messages : 3738
Inscrit le : Lun 19 Oct 2009, 21:25
Posté le : Mar 28 Jui 2011, 22:41
Poste dans la partie "aide" quand tu demandes de l'aide,
Surtout qu'il ne s'agit pas d'un programme.
EDIT : un gentil modérateur a déplacé le sujet
====
Le bug principal : (qui fera bientôt l'objet d'un article)
Quand la calculatrice entre dans une boucle, elle attend un End pour la terminer.
( Un If sans Then n'est pas une boucle )
Tant que la calculatrice n'a pas rencontré le End, elle le cherche. Même s'il y a un Goto.
Quand le Goto envoie hors d'une boucle et si on ouvre pas d'autre boucle entre temps :
-soit le prochain End rencontré (quel qu'il soit) sera interprété comme fin de la boucle même s'il n'a aucun rapport.
-soit le prochain Else provoquera un saut jusqu'au prochain End (si on était dans un Then)
-------
Tu mets des End sans Then, c'est ça qui plante en général.
Code
If 1
If 2 // le test n'est effectué que si le premier l'est
End // lu si 1 et 2 vrais OU si 1 faux
End // lu si le premier End ne renvoie nulle part
D'ailleurs ceci n'a aucun sens s'il n'y a pas d'ouverture de boucle plus haut.
If 1
Then
Goto 1 // lu si 1 vrai
Goto 2 // ne sera jamais lu (aucun intérêt)
End // ferme le If:Then:End ; lu si 1 faux
If 1
Goto 1 // lu si 1 vrai
Goto 2 // lu si 1 faux
End // jamais lu (aucun intérêt)
If // si faux, alors va directement au dernier End
Then
If // si faux, alors va directement au premier End
Then
End
End
-------
Les Labels sont lus quoiqu'il advienne. Donc If:Lbl n'a aucune utilité ni sens.
-------
Il me manque certainement des informations à ton dernier problème. Je ne sais donc pas quoi répondre.
1 idée :
Quand un If:Then est executé et que la condition est fausse, la calculatrice cherche le prochain End pour fermer la boucle.
Si elle ne trouve pas de End, elle va jusqu'à la fin et s'arrête.
( De plus ce principe peut être parasité par le premier bug. )
---------------------- 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)
Autorisation : Membre
Nb de messages : 178
Inscrit le : Sam 02 Avr 2011, 12:53
Posté le : Mer 29 Jui 2011, 16:41
Merci pour les réponse et une fois encore désolé la prochaine fois je mettrais mon problème dans la rubrique "aide" ...
---------------------- "Des millions de gens ont vu tomber une pomme, Newton est le seul a s'être demandé pourquoi ."
"L'urgent est fait, l'impossible est en cours.
un probléme a toujours une solution, la solution est de trouver le probléme, pour les miracles, prévoir un délai ...
"