2016-04-06 23 views
0

6 sayı içeren bir dizi oluşturdum. 1, 40 arasında rastgele bir sayı oluşturdum ama her sayı sırayla gösteriyor. Bunu
int[] sortedCopy = lotto.OrderBy(i => i).ToArray();
gibi yapabiliriz, bu onu sıralamak isterseniz sadece 6Loto Oyunu Visual Studio

 static void Main() 
    { 
     int temp; 
     int number = 0; 
     int[] lotto = new int[6]; 

     Random rand = new Random(); 

     for (int i = 0; i <= 40; i++) 
     { 
      number = 0; 
      temp = rand.Next(1, 40); 

      while (number <= i) 
      { 
       if (temp == number) 
       { 
        number = 0; 
        temp = rand.Next(1, 40); 
       } 
       else 
       { 
        number++; 
       }      
      } 
      temp = number; 
      Console.WriteLine("your lotto number is " + number); 
     } 
      Console.ReadLine(); 
    } 
} 

}

+2

Hiçbir zaman 'lotto' dizisine hiçbir şey eklemezsiniz. Ayrıca neden iki kere rastgele aradığınızı da bilmiyorum ama asla değer ile hiçbir şey yapmıyorsunuz. – Steve

+0

'temp = rand.Next (1, 40);' number = rand.Next olmalıdır (1, 40); '? –

cevap

0

bu

 int number = 0; 
     int[] lotto = new int[6]; 

     Random rand = new Random(); 

     for (int ctr = 1; ctr <= 6; ctr++) 
     { 
      number = rand.Next(1, 41); 

      while (lotto.Contains<int>(number)) 
      { 
       number = rand.Next(1, 41); 
      } 
      lotto[ctr-1] = number; 
      Console.WriteLine("Your lotto number is: " + number); 
     } 

     Console.ReadLine(); 

deneyin okumak gerekir Ama gerekecektir
using System.Linq;

0

A Guid.NewGuid() tarafından sipariş ile basit Linq?

var lotto = Enumerable.Range(1, 40) 
         .OrderBy(i => Guid.NewGuid()) 
         .Take(6) 
         .ToArray();