cs_benmiles
Messages postés5Date d'inscriptionmercredi 23 mai 2012StatutMembreDernière intervention 4 juin 2012
-
4 juin 2012 à 19:49
krimog
Messages postés1860Date d'inscriptionlundi 28 novembre 2005StatutMembreDernière intervention14 février 2015
-
5 juin 2012 à 11:28
Bonjour,
Voilà, je n'ai pas trouvé ou ce sujet serait le plus approprié donc je le poste dans "autre" désolé si ca cause de la gène.
Enfin mon problème le voici, et j'ai eut beau regarder sur le net il y a un peu tout mais pas le mix que je veux faire (si il est possible):
Je voudrais générer donc un tableau rempli d'entiers aléatoires (NextBytes) mais que ceux si soit seulement situés par exemple entre 1 et 10 inclus (Max/MinValue). Mon petit soucis c'est que je n'arrive pas à faire mon petit mixe des deux, donc à moins que je n'utilise pas la bonne méthode pouvez vous me dire comment je fais ? Voici mon code pas modifié que j'aimerai justement améliorer :
static void Main(string[] args)
{
Random b = new Random();
Byte[] tableau = new Byte[4];
b.NextBytes(tableau);
Console.WriteLine("Les chiffres aléatoires sont : ");
for (int i = 0; i < tableau.Length; i++)
{
Console.WriteLine(tableau[i]);
}
}
fmounir
Messages postés26Date d'inscriptionmardi 1 février 2011StatutMembreDernière intervention 2 mai 2013 4 juin 2012 à 20:47
Bonjour,
J’espère que ça répond à ton problème :
Random b = new Random();
int[] tableau = new int[4];
for (int i = 0; i < tableau.Length; i++)
{
tableau[i] = b.Next(1, 10);
}
Console.WriteLine("Les chiffres aléatoires sont : ");
for (int i = 0; i < tableau.Length; i++)
{
Console.WriteLine(tableau[i]);
}
Console.ReadKey();
krimog
Messages postés1860Date d'inscriptionlundi 28 novembre 2005StatutMembreDernière intervention14 février 201549 5 juin 2012 à 11:28
Salut,
b.Next(1, 11);
En effet, la méthode Next(a, b) renvoie un nombre compris entre a inclus et b EXCLUS. C'est d'ailleurs précisé dans le tooltip de la méthode. Donc si tu veux entre 1 et 10 inclus, il faut générer un nombre entre 1 inclus et 11 exclus.
En revanche, ce n'est pas parce que la méthode NextBytes() n'est pas celle qu'il te faut que tu dois changer le type de ton tableau pour autant. Ça veut juste dire qu'il faut faire un cast du retour de la méthode Next().
Random b = new Random();
byte[] tableau = new byte[4];
for (int i = 0; i < tableau.Length; i++)
{
tableau[i] = (byte)b.Next(1, 11);
}
Console.WriteLine("Les chiffres aléatoires sont : ");
for (int i = 0; i < tableau.Length; i++)
{
Console.WriteLine(tableau[i]);
}
Console.ReadKey();
Krimog : while (!(succeed = try())) ; - Nous ne sommes pas des décodeurs ambulants. Le style SMS est prohibé. -