Projede amaç sözde rastgele sayılar oluşturmaktır. Lehmer algoritması kullanılarak kullanılan değişken ve sabitlere asal sayılar atanmıştır. Kullanılan sayıların rastgele sayı oluşturmayı ne şekilde etkilediği ve aralarında ne gibi bir ilişki ile değer atanması gerektiği incelenmiştir. Bu algoritmada kullanılan formül özyinelemeli olarak devam etmekte böylece istenen sayıda rastgele sayı üretilmeye devam etmektedir.
Gerçek rastgele sayı üretimi için dış bir kaynaktan veri alana üreteçlerdir çünkü dış kaynaklar determinist değildir ve entropi daha fazladır. Sıcaklık, fare ve klavye hareketleri, saat bu üreteçler için kaynak olabilir.
Rastgele sayı dizilerine yaklaşan sayı dizileri üreten üreteçlerdir. Bir başlangıç değeri yani tohum(seed) seçilerek, genelde gerçek bir rastgele sayı olarak seçilir, daha sonra bu tohuma tekrar tekrar uygulanan algoritma ile yeni rastgele sayılar üretilebilir. Basit algoritmalarla oluşturulan dizilerde periyodu da kısa olur. Kompleks algoritmalarla rastgeleliğin periyodu arttırılabilir.
Rastgele bir sayı üreticisinde olması gereken özellikler:
- Üretilen sayılar olabildiğince üniform yani kendini tekrarlamayan bir dağılıma sahip olmalıdır.
- Üretim hızlı olmalıdır.
- Üretici program, bilgisayar belleğinde çok yer kaplamamalıdır.
- Üretici uzun bir periyoda sahip olmalıdır.
- Üretici, farklı bir dizi sayı da üretebilmeli veya bir dizi sayıyı yeniden üretebilmelidir.
- Yöntem sabit olarak sabit bir değer oluşturabilmek için bozulmamalıdır.
- matplotlib
- random (Seçilen ilk asal tohum için)
- matplotlib
- random (Seçilen ilk asal tohum için)