remilafouine
Messages postés32Date d'inscriptionjeudi 20 janvier 2005StatutMembreDernière intervention11 juin 2007
-
7 juin 2007 à 14:46
cs_Girou
Messages postés1203Date d'inscriptionlundi 10 mars 2003StatutMembreDernière intervention23 juillet 2009
-
11 juin 2007 à 15:19
Bonjour à tous !
Donc voilà... Je fais un tableau en 2D avec ca :
var Tab:Array = new Array[3][32]
Logiquement, ca devrait être un tableau avec 3 colonnes et 32 lignes... ok.
Mais voilà :
Question 1 : il fait 3 colonnes... mais pour parcourir la première, je fais quoi ?
Tab[1] ou Tab[0] ?
Question 2 : une boucle "for" définit comme ca :
for(i;i< =3;i++)
Pour parcourrir mon tableau... elle va aller de 0 à 3 (ce qui ferait 4 valeurs distonctes) ou de 1 à 3 ?
Est-il possible de la définir comme tel : for (i=1;i<=3;i++) ou pas ?
En gros : pour parcourrir correctement mon tableau, je dois faire comment, un boucle qui va de 0 à 2, de 1 à 3 ? Car je suis un peu perdu...
De plus je ne peux pas tester mon appli dans l'immédiat car elle est trop incomplète...
Cette question est assez urgente car, bien que tout ca soit dans des fonctions et donc très facilement retrouvable et modifiable, je ne veux pas perdre trop de temps, et passez à autre chose tant que ce n'est pas terminé....
Merci de votre aide !
A voir également:
Question tte bete sur les tableaux et les boucles for
cedriclomb
Messages postés275Date d'inscriptionsamedi 19 novembre 2005StatutMembreDernière intervention27 avril 20101 7 juin 2007 à 15:25
Bonjour
new Array[3][32] t'est pas obligé de te faire suer les tailles sont dynamiques en flash !
Réponse 1 c'est de la prog donc par 0
Ta boucle est juste mais par contre tu pourrais utiliser l'attribut length
remilafouine
Messages postés32Date d'inscriptionjeudi 20 janvier 2005StatutMembreDernière intervention11 juin 20071 7 juin 2007 à 15:33
Wow... Merci pour ta réponse, mais tu peux êt replus précis please ?
Les tailles sont dynamiques... oui, avec un flush, je crois ?
Pour la boucle, je suis d'accord, c'est bien ce que je pensais... C'est logique.
Mais pour le tableau, si je déclare mon tableau comme ça, utilisant Tab[3][32], je vais être à l'intersection de la 3ème colonne et de la 32ème ligne, ou de la 4ème colonne et de la 33ème ligne ?
remilafouine
Messages postés32Date d'inscriptionjeudi 20 janvier 2005StatutMembreDernière intervention11 juin 20071 7 juin 2007 à 15:36
Yop... Girou, tu as répondu pendant que je postais... désolé...
Du coup, tu as répondu plus ou moins à ma question...
Si je fais Tab[3][32] je vais être à la cellule qui se trouve à l'intersection de la 4ème colone et de la 33ème ligne...
Vrai ?
Vous n’avez pas trouvé la réponse que vous recherchez ?
remilafouine
Messages postés32Date d'inscriptionjeudi 20 janvier 2005StatutMembreDernière intervention11 juin 20071 7 juin 2007 à 16:23
Ok d'acc !
Ben merci à tous les deux pour vos réponses !
Dernière question : ce tableau est initialisé (nécessaire) par une première fonction, puis les valeurs y sont ajoutées par une seconde. Une troisième fonction servira à piocher des valeurs dedans.
Mais pour y accéder, à ce tableau, dans mes fonctions, en sachant que le tableau est déclaré au tout début du script...
Je dois obligatoirement le passer en paramètre puis le faire retourner par mes fonctions, où le fait de l'avoir déclaré au début du script me permet de ne pas avoir à le faire passer en paramètre ?
remilafouine
Messages postés32Date d'inscriptionjeudi 20 janvier 2005StatutMembreDernière intervention11 juin 20071 11 juin 2007 à 09:28
Merci !
Mais j'ai un autreproblème : quand je clique sur un bouton de test, j'initialise mon tableau comme ça, avec une fonction :
function TabInit():void{
for(var i;i<=2;i++){
for(var j;j<=31;j++){
Tab[i][j] = 0;
}
}
}
Puis je veux faire un trace de la valeur suivante :
trace(Tab[1][1]);
Lors du trace, j'ai l'erreur suivante :
TypeError: Error #1009: Cannot access a property or method of a null object reference.
at contralco1_fla::MainTimeline/FonctionTest()
A savoir que j'ai modifié la manière de déclaration du tableau à cause de l'erreur 1010... que je ne connais plus mais qui veut dire à peu près la même chose que celle d'en dessus...
Je déclare mon tableau comme ca :
var Tab:Array;
remilafouine
Messages postés32Date d'inscriptionjeudi 20 janvier 2005StatutMembreDernière intervention11 juin 20071 11 juin 2007 à 09:57
Car ma fonction d'initialisation n'est pas appelée... et je sais pas pourquoi...
Déjà, j'ai l'erreur en moins ar j'ai mal déclaré mon tableau, donc c'est bon.
J'ai rajouté des "trace" dans ma fonction d'initialisation, et je n'ai rien qui en ressort...