_________________ Home is not a place, it's a feeling.
hofmeister Bavard
Messages : 109
Sujet: Re: Tri aléatoire =) Mer 22 Mai 2013 - 15:59
En moins performant mais plus simple, tu peux aussi utiliser une map, initialiser ses cases à 0, puis faire une boucle qui n'ajoute la valeur que si la case est égale à 0.
Sujet: Re: Tri aléatoire =) Mer 22 Mai 2013 - 16:04
Si tu veux pas te prendre la tête, tu crée une liste avec les éléments de 1 à 9, tu la mélange, et tu la met direct dans ton tableau 2d.
Pour cela: for(i=0; i<9; i+=1) matrix[i mod 3, i div 3] = ds_list_find_value(list, i)
_________________
D-z Utilisateur confirmé: Rang *****
Messages : 1611 Localisation : Montpellier
Sujet: Re: Tri aléatoire =) Mer 22 Mai 2013 - 16:23
onilink_ : ça devient du Goldberg là :p
L'algorithme de Durstenfeld implémenté :
Code:
grille[0, 0] = 1; for(i = 1; i < 9; i += 1) { j = irandom_range(0, i); grille[i mod 3, i div 3] = grille[j mod 3, j div 3]; grille[j mod 3, j div 3] = i + 1; }
_________________ Home is not a place, it's a feeling.
Sujet: Re: Tri aléatoire =) Mer 22 Mai 2013 - 16:28
Oh sympa celui ci :b
_________________
D-z Utilisateur confirmé: Rang *****
Messages : 1611 Localisation : Montpellier
Sujet: Re: Tri aléatoire =) Mer 22 Mai 2013 - 16:51
Bah pas besoin de sortir l'artillerie lourde pour remplir un tableau avec les nombres de 1 à 9 :p
_________________ Home is not a place, it's a feeling.
Kabcorp Utilisateur confirmé: Rang **
Messages : 315 Localisation : Savoie Projet Actuel : trop...
Sujet: Re: Tri aléatoire =) Mer 22 Mai 2013 - 17:05
Merci a vous! j'éssairais tout ca ce soir
_________________
Vous voulez un jeu pas comme les autres? Voici DeFRaG :
Kabcorp Utilisateur confirmé: Rang **
Messages : 315 Localisation : Savoie Projet Actuel : trop...
Sujet: Re: Tri aléatoire =) Jeu 6 Juin 2013 - 14:19
Code:
var G,G0,W,H,X,X0,Y,Y0; G = argument0 W = ds_grid_width(G) H = ds_grid_height(G) for (X=0;X<W;X+=1) { for (Y=0;Y<H;Y+=1) { X0=floor(random(W)) Y0=floor(random(H)) G0=ds_grid_get(G,X,Y) ds_grid_set(G,X,Y,ds_grid_get(G,X0,Y0)) ds_grid_set(G,X0,Y0,G0) } }
Impecable merci
_________________
Vous voulez un jeu pas comme les autres? Voici DeFRaG :