Random Sayı Üretmek - C#

Rastgele sayı üretirken kullanılan başka bir sınıftan kısaca söz edeyim. Random sınıfı kripto işlemleri için yeterli değildir. .NET Framework ile birlikte verilen RandomNumberGenerator sınıfından yararlanıp değişik amaçlar için kullanabileceğiniz rastgele sayılar üretebilirsiniz. Bu sınıfı kullanabilmek için aşağıda verilen satır ile ilgili namespace koda dahil edilmelidir.

 

using System.Security.Cryptography;

 

Aşağıda verdiğim örnekte ilk olarak 10 elemanlı bir byte dizisi hazırladım. Rastgele hazırlamak istediğiniz sayının daha uzun veya kısa olmasını istiyorsanız byte tipindeki dizi değişkenin eleman sayısında değişiklik yapmalısınız.

 

private void Form1_Click(object sender, EventArgs e)

  {

    byte[] Dizi = new byte[10];

    RandomNumberGenerator Sayi;

    Sayi = RandomNumberGenerator.Create();

    Sayi.GetBytes(Dizi);

    string Str="";

    for (int i = 0; i < Dizi.Length; i++)

      Str = Str + Dizi[i].ToString();

    textBox1.Text = Str;

}

 

Devamında RandomNumberGenerator tipinde bir değişken tanımlayıp Create() metodu ile RandomNumberGenerator nesnesini hazırladım. Bu sınıfın GetBytes() metodu parametre olarak aldığı Byte dizisinin içeriğini rastgele doldurmaktadır.