|
Programmes et jeux pour calculatrices Casio Graph et calculatrice ClassPad 300, jeux casio, cours...: Forums |
Forum Casio
Un espace convivial pour poser vos questions ou simplement venir discuter...
Entrer
|
Forum Programmation
Toutes les discussions à propos de la programmation sur calculatrices Casio...
Entrer
|
Foire aux Questions
Les réponses aux questions les plus courantes sont ici !
Entrer
|
Auteur |
Problème en programation. |
|
Cyril585 Membre

 Messages: 24 | Message posté: 20-12-2004 à 12:41  
Bonjour je suis en train d faire un petit programme et j'ai un problème:
Lorsque je rentre ceci:
Lbl X
ClrText
Locate 2,1,"Demonstrations"
3ºD~E
Locate 4,3,"Exponentielles"
Locate 6,4,"Logarithmes"
Locate 8,5,"DIFFICILE"
Locate 10,6,"IMPOSSIBLE"
Locate 12,7,">>>"
Locate D,E,"º"
Locate D,E,"º"
If GetKey=37 And E<7
Then Locate D,E," "
D+2ºD
E+1ºE
IfEnd
If GetKey=28 And E>3
Then Locate D,E," "
D-2ºD
E-1ºE
IfEnd
GetKey=31 And D=11 And E=7äGoto S
GetKey=31 And D=3 And E=3äGoto 4
GetKey=31 And D=5 And E=4äGoto 5
GetKey=31 And D=7 And E=5äGoto 1
GetKey=31 And D=9 And E=6äGoto 2
Goto X
Mon menu clignote et il m'est impossible faire quoi que ce soit.
Si je retire le Clrtext, quand je revien dans ce menu il reste affiché la page précédante.
Je me doute qu'il doit être question d'une boucle (car à la fin je fait Goto X ce qui renvoie au début)
Merci de votre aide!
P.S.: les ° sont des flèches.
|  |
 Webmaster

Messages: 3193 Calculatrice : ClassPad 300+ | Message posté: 20-12-2004 à 15:20  
Oui, là tu fais une sorte de boucle géante qui est très lourde par rapport à ce que tu veux faire, je te conseil de voir dans les cours de programmation comment se servir des boucles, sinon tu pourras trouver un exemple de menu dans le cours 9 : http://www.jeuxcasio.com/cours-9-Les%20mouvements.html
_________________
|  |
Cyril585 Membre

 Messages: 24 | Message posté: 21-12-2004 à 15:24  
Y aurais t'il un moyen pour "réparer" ce programme?
|  |
 Webmaster

Messages: 3193 Calculatrice : ClassPad 300+ | Message posté: 23-12-2004 à 17:03  
Apprend à te servir des boucles, tu verras ça ira tout seul ensuite
_________________
|  |
Cyril585 Membre

 Messages: 24 | Message posté: 28-12-2004 à 16:30  
Le problème c'est que j'ai beau essayer je n'y arrive pas!
Vous ne sauriez pas ce que je dois faire?
|  |
Alexis Webmaster

 Messages: 892 Calculatrice : Graph 35+ | Message posté: 28-12-2004 à 18:25  
Il faudrait mettre le Lbl X juste au dessus de la ligne Locate D,E,"º" ce qui réglerait le problème.
L'erreur que vous avez faite est d'effacer l'écran et de tout réafficher à chaque fois alors que cela n'est pas nécessaire.
 |  |
Meithal Membre

 Messages: 9 | Message posté: 01-01-2005 à 12:10  
Je te conseille la commande Getkey→G
Ca rentre la valeur du getkey dans une variable (la, j'ai pris G ). Comme ca, tu peux utiliser If G=31 au lieu de If Getkey=31
Sinon, en placant ton lbl X au dessus du Clrtext, cela va faire que a chaque fois que tu arrives au Goto X, tout ton écran est effacé et tout ton texte se réaffiche.
ClrText
Locate 2,1,"Demonstrations"
3ºD~E
Locate 4,3,"Exponentielles"
Locate 6,4,"Logarithmes"
Locate 8,5,"DIFFICILE"
Locate 10,6,"IMPOSSIBLE"
Locate 12,7,">>>"
[U]Lbl X[/U]
Locate D,E,"º"
Locate D,E,"º"
If GetKey=37 And E<7
Then Locate D,E," "
D+2ºD
E+1ºE
IfEnd
If GetKey=28 And E>3
Then Locate D,E," "
D-2ºD
E-1ºE
IfEnd
GetKey=31 And D=11 And E=7äGoto S
GetKey=31 And D=3 And E=3äGoto 4
GetKey=31 And D=5 And E=4äGoto 5
GetKey=31 And D=7 And E=5äGoto 1
GetKey=31 And D=9 And E=6äGoto 2
Goto X
Tu n'as qu'a faire un autre lbl au début de ton programme si tu as besoin de réafficher ton texte.
Apprend a jongler avec les lbl au début. Comme ca, tu pourras facilement attaquer les Do:Lpwhile
|  |
Meithal Membre

 Messages: 9 | Message posté: 01-01-2005 à 12:12  
C'est bizzare: la commande [U] [/U] devrait souligner normalement...
Ne fait pas attention a ca dans ma correction de ton code. C'est juste que je voulais souligner ce passage
|  |
 Webmaster

Messages: 3193 Calculatrice : ClassPad 300+ | Message posté: 01-01-2005 à 12:19  
Effetivement la commande [U] [/U] n'est pas activée sur ce forum, pour mettre en évidence un message tu peux en revenche le mettre en gras par exemple.
_________________
|  |
Meetic
- Les règles du jeu ont changé | MeeticAffinity
|
 |
|
|
|
|