List a plusieurs dimensions ?

Vous débutez et vous avez besoin d'aide ? N'hésitez pas à poser vos questions
Aranoth
Messages : 293
Inscription : sam. 24/janv./2004 12:00
Localisation : Toulouse (31)
Contact :

List a plusieurs dimensions ?

Message par Aranoth »

Salut,

voulant comprendre le fonctionnement du pathfinding A*, je me suis rendu sur le site: http://www.lalex.com/blog/archives/2003 ... nding.html

Il parle des List, je ne connaissais pas avant, mais maintenant si^^

Et je voudrais savoir si, comme un tableau on pouvait donner plusieurs dimmensions ?

genre:

NewList liste.l(1,1)


Merci :P
Débutant en programmation, notament en C++ ?
Vous souhaitez apprendre ?
Avatar de l’utilisateur
Chris
Messages : 3731
Inscription : sam. 24/janv./2004 14:54
Contact :

Message par Chris »

Il faut lui associer une structure.

Structure MaStructure
Blabla1.l
Blabla2.l
EndStructure

NewList Maliste.MaStructure()

Chris :)
Aranoth
Messages : 293
Inscription : sam. 24/janv./2004 12:00
Localisation : Toulouse (31)
Contact :

Message par Aranoth »

Ok

si je comprend bien ca donne ca:

Code : Tout sélectionner

Structure Str
  X.l
  Y.l
  C.l
EndStructure

NewList Path.Str()
AddElement(Path())
Path()\X=1
merci :D
Débutant en programmation, notament en C++ ?
Vous souhaitez apprendre ?
Avatar de l’utilisateur
Chris
Messages : 3731
Inscription : sam. 24/janv./2004 14:54
Contact :

Message par Chris »

T'as tout compris :wink:

Chris :)
Aranoth
Messages : 293
Inscription : sam. 24/janv./2004 12:00
Localisation : Toulouse (31)
Contact :

Message par Aranoth »

bon j'ai pas réussi à coder le pathfinding (manque de motiv ?) mais j'aurait au moins apris les listes et les structures :D
Débutant en programmation, notament en C++ ?
Vous souhaitez apprendre ?
Aranoth
Messages : 293
Inscription : sam. 24/janv./2004 12:00
Localisation : Toulouse (31)
Contact :

Message par Aranoth »

Autre problème !

J'aimerait maintenant faire une Liste à 2 dimmensions, infinies !

En fait ca correspond à ca:

Code : Tout sélectionner

Dim CODE$(infinis, infinis)
comment faire?

merci
Débutant en programmation, notament en C++ ?
Vous souhaitez apprendre ?
Avatar de l’utilisateur
Chris
Messages : 3731
Inscription : sam. 24/janv./2004 14:54
Contact :

Message par Chris »

Ben c'est la même chose que pour la première, sauf que tu ne mets que 2 champs dans ta structure.

A moins qu'il y ait une autre solution que je ne connais pas, je ne vois que ça pour que la liste soit infinie.

Chris :)
Aranoth
Messages : 293
Inscription : sam. 24/janv./2004 12:00
Localisation : Toulouse (31)
Contact :

Message par Aranoth »

en fait ce que je voudrait c'est:

Code : Tout sélectionner

Structure nom
 infinitée
EndStructure
si je ne met que 2 champs ca reviens à faire ca:

Code : Tout sélectionner

DIM nom(infinis,2)
non ?
Débutant en programmation, notament en C++ ?
Vous souhaitez apprendre ?
Avatar de l’utilisateur
Chris
Messages : 3731
Inscription : sam. 24/janv./2004 14:54
Contact :

Message par Chris »

C'est quoi "Infini" ? Une constante, une variable, une commande PB ?

En tout cas, elle n'a pas l'air d'être reconnue par Pure.

Si tu utilises DIM, tu dimensionne un tableau, donc, tu lui donne une dimension finie.
Ca peut être 1 comme 10000000, c'est toujours une dimension finie.

Ou alors, j'ai pas bien compris la question, ça aussi, c'est possible :lol:

Chris :)
Aranoth
Messages : 293
Inscription : sam. 24/janv./2004 12:00
Localisation : Toulouse (31)
Contact :

Message par Aranoth »

infinis c'est ce que j'aimerait faire justement.

j'aimerait créer une structure avec un nombre infini de parametre.

au lieu d'avoir

Code : Tout sélectionner

Structure Str 
  X.l 
  Y.l 
  C.l 
EndStructure 
j'aimerait

Code : Tout sélectionner


Structure nom 
 infinitée 
EndStructure 
pour que ma liste se comporte comme un tableau de cette facon:

Code : Tout sélectionner

DIM nom(infinitée,infinitée) 
mais je ne sais meme pas si c'est possible

en tout cas j'espere que j'ai été clair^^

merci de t'attarder sur mon problème :wink:
Débutant en programmation, notament en C++ ?
Vous souhaitez apprendre ?
Avatar de l’utilisateur
Chris
Messages : 3731
Inscription : sam. 24/janv./2004 14:54
Contact :

Message par Chris »

En fait, si j'ai bien compris, ce que tu voudrais, c'est pouvoir modifier le nombre de champs de la structure selon les besoins.

Là, je ne crois pas que ce soit possible.

Il y a bien le paramètre Extend, qui permet d'étendre une structure avec les champs d'une autre, mais l'autre structure a aussi un nombre de champs défini, tu est donc quand même limité dans le nombre de champs.
Et je ne peux même pas te donner d'exemple, je ne l'ai jamais utilisé.

Chris :)
Avatar de l’utilisateur
Crystal Noir
Messages : 892
Inscription : mar. 27/janv./2004 10:07

Message par Crystal Noir »

ouiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiinnnn je viens juste de poster un petit tutorial sur la jonction de listes avec des structures, halalala ca sert à quoi que le crystal se décarcasse hein :roll: :lol:
Backup
Messages : 14526
Inscription : lun. 26/avr./2004 0:40

Message par Backup »

il voudrai une sorte de list a plusieurs dimentions , je crois :)
Aranoth
Messages : 293
Inscription : sam. 24/janv./2004 12:00
Localisation : Toulouse (31)
Contact :

Message par Aranoth »

en y reflechissant, Chris à raison, c'est impossible.

Code : Tout sélectionner

NomList()\*et la je marque quoi?*
bon tant pis, je mettrait une grosse valeure en esperant que ca passe à tout les coups^^

merci quand meme :wink:
Débutant en programmation, notament en C++ ?
Vous souhaitez apprendre ?
Anonyme2
Messages : 3518
Inscription : jeu. 22/janv./2004 14:31
Localisation : Sourans

Message par Anonyme2 »

Par définition (je pense), l'infinie n'a pas de fin donc est quelque chose que l'on ne peut mesurer; créer une liste chaînée infinie ne veut rien dire car il faudrait un ordinateur avec une mémoire infinie. Ou stocker l'infini ? Comment y accéder ? etc.

Il serait bien que tu explique plus longuement ce à quoi tu penses, il doit y avoir une solution.

Les listes chainées permettent de stocker des données sans en connaître le nombre au départ donc cela correspondrait bien à ton problème. On peut en ajouter "à l'infini" avec la seule limite qui est celle de l'ordinateur et de sa mémoire disponible.
Répondre