Bacterius
Messages postés3792Date d'inscriptionsamedi 22 décembre 2007StatutMembreDernière intervention 3 juin 2016
-
20 mars 2008 à 22:06
Bacterius
Messages postés3792Date d'inscriptionsamedi 22 décembre 2007StatutMembreDernière intervention 3 juin 2016
-
21 mars 2008 à 17:30
Bonjour,
J'ai cherché longtemps sur Codes-Sources et sur l'aide Delphi, mais je n'ai trouvé aucune réponse à mon problème. Voila : je voudrais, dans un tableau de valeurs [1..9] (integer) dans chacune de ses valeurs mettre un nombre entre 1 et 9 sans doublon et sans blanc.
J'ai tout essayé mais je n'y arrive pas ...
Il doit y avoir une solution ?
Guillemouze
Messages postés991Date d'inscriptionsamedi 25 octobre 2003StatutMembreDernière intervention29 août 20136 21 mars 2008 à 11:35
une astuce qui vaut ce qu'elle vaut :
utilise une TList dans laquelle tu stock tes integer au lieu de pointeurs. Ensuite tu peux faire des actions sur cette liste (swap, indexOf, ...).
par exemple:
Positionde4 := MaList.IndexOf(Pointer(4));
ElementEn5emePosition := integer(MaList[5]);
...
tout depend de ce que tu veux faire ensuite de ce tableau.
Caribensila
Messages postés2527Date d'inscriptionjeudi 15 janvier 2004StatutMembreDernière intervention16 octobre 201918 21 mars 2008 à 15:36
Salut,
Je suis d'accord avec Guillemouze.
Mais, avec l'exemple que tu nous donnes, il y a une solution un peu plus simple qui vaut aussi ce qu'elle vaut :)
var S : String;
TirageArray : array[1..9] of Integer;
i, T : Integer;
begin
Randomize;
S := '123456789';
for i := 1 to 9 do begin
T := Random(Length(S)) + 1;
TirageArray[i] := StrToInt(S[T]);
Delete(S,T,1);
end;