Creation de tableaux alpha

Soyez le premier à donner votre avis sur cette source.

Vue 10 854 fois - Téléchargée 118 fois

Description

Slut,
J'ai eu envie de reproduire la fonction de tableau que l'on peut trouver dans bon nombre de langages
Les tableaux dont je m'inspire sont ceux du langage C/C++, ceux qui connaissent n'auront aucun mal a se servir de ces tableaux mirc.
Bon, pour l'instant (et peut etre pour toujours) j'ai limité les tableaux a une ou deux dimensions
Le zip contient le remote du code en lui même, et un fichier d'exemples avec commentaires pour comprendre la syntaxe

juste un petit exemple

/tableau exemple[2][3] = < 1 , 2 , 3 , 4 , 5 , 6 >

Ce code va remplir un tableau de 2 lignes et 3 colonnes avec les nombres respectifs pour chacune des cellule du tableau
$tableau(exemple,0,0) va retourner 1
$tableau(exemple,0,1) va retourner 2
$tableau(exemple,0,2) va retourner 3
$tableau(exemple,1,0) va retourner 4
$tableau(exemple,1,1) va retourner 5
$tableau(exemple,1,2) va retourner 6

Pour ceux qui trouvent ça pas clair
le tableau se présenterai comme ça

___|_0_|_1_|_2_|
_0_|_1_|_2_|_3_|
_1_|_4_|_5_|_6_|

A VENIR:

Reorganisation COMPLETE du code
Possibilité de sauvegarder et charger son tableau (comme pour les hashtables)

Source / Exemple :


;alias d'exemple tres basique, present dans le fichier du zip
;je le met ici pour les curieux

alias tableau_ex_3 {

  ;on crée notre tableau à 2 dimensions
  tableau echiquier[8][8]

  ;on va le remplir des nombres 1 à 64 (le nombre de cases d'un echiquier)

  var %i 0 , %case 1
  while (%i < 8) {
    var %j 0
    while (%j < 8) {
      echo -a $+(echiquier[,%i,],[,%j,]) contient le numero %case

      ;on inscrit la variable aux coordonnees %i %j dans le tableau
      tableau echiquier[ %i ][ %j ] = %case

      inc %case
      inc %j
    }
    inc %i
  }

  ;on supprime le tableau

  tableau echiquier[] > delete

}

Conclusion :


/!\ Lisez le fichier d'exemple qui contient des explications pour utiliser cette fonction /!\
ps: N'oubliez pas que la premiere cellule d'un tableau est a l'emplacement 0, et non 1 !!!

Pour toute suggestion ou rapport de bug, laissez un commentaire

Codes Sources

A voir également

Ajouter un commentaire

Commentaires

Messages postés
1804
Date d'inscription
mardi 15 juillet 2003
Statut
Membre
Dernière intervention
22 septembre 2009
4
il parle de l'alias tableau je pense, mais c'est irréalisable de faire des alias dynamiques proprement avec mirc
pas mal ton truc, faudrait comparer avec les pseudo arrays sur sdb.org et la gestion de matrices de Kerrigan ici
bonne continuation
Messages postés
840
Date d'inscription
vendredi 28 janvier 2005
Statut
Membre
Dernière intervention
25 février 2009

euh de quel code tu parles ?
si tu parles du fait qu'il faille toujours preceder les noms des tableaux par le mot 'tableau' saches que je ne peux pas faire autrement, mirc ne reconnaissant bien evidemment pas les tableaux comme des 'variables'
Cela dit, il est rare de remplir un tableau de manière manuelle, la boucle est plus appropriée, et dans ce cas là, on n'ecrit plus 'tableau' qu'une seule fois ;-)
Messages postés
301
Date d'inscription
mercredi 15 juin 2005
Statut
Membre
Dernière intervention
19 février 2007

Et il faut mettre le code à chaque fois que l'on veut faire un tableau ?! Pas bien sa :|
Messages postés
840
Date d'inscription
vendredi 28 janvier 2005
Statut
Membre
Dernière intervention
25 février 2009

en mirc:
tableau tablename[3]
tableau tablename[0] = 1
tableau tablename[1] = 2
tableau tablename[2] = 3

( j'aurai pu faire: tableau tablename[3] = < 1 , 2 , 3 > )

$tableau(tab,1) retourne bien 2...
Messages postés
301
Date d'inscription
mercredi 15 juin 2005
Statut
Membre
Dernière intervention
19 février 2007

en c/c++ :
long tableName[3];
tableName[0] = 1;
tableName[1] = 2;
tableName[2] = 3;
là, tableName[1] retourne 2

Ton code n'est pas comme ça...
Afficher les 7 commentaires

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.