Random Komutları

İşine Yaradımı

  • Evet Yaradı

    Oy: 4 44.4%
  • Hayır Bence Saçma

    Oy: 5 55.6%

  • Kullanılan toplam oy
    9
  • Anket kapatılmış .
Durum
Üzgünüz bu konu cevaplar için kapatılmıştır...
Banlı Üye
Katılım
25 Ara 2016
Mesajlar
264
Tepki puanı
2
9 HİZMET YILI
C# ile Rastgele Sayı Üretmek
C#’ta rastgele değer üretmek için Random sınıfı ve bu sınıfın içerisindeki Next, NextBytes, NextDouble metotları kullanılır. En fazla tercih edilen metot Next () metodudur.


[font=Monaco, MonacoRegular,][font=Monaco, MonacoRegular,][font=Monaco, MonacoRegular,]Random rastgele = new Random();[/FONT]
[font=Monaco, MonacoRegular,]int sayi = rastgele.Next();[/FONT]
[/FONT]
[/FONT]

Bu örnekte üretilen değer 0 ile +2.147.483.646 arasındaki rastgele herhangi bir sayı olabilir. Bazı durumlarda ihtiyacımıza göre üretilen sayıları kısıtlamak isteyebiliriz.

[font=Monaco, MonacoRegular,][font=Monaco, MonacoRegular,]
[font=Monaco, MonacoRegular,]int sayi = rastgele.Next(50); //0’dan 50’ye kadar rastgele sayı üretir. 50 dahil değildir.[/FONT]
[font=Monaco, MonacoRegular,]int sayi = rastgele.Next(50,100); //50 ile 100 arasında rastgele bir sayı üretir. 100 dahil değildir.[/FONT]
[/FONT]
[/FONT]

Örnek: 1 ile 50 arasında 5 adet rastgele sayı oluşturalım.



[font=Monaco, MonacoRegular,][font=Monaco, MonacoRegular,][font=Monaco, MonacoRegular,]Random rastgele = new Random();[/FONT]
[font=Monaco, MonacoRegular,]   for (int i = 0; i <5; i++)[/FONT]
[font=Monaco, MonacoRegular,]   {[/FONT]
[font=Monaco, MonacoRegular,]                int sayi = rastgele.Next(1,50);[/FONT]
[font=Monaco, MonacoRegular,]                Console.WriteLine(sayi.ToString());[/FONT]
[font=Monaco, MonacoRegular,]   }[/FONT]
[/FONT]
[/FONT]

Oluşturulan sayılar tamamen rastgele olduğu için birbirinden farklı ya da aynı olabilmektedir.
 NextDouble() metodu ile 0.0 ile 1.0 arasında rastgele double türünde sayılar üretilir.

[font=Monaco, MonacoRegular,][font=Monaco, MonacoRegular,]
[font=Monaco, MonacoRegular,]double sayi = rastgele.NextDouble();[/FONT]
[font=Monaco, MonacoRegular,]Console.WriteLine(sayi.ToString());[/FONT]
[/FONT]
[/FONT]

C# ile Rastgele Harf Üretmek
C# ile rastgele harf üretmemizi sağlayan bir metot bulunmamaktadır. Ama ASCII tablodaki harf kodlarını kullanarak basit bir şekilde rastgele harf üretebiliriz. ASCII tabloda büyük harfler 65 ile 90 arasında yer almaktadır.


[font=Monaco, MonacoRegular,][font=Monaco, MonacoRegular,][font=Monaco, MonacoRegular,]int ascii = rastgele.Next(65, 91);[/FONT]
[font=Monaco, MonacoRegular,]char karakter = Convert.ToChar(ascii);[/FONT]
[font=Monaco, MonacoRegular,]Console.WriteLine(karakter);[/FONT]
[/FONT]
[/FONT]


----------------------------------------------------------------------------------------------------------------------
C# ile Rastgele Şifre Oluşturmak
Yukarıda ki öğrendiğimiz yöntemi kullanarak 8 karakterden oluşan rastgele bir şifre oluşturalım. Özellikle web sitelerindeki şifremi unuttum bölümünde mail adresine gönderilecek olan şifrelerin oluşturulmasında işinize yarayacaktır.


[font=Monaco, MonacoRegular,][font=Monaco, MonacoRegular,][font=Monaco, MonacoRegular,]Random rastgele = new Random();[/FONT]
[font=Monaco, MonacoRegular,]StringBuilder sb = new StringBuilder();[/FONT]
[font=Monaco, MonacoRegular,]for (int i = 0; i <8; i++)[/FONT]
[font=Monaco, MonacoRegular,]    {[/FONT]
[font=Monaco, MonacoRegular,]        int ascii = rastgele.Next(32, 127);[/FONT]
[font=Monaco, MonacoRegular,]        char karakter = Convert.ToChar(ascii);[/FONT]
[font=Monaco, MonacoRegular,]        sb.Append(karakter);[/FONT]
[font=Monaco, MonacoRegular,] [/FONT]
[font=Monaco, MonacoRegular,]    }[/FONT]
[font=Monaco, MonacoRegular,]Console.WriteLine(sb.ToString());[/FONT]
[/FONT]
[/FONT]

Ascii tabloda 32 ile 127 arasında klavyeden yazabileceğiniz tüm rakam, harf ve özel karakterler yer almaktadır. StringBuilder ile oluşturulan değerler arka arkaya eklenmiş ve sonuç Console ekranında gösterilmiştir.
C# ile Random sınıfı ve metotlarını kullanarak rastgele sayı ve harf üretme işlemini anlattım. Konuyla ilgili tüm sorularınızı bana iletebilirsiniz.


+rep Evet İşinize Yaradıysa
 
Emektar Üye
Katılım
30 Eyl 2016
Mesajlar
1,765
Tepki puanı
316
Ödüller
10
9 HİZMET YILI
Kardeş saçma saçma yorumlar atmayın. Konu editini düzgün yap. Aksi takdirde konun kapatılır!
 
I'm the Boss
Ultra Üye
Katılım
4 Ağu 2016
Mesajlar
887
Tepki puanı
30
9 HİZMET YILI
yaw alınmtı yaptın tamam anladık da
Abicim insan şu konuy bi düzenler gelip bide rep istiyosun
Sen o başlığa random bkomutlarrı deyip bırakırsnan emin ol kimsenin işine yaramaz :S
YAZCAKSIN oRUYA BAK ŞU ŞEKİL "C# random string üretme"
 
Üye
Katılım
9 Haz 2016
Mesajlar
40
Tepki puanı
0
Ödüller
9
Yaş
24
Sosyal
9 HİZMET YILI
bilmiyenler için yararlı fakat vb.nette ekle
 
Durum
Üzgünüz bu konu cevaplar için kapatılmıştır...
Üst