Bonjour,
Dans le cadre d'un projet de taille plus importante (je risque de revenir ici demander de l'aide pour la suite ) je souhaiterais creer un programme de type tirage de loto, qui permettrait un tirage aléatoire sans remise dans une liste
Voila le début de code que j'ai fait, pour l'instant j'arrive à avoir un tirage aléatoire mais avec remise.
size(666, 666); background(0); int[] numbers = new int[21]; numbers[0] = 1; numbers[1] = 2; numbers[2] = 3; numbers[3] = 7; numbers[4] = 9; numbers[5] = 13; numbers[6] = 15; numbers[7] = 18; numbers[8] = 23; numbers[9] = 33; numbers[10] = 48; numbers[11] = 55; numbers[12] = 66; numbers[13] = 69; numbers[14] = 77; numbers[15] = 82; numbers[16] = 88; numbers[17] = 99; numbers[18] = 101; numbers[19] = 113; numbers[20] = 123; int X=0; for (int i = 0; i<21; i++) { //X = X +numbers[i]; X= int(random(i)); textSize(66); text(X, random(66, 600), random(66, 600)); println(X); }
Fait que si quelqu'un a une idée pour avoir une remise, ca serait nice.
Je pense qu'il faudrait comme pouvoir recréer une nouvelle liste moins le chiffre tiré au précedent tirage, et ce pour tous les tirages. Mais c'est que théorique et j'ai aucune idée de comment le passer en pratique.
Merci d'avance en tout cas
Hors ligne
Bonjour,
Pour ma part, tu pourrais utiliser une classe qui se nomme IntList :
https://processing.org/reference/IntList.html
C'est un tableau dynamique qui est de la famille des ArrayList. Donc sa taille est modifiable par l'ajout ou la suppression d'élément.
Voici ton exemple modifier :
size(666, 666); background(0); IntList nombre= new IntList(); nombre.append(1); nombre.append(2); nombre.append(3); nombre.append(7); nombre.append(9); nombre.append(13); nombre.append(15); nombre.append(18); nombre.append(23); nombre.append(33); nombre.append(48); nombre.append(55); nombre.append(66); nombre.append(69); nombre.append(77); nombre.append(82); nombre.append(88); nombre.append(99); nombre.append(101); nombre.append(113); nombre.append(123); int x = 0; while (nombre.size() > 0) { x = int(random(nombre.size())); textSize(20); text(nombre.get(x), random(66, 600), random(66, 600)); println(x); nombre.remove(x); }
Hors ligne
Merci beaucoup! C'est pile ca
Je connaissais pas cet outil, il a l'air bcp plus souple que les ArrayList. Je vais commencer a gosser avec pour voir comment controler tout ca.
Hors ligne
Pages: 1