Ymox Le 01/10/2006 à 22:37 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é

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" ?
A mon avis ça vient d'autre part si tu es bien sûr des types de k et x.

Combien de tas de bois une marmotte pourrait couper si une marmotte pouvait couper du bois ?
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
Ymox Le 02/10/2006 à 22:44Edité par Ymox le 04/10/2006 à 23:44 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.

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" ?
dal Le 02/10/2006 à 22:53 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