Les membres ayant 30 points peuvent parler sur les canaux annonces, projets et hs du chat.
La shoutbox n'est pas chargée par défaut pour des raisons de performances. Cliquez pour charger.

Forum Casio - Autres questions


Index du Forum » Autres questions » Je cherche un truc et j'ai besoin d'aide
Slg4 Hors ligne Membre Points: 94 Défis: 3 Message

Je cherche un truc et j'ai besoin d'aide

Posté le 22/01/2026 17:50

Salut (oui je poste beaucoup je sais) je cherche comment faire pour faire une verification d'une valeur dans une liste et je veux verifier si la valeur de
if List 1=(ma variable)
then (mon résultats ou action si les valeurs correspondent

voila c'est tout


1, 2 Suivante
Dark storm En ligne Labélisateur Points: 11654 Défis: 179 Message

Citer : Posté le 22/01/2026 17:56 | #


Tu peux pas comparer des choux (une liste) et des patates (une valeur).

Tu veux savoir si la valeur est dans la liste (A ∈ List 1), si la liste est composée d’une unique valeur ([A] == List 1), ou si la liste est composée uniquement de valeurs (Pour chaque E dans List 1, E = A) ?
Finir est souvent bien plus difficile que commencer. — Jack Beauregard
Slg4 Hors ligne Membre Points: 94 Défis: 3 Message

Citer : Posté le 22/01/2026 18:05 | #


en faite, je veux savoir si la valeur contenue dans la liste 1 a la première ligne est égale a une variable x qui a une valeur de 4, je m'explique :
If List 1=x
# savoir si la valeur de la liste 1 est = a la valeur de x #
then "mon action ou truc qui suivent
IfEnd

qui ne veut rien faire trouve une excuse ou sinon peut se taire.
moi même
Lephenixnoir En ligne Administrateur Points: 25675 Défis: 174 Message

Citer : Posté le 22/01/2026 18:07 | #


Tout le principe d'une liste c'est que ça peut contenir plusieurs valeurs (une "liste" de valeurs). Par exemple, la liste 1 pourrait valoir {2,3,4}. Le test que tu décris n'a pas complètement de sens parce que ça suppose que la liste contient exactement une valeur (alors qu'elle peut en avoir plus, ou en avoir zéro).
Mon graphe (27 Juin): (MQ || Rogue Life) ; serial gint ; passe gint 3 ; Azur ; ...) || (shoutbox v5 ; v5)
Slg4 Hors ligne Membre Points: 94 Défis: 3 Message

Citer : Posté le 22/01/2026 18:08 | #


oui sa je sais et dans ma "liste de valeur" se serait a la liste 1
qui ne veut rien faire trouve une excuse ou sinon peut se taire.
moi même
Lephenixnoir En ligne Administrateur Points: 25675 Défis: 174 Message

Citer : Posté le 22/01/2026 18:12 | #


Bon donc la liste 1 contient entre 0 et 999 valeurs (je crois que c'est ça la limite). À côté tu as ta variable (disons X) qui est une seule valeur.

Qu'est-ce que tu veux tester, vraiment ? Que X apparaît dans la liste ? Que toutes les valeurs de la liste sont égales à X ? Que la somme des valeurs de la liste est égale à X ? Que la liste contient exactement une valeur qui elle est égale à X ?

Tu ne peux pas comparer pour X et List 1 pour l'égalité : une "valeur" et une "liste de valeurs" ne sont jamais égales. Le test que tu as en tête doit certainement pouvoir se formuler différemment.
Mon graphe (27 Juin): (MQ || Rogue Life) ; serial gint ; passe gint 3 ; Azur ; ...) || (shoutbox v5 ; v5)
Slg4 Hors ligne Membre Points: 94 Défis: 3 Message

Citer : Posté le 22/01/2026 18:16 | #


en faite je sais pas comment expliquer, en faite je veux faire un truc pour selectionner une touche pour une action par exmemple, dans les parametre de Tetris par Pierotll, tu choisi une touche pour par exempe la rotation, et la je veux faire la même.
qui ne veut rien faire trouve une excuse ou sinon peut se taire.
moi même
Breizh_craft En ligne Modérateur Points: 1180 Défis: 7 Message

Citer : Posté le 22/01/2026 18:18 | #


Slg4 a écrit :
en faite, je veux savoir si la valeur contenue dans la liste 1 a la première ligne est égale a une variable x[/code]


Utilise simplement List1[1], non ? Je suis pas sûr de la syntaxe, j’ai pas touché à ça depuis des années.
Breizh.pm – Un adminsys qui aime les galettes.
Slg4 Hors ligne Membre Points: 94 Défis: 3 Message

Citer : Posté le 22/01/2026 18:20 | #


dans les parametre de Tetris par Pierotll, tu choisi une touche pour par exempe la rotation, et la je veux faire la même.
nan en vrai je sais pas trop mais le truc j'ai ecris en italique le decrit le mieux je crois
qui ne veut rien faire trouve une excuse ou sinon peut se taire.
moi même
Slg4 Hors ligne Membre Points: 94 Défis: 3 Message

Citer : Posté le 22/01/2026 18:27 | #


et j'y arrive pas
qui ne veut rien faire trouve une excuse ou sinon peut se taire.
moi même
Lephenixnoir En ligne Administrateur Points: 25675 Défis: 174 Message

Citer : Posté le 22/01/2026 18:42 | #


Donc les valeurs de la liste sont des numéros de touche, chaque position dans la liste étant associée à une action, et tu veux savoir (1) si X est dans la liste, et (2) à quelle position, pour savoir quelle action déclencher ?
Mon graphe (27 Juin): (MQ || Rogue Life) ; serial gint ; passe gint 3 ; Azur ; ...) || (shoutbox v5 ; v5)
Slg4 Hors ligne Membre Points: 94 Défis: 3 Message

Citer : Posté le 22/01/2026 19:00 | #


en faite je veu juste faire le truc pour choisir une touche pour une action, on peut oublier cette histoire de verification
qui ne veut rien faire trouve une excuse ou sinon peut se taire.
moi même
Slg4 Hors ligne Membre Points: 94 Défis: 3 Message

Citer : Posté le 22/01/2026 19:51 | #


jai toujoirs pas trouver malgrer mes recherhce en vain
qui ne veut rien faire trouve une excuse ou sinon peut se taire.
moi même
Prgmprotogen Hors ligne Membre Points: 27 Défis: 0 Message

Citer : Posté le 22/01/2026 19:56 | #


I would have to get the actual program code later, but here's some quick psuedocode that hopefully explains what you need to do:

- In the code that contains the setup process, print some text prompting the player to press the key they want to associate with with the action (such as a Confirm action).
- Query GetKey until it's not equal to 0 and put it into the list at the index for the corresponding action. (For example, Confirm might be represented by the first/0th list item, so you would use something like GetKey → List 1[0])
- Repeat for each action (you might need to set up some code to wait until GetKey is 0 again before allowing it to associate key values again)
- Whenever you're performing a key press check later, instead of using "if GetKey == 63" or something, you can use "if GetKey == List 1[0]"

Note that lists might start counting at 1 instead of 0, so you may have to adapt this idea a little.
Hope this helps
Prgmprotogen Hors ligne Membre Points: 27 Défis: 0 Message

Citer : Posté le 23/01/2026 00:38 | # | Fichier joint


I had some spare time and made a quick demo program, attached in the top-right corner of my comment. It's very simple, with nothing to stop the user from putting in the same key press twice on purpose, and the code is very redundant (literally copy-pasted and edited); but I think it's useful as a model, and is a good starting point if you want to adapt it. Feel free to copy and modify my code for your own purposes, and if you don't have a transfer cable, I'd be happy to type out the program in plain text when I get a chance!

For a quick explanation, in most places I use variable "D" to temporarily hold the ID for the key press. (You could probably just replace every instance of "D" with "GetKey" and it would still work fine, but I find it's good for readability and ease of typing.) Since Casio BASIC doesn't really have a native way to wait for a key press before continuing as far as I know, I implement a loop to wait until the key press ID is equal to 0 (meaning there's no keys being held down). Then I print some text asking the user for the key they would like to use for the specific action, and wait for the key press to not equal 0. Then, I save the key press value to a new position in the list, and start the processing for the next action. You could probably use Labels and Goto statements combined with variables to help simplify the repeated code in a function you can call, or you could surround everything in a For loop and use a series of If statements to determine which action name to show to the user.


SLG4AUCOLEGE Invité

Citer : Posté le 23/01/2026 10:50 | #


salut cest slg4 sur les pc du colege jai plus fa-124 sa serait possible de le faire dans bloc-note stp?
Prgmprotogen Hors ligne Membre Points: 27 Défis: 0 Message

Citer : Posté le 23/01/2026 17:12 | # | Fichier joint


No problem, I'll include it both in the text here and as a .txt file
Be warned, you might want to use Clip and Paste a lot when typing this on your calculator. (I wish I could define functions in Casio BASIC...)

Program
Cliquer pour enrouler
ClrGraph
{1}→List1
0→B
1→D

ClrText
ClrGraph
While D≠0
GetKey→D
WhileEnd
Locate 1,1,"WHAT KEY FOR CONFIRM"
While D=0
GetKey→D
WhileEnd
D→List1[1]

ClrText
ClrGraph
While D≠0
GetKey→D
WhileEnd
Locate 1,1,"WHAT KEY FOR CANCEL"
While D=0
GetKey→D
WhileEnd
D→List1[2]

ClrText
ClrGraph
While D≠0
GetKey→D
WhileEnd
Locate 1,1,"WHAT KEY FOR JUMP"
While D=0
GetKey→D
WhileEnd
D→List1[3]

ClrText
ClrGraph
While 1
GetKey→D
If D=List1[1]
Then Locate 1,1,"       "
Locate 1,1,"CONFIRM"
IfEnd
If D=List1[2]
Then Locate 1,1,"       "
Locate 1,1,"CANCEL"
IfEnd
If D=List1[3]
Then Locate 1,1,"       "
Locate 1,1,"JUMP"
IfEnd
WhileEnd

List1
Slg4 Hors ligne Membre Points: 94 Défis: 3 Message

Citer : Posté le 24/01/2026 10:51 | #


merci beaucoup tu gère
qui ne veut rien faire trouve une excuse ou sinon peut se taire.
moi même
Slg4 Hors ligne Membre Points: 94 Défis: 3 Message

Citer : Posté le 24/01/2026 11:09 | #


heu sa ne marche pas quand je dois assigner la toucher pour arreter ou annuler "cancel" , la calculatrice me renvoie a
D->List 1[2]
et je ne sais pas pourquoi. j'ai jamais vraiment trop utiliser les liste dans mes programme donc je suis pas assez capble de maitriser un probleme de ce type. et la calto me dit, Dim Error
qui ne veut rien faire trouve une excuse ou sinon peut se taire.
moi même
Slyvtt Hors ligne Maître du Puzzle Points: 2795 Défis: 17 Message

Citer : Posté le 24/01/2026 11:11 | #


ah mon avis (mais n'ayant jamais fait de basic) c'est juste que 'List 1' ne veut rien dire c'est 'List1' (sans espace).
There are only 10 types of people in the world: Those who understand binary, and those who don't ...
Lephenixnoir En ligne Administrateur Points: 25675 Défis: 174 Message

Citer : Posté le 24/01/2026 11:13 | #


Slyvtt a écrit :
ah mon avis (mais n'ayant jamais fait de basic) c'est juste que 'List 1' ne veut rien dire c'est 'List1' (sans espace).

Les deux existent. Y'a des opcodes List1 à List6 (d'un seul bloc), datant de vieux modèles, et y'a l'opcode List (avec une espace) qu'on peut suivre d'un nombre pour désigner les listes 1 à 26 (sur les nouveaux modèles).

Le problème c'est surtout que la liste est trop courte, on ne peut pas étendre la longueur de la liste par une affectation. Faudrait remplacer {1}→List 1 au début par 3→Dim List 1.
Mon graphe (27 Juin): (MQ || Rogue Life) ; serial gint ; passe gint 3 ; Azur ; ...) || (shoutbox v5 ; v5)
1, 2 Suivante

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:  ^^  >:)

Σ π θ ± α β γ δ Δ σ λ
captcha
Rafraîchissez la page si vous souhaitez obtenir un nouveau CAPTCHA.

Planète Casio v4.3 © créé par Neuronix et Muelsaco 2004 - 2026 | Il y a 160 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