1

Bonjour,
Je programme pour passer le temps, et voilà que, dans un de ces programmes, il me vient une erreur de dimension dans un algorythme que j'utilise dans bien d'autres, et le curseur, qui se positionne très souvent avant la ligne qui pose problème, ne m'aide ici en rien !
La ligne de code en question est la suivante :
If k=337 and x>27 or k=340 and x<117 Then
k est bien un nombre - le code de la touche sur laquelle j'appuie avant le test, j'ai vérifié
x est clairement défini comme étant égal à 27
et j'ai encore trois blocs "ElseIf ... then" après.

Et je ne comprends pas ce qui cause une telle erreur là.
Quelqu'un pourrait-il m'aider s'il vous plaît ?

[A l'attention des admins] Je crois que ce problème a déjà été soulevé, mais je n'ai pas réussi à retrouver le topic, désolé
avatar
Je sais qu'il y a marqué "con" sur ma gueule. Je suis né comme ça, je m'y fais. Mais pourquoi toutes les filles qui me plaisent se sentent obligées de rajouter le suffixe "-fident" ?

2

A mon avis ça vient d'autre part si tu es bien sûr des types de k et x.
avatar
Combien de tas de bois une marmotte pourrait couper si une marmotte pouvait couper du bois ?

3

Salut,
mets une partie de ton code ici (plus que la ligne du If je veux dire grin) si ca ne te derange pas que l'on puisse t'aider a trouver le probleme,
parce qu'avec ce que tu dis sur les variables x et k, je ne vois pas d'ou viendrait le probleme dans la ligne du If que tu as mise.
Je suis de l'avis de Twindruff, le probleme viens d'ailleurs.
N/A

4

L'erreur de Dimension gere les exceptions sur les variables de type :
- STRING
-LIST
-MATRIX

Tu devrais regarder dans ton code de ce cote-la deja.

Tu as aussi une erreur de dimension sur une variable de type STRING si tu tentes d'afficher dans une boite de Dialogue
une chaine trop longue.

Dans l'ideal un extrait de code permettrait de mieux se rendre compte du probleme.

Une astuce simple pour trouver ton bug, c'est de mettre en commentaire tes instructions(lignes) ou bloc d'instructionsjusqu'a ce que tu n'ais plus d'erreur. Tu sauras quelle ligne pose probleme

5

andoh_wilfried :
Une astuce simple pour trouver ton bug, c'est de mettre en commentaire tes instructions(lignes) ou bloc d'instructionsjusqu'a ce que tu n'ais plus d'erreur. Tu sauras quelle ligne pose probleme


hum Est-ce que ca ne risque pas de generer des erreurs qui n'ont rien a voir?
N/A

6

Voilà If k=337 and x>27 or k=340 and x<117 Then     XorPic p,y,x     x+when(k=337,-18,18)->x     XorPic p,y,x ElseIf k=338 and y>26 or k=344 and y<46 Then     XorPic p,y,x     y+when(k=338,-20,20)->y     XorPic p,y,x ElseIf k=264 Then     Goto d ElseIf k=13 and m[(y-6)/20,(x-9)/18+when(y>26,1,0)]=/=0 Then     Exit EndIf

Je l'avais indenté, mais les espaces en début de ligne ne sont pas pris en compte, apparement.

[Edit 04-10-2006 23:48] : Présente le code un peu mieux... Et du coup, l'indentation est présente.
avatar
Je sais qu'il y a marqué "con" sur ma gueule. Je suis né comme ça, je m'y fais. Mais pourquoi toutes les filles qui me plaisent se sentent obligées de rajouter le suffixe "-fident" ?

7

euh.. pour ta matrice m, quelle est la valeur de y, si x=27? Ca peut peut-etre venir de l'indice qui n'est pas un nombre entier
N/A

8

x et y sont définis comme x=27 et y=26 avant que la boucle ne soit initialisée, et c'est seulement si je presse sur une des flèches que la valeur change, donc tout est strictement entier... Le problème, c'était si je ne pressais sur aucune touche, le programme crashait dès qu'il devait tester le dernier bloc ElseIf
C'était en effet un problème d'indice, mais il était entier, seulement inadapté à ma matrice (les lignes que je vous ai montrées sont une adaptation ratée d'un programme à la base pour TI V200 que je bidouille pour le faire fonctionner sur les machines de type 89, et j'ai oublié d'adapter les calculs des indices par rapport à la position de l'image p triso roll )
Cependant, le fait que le curseur se positionne avant le premier test, il faudra que je m'en souvienne ! Est-ce que le programme tokenisé met tous les tests au même endroit, et ignore certaines instructions en fonction des résultats des tests ?
avatar
Je sais qu'il y a marqué "con" sur ma gueule. Je suis né comme ça, je m'y fais. Mais pourquoi toutes les filles qui me plaisent se sentent obligées de rajouter le suffixe "-fident" ?