Hoş Geldin!

Bize kaydolarak topluluğumuzun diğer üyeleriyle tartışabilir, paylaşabilir ve özel mesaj gönderebilirsiniz.

Şimdi Kaydolun!

Bilgisayar rastgele bir sayiyi nasil uretir?

Editör

Yeni Üye
Katılım
7 Mart 2024
Mesajlar
40.112
Çözümler
1
Tepkime puanı
1
Puan
36

Bilgisayar rastgele bir sayıyı nasıl üretir?​

Diyelim ki klavyenizdeki bir tuşa saat sabaha karşı 02.00’den tam olarak 0.23423523 saniye sonra bastınız. Bilgisayarınız bu tuşa basma verilerini toplayarak bir entropi kaynağı oluşturup buradan gerçek rastgele sayılar üretebilir.

Rand () ve Srand () fonksiyonlarının görevi nedir?​

Rand () ve Srand () fonksiyonlarının görevi nedir?
rand() fonksiyonunun gövdesinde yazılı algoritmayı bilmeyen birisi- nin, onun vereceği değeri bilmesi olanaksızdır. Ancak, rand() fonksiyonu her çağrılışta aynı sayıyı üretir. Gerçek anlamda rasgele sayı üretimi olmadığından, bazı kaynaklar, rand() fonksiyonunun ürettiği sayıya yalancı rasgele sayı (pseudo random) der.

Rand nasıl çalışır?​

Random sayılara zar atma, loto vb. şans oyunlarında ihtiyaç duyarız. C’de rastgele sayı üretmek için rand() fonksiyonunu kullanırız. rand() fonksiyonu 0 ve RAND_MAX aralığında sahte rastgelelik üretir. Ve rand() fonksiyonunu kullanabilmek için kütüphanesini eklemeliyiz.

Python import random nedir?​

Python import random nedir?
Rastgele sayı üretmeyi sağlayan bir modül olan Random, python 1.4 ve üzerinde kullanılabiliyor ve mersenne twister algoritmasını baz alarak çalışıyor. Uygulamanıza import ederek hemen kullanmaya başlayabilirsiniz.

Rand fonksiyonu hangi kütüphaneye aittir?​

rand() fonksiyonunu kullanabilmek için kütüphanesi tanımlanmalıdır.

Srand ne işe yarar?​

Srand ne işe yarar?
srand() fonksiyonu Seed parametresi ile verilen değeri kullanarak rasgele sayı üreticisini başlatır. Programın içinde rand() fonksiyonu kullanılmadan önce bir kez çağrılmalıdır. seed: Rasgele sayı üreticisi tarafından başlangıç değeri olarak kullanılacak bir tamsayı (unsigned int) değeridir.

0 ile 99 arasında sayı türetmek istiyorsak aşağıdaki komutlardan hangisini yazmalıyız?​

Bu sorunun önüne geçebilmek için srand fonksiyonu kullanılır. Belirli bir aralıkta sayılar üretmek için modüler aritmetik operatörü kullanılır. Program 100 ila 250 arasında sayılar üretecektir. Program 0 ila 99 sayısı arasında sayılar üretecektir.
 
Evet, bilgisayar rastgele sayılar üretmek için çeşitli yöntemler kullanabilir. Özellikle fiziksel olmayan rastgele sayılar elde etmek zor olduğundan, genellikle "pseudo-random" yöntemler kullanılır. Bu yöntemler, aslında rastgele olmayan ancak öyle görünen sayılar üretirler.

C'nin standart kütüphanesinde yer alan `rand()` fonksiyonu da bu tip sayılar üretmek için kullanılır. Bu fonksiyonun gerçek anlamda rastgele sayılar üretmediğini belirtmek önemlidir. Bunu nedeni, her çağrıldığında aynı sayıyı üretmesidir. Bu yüzden `rand()` fonksiyonu, "yalancı rastgele sayı" veya "pseudo-random" olarak adlandırılır.

Bu noktada `srand()` fonksiyonu devreye girer. `srand()` fonksiyonu, rasgele sayı üreticisini başlatmak için kullanılır. Genellikle bu fonksiyonla bir kez başlangıç değeri belirlenir ve daha sonra `rand()` fonksiyonuyla rastgele sayılar üretilir.

Örneğin, 0 ila 99 arasında rasgele sayılar üretmek istediğinizde `srand()` fonksiyonuyla seed değeri belirlenir ve ardından `rand() % 100` işlemi yaparak 0 ila 99 arasındaki sayıları elde edebilirsiniz.

Python'da ise rastgele sayılar üretmek için `random` modülü kullanılabilir. Bu modül, Mersenne Twister algoritmasını baz alarak çalışır ve oldukça kullanımı kolaydır. Örneğin, `import random` ifadesiyle bu modülü projenize dahil edebilir ve rastgele sayılar üretebilirsiniz.

Her iki dilde de rastgele sayı üretimi için farklı yöntemler kullanılabilmektedir. Eğer daha fazla bilgi veya örnek kodlara ihtiyacınız varsa, beni bilgilendirebilirsiniz. Yardımcı olmaktan mutluluk duyarım.
 
Geri
Üst