Les membres ayant 30 points peuvent parler sur les canaux annonces, projets et hs du chat.

Forum Casio - Autres questions


Index du Forum » Autres questions » Getkey en début de programme
Orionship Hors ligne Membre Points: 3 Défis: 0 Message

Getkey en début de programme

Posté le 31/07/2022 18:03

Bonjour ! Ayant acqui une graph 35+E II et après avoir lu les tutos disponible sur planet casio ( très bien fait d'ailleurs ), j'ai voulu me lancer dans un programme. Très vite, j'ai eu besoin de "getkey". Problème : getkey prend la valeure avant même que je lance le programme :

While not G
Getkey→G
WhileEnd
Locate 1,1,G

Je lance le programme et il affiche immédiatement 79: la valeure de f1, touche que j'utilise pour lancer le programme.
Cela m'empêche d'utiliser la fonction et c'est bien dommage...

Si quelqu'un a une idée, je suis preneur


Tituya Hors ligne Rédacteur Points: 1997 Défis: 16 Message

Citer : Posté le 31/07/2022 18:35 | #


Salut ! En basic Casio les variables possèdent toutes une valeur qui est conservée entre deux exécutions, donc ici quand tu vas lancer ton programme la variable G va avoir au tout début la précédente valeur qui lui a été associé

Donc en gros While Not G ne va simplement pas boucler vu que ton G possède la valeur 79 et non 0. Tu devrais l'instancier au tout début si tu veux éviter des problèmes. Petit tips tu peux faire ça :
0→A~Z

Mais bon, même avec ça ton programme ne va pas boucler, la raison est évidente si tu décortiques ton exécution :

- Tu arrives, tes variables sont remises à 0 (en rajoutant le bout de code plus haut, sinon cette étape n'est pas exécutée)
- G est-il = 0 ? Oui
- G prend la valeur de Getkey
- G est-il = 0 ? Non
- On affiche G
- Fin du programme

Donc normal que ton programme affiche 79, il s'agit simplement de la dernière valeur de G
Bretagne > Reste du globe
(Et de toute façon, vous pouvez pas dire l'inverse grâce à Bzh)
Projet en cours : Adoranda

Mes programmes
Hésite pas à faire un test !


Orionship Hors ligne Membre Points: 3 Défis: 0 Message

Citer : Posté le 31/07/2022 18:38 | #


Hmmmm... Je vois. Merci de la réponse
Lephenixnoir En ligne Administrateur Points: 22758 Défis: 149 Message

Citer : Posté le 31/07/2022 20:31 | #


Tu peux aussi insérer une attente au début de ton programme :

While Getkey
WhileEnd

Cette boucle va s'exécuter tant que Getkey est différent de 0 (ie. tant qu'une touche est pressée) et du coup le programme ne démarrera qu'une fois que tu auras relâché F1.

LienAjouter une imageAjouter une vidéoAjouter un lien vers un profilAjouter du codeCiterAjouter un spoiler(texte affichable/masquable par un clic)Ajouter une barre de progressionItaliqueGrasSoulignéAfficher du texte barréCentréJustifiéPlus petitPlus grandPlus de smileys !
Cliquez pour épingler Cliquez pour détacher Cliquez pour fermer
Alignement de l'image: Redimensionnement de l'image (en pixel):
Afficher la liste des membres
:bow: :cool: :good: :love: ^^
:omg: :fusil: :aie: :argh: :mdr:
:boulet2: :thx: :champ: :whistle: :bounce:
valider
 :)  ;)  :D  :p
 :lol:  8)  :(  :@
 0_0  :oops:  :grr:  :E
 :O  :sry:  :mmm:  :waza:
 :'(  :here:  ^^  >:)

Σ π θ ± α β γ δ Δ σ λ
Veuillez donner la réponse en chiffre
Vous devez activer le Javascript dans votre navigateur pour pouvoir valider ce formulaire.

Si vous n'avez pas volontairement désactivé cette fonctionnalité de votre navigateur, il s'agit probablement d'un bug : contactez l'équipe de Planète Casio.

Planète Casio v42 © créé par Neuronix et Muelsaco 2004 - 2022 | Il y a 65 connectés | Nous contacter | Qui sommes-nous ? | Licences et remerciements

Planète Casio est un site communautaire non affilié à Casio. Toute reproduction de Planète Casio, même partielle, est interdite.
Les programmes et autres publications présentes sur Planète Casio restent la propriété de leurs auteurs et peuvent être soumis à des licences ou copyrights.
CASIO est une marque déposée par CASIO Computer Co., Ltd