Konuyu Oyla:
  • Derecelendirme: 0/5 - 0 oy
  • 1
  • 2
  • 3
  • 4
  • 5
C# Rastgele Sayı ve Harf Üretme
#1
Merhaba arkadaşlar,

Bu konuda C# ile rastgele sayı ve harf üretme üzerine çalışma yapacağız.

Öncelikle, C#'ta rasgele sayı üretmek için kullanılan sınıfımızın "Random" adlı sınıf olduğunu belirtmeliyim.
Random sınıfı sayesinde kolayca sayı üretebiliriz. 
Sınıfı kullanmak için bu sınıftan bir nesne türetip onun üzerinden işlem yapıyoruz. Random sınıfıyla integer ve double türünde rastgele sayı üretebiliriz. Yani tamsayı yada küsürlü sayı...

İlk örneğimizde rastgele bir sayı üretelim ve bu sayı 0 ile 10 arasında olsun.
Bunun için Random.Next() fonksiyonunu kullanacağız. Bu fonksiyon geriye int türünde üretilen rastgele sayıyı döndürür.
Parametre olarak; tek int yada iki tane int türünden değer alabilir. Eğer tek int gönderip kullanırsak 0 ile gönderdiğimiz değer arasında, eğer iki tane int değeri gönderirsek göndermiş olduğumuz değerler arasında rasgele sayı üretilir.

0 ile 10 arasında rastgele sayı üreten fonksiyon (Rastgele sayılarda, 0 dahil ve 10 dahil değil):
Kod:
    public static int rastgeleSayiUret ()
    {
        Random rnd = new Random();
        return rnd.Next(10);
    }



Kullanım:

Kod:
void Button1Click(object sender, EventArgs e)
{
    textBox1.Text = rastgeleSayiUret().ToString();
}



2 parametre göndererek 10 ile 20 arasında rastgele sayı üretmek için:

Kod:
    public static int rastgeleSayiUret (int baslangic, int bitis)
    {
        Random rnd = new Random();
        return rnd.Next(baslangic,bitis);
    }


Kullanım:

Kod:
void Button1Click(object sender, EventArgs e)
    {
        textBox1.Text = rastgeleSayiUret(10,20).ToString();
    }


C# ile rastgele harf üretme:

C#'ta rastgele harf üretebileceğimiz bir sınıf yada metod bulunmuyor. Ama bunu yapmak için çeşitli yöntemler mevcut. Bunlardan bir tanesi de karakter kodlarını kullanmak. Şimdide Random sınıfı ve ASCII tablosunu kullanarak rastgele harf üretmeye ilişkin bir örnek yapalım.

ASCII tablosunu incelediğimizde Büyük harflerin 65 ile 90,  küçük harflerin ise 97 ile 122 arasında olduğunu görürüz. Bunlar ASCII tablosunda ki karakterlerin ondalık değerleridir. İşte bu değerli biz Random ile üretip onaltılık sistemdeki karekter kodundan harfe çevirebiliriz. Aşağıdaki örneği incelediğinizde durum kafanızda netleşecektir.

Öncelikle üstte de kullandığımız fonksiyon yardımıyla istediğimiz değerler arasında rastgele sayı üretelim.
Kod:
    public static int rastgeleSayiUret (int baslangic, int bitis)
    {
        Random rnd = new Random();
        return rnd.Next(baslangic,bitis);
    }


Büyük harf üretmek için:

Kod:
void Button1Click(object sender, EventArgs e)
    {
        int charKodu = rastgeleSayiUret(65,91);
        textBox1.Text = Convert.ToChar(charKodu).ToString();
    }


Küçük harf üretmek için:

Kod:
    void Button1Click(object sender, EventArgs e)
    {
        int charKodu = rastgeleSayiUret(97,123);
        textBox1.Text = Convert.ToChar(charKodu).ToString();
    }



Son olarak, kendi belirlediğimiz karakter dizisi içinden rastgele bir metin oluşturmayı deneyelim.

Kod:
    void Button1Click(object sender, EventArgs e)
    {
        String karakterler = "0123456789ABCÇDEFGĞHIİJKLMNOÖPRSŞTUÜVYZabcçdefgğhıijklmnoöprsştuüvyz";
        Random rnd = new Random();
        String pano = "";
        for (int i=0;i<20;i++)
        {
            pano+= karakterler[rnd.Next(karakterler.Length)];
        }
            
        textBox1.Text = pano;
    }


* Örneklerdeki fonkisyonları kullanmak zorunda değilsiniz, düzenleyip hiç fonksiyona gerek kalmadan da kullanabilir, kullanılan sayısal değerleri de ihtiyacınıza yada keyfinize göre değiştirebilirsiniz.
Cevapla


Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
  C# Büyük Harf, Küçük Harf Dönüştürme root 0 4,234 25-11-2015, 11:44
Son Yorum: root
  C# TextBox'a Sadece Harf, Sayı, Özel Karakter Girme root 0 11,975 20-11-2015, 17:34
Son Yorum: root

Hızlı Menü:


Konuyu Okuyanlar: 1 Ziyaretçi