C++’ta Belirli Sayıları Engellemeyle Rastgele Sayı Üretme
Rastgele sayı üretme, yazılım geliştirmede yaygın bir görevdir. Ancak, belirli sayıların üretilmesini engellemek istediğimiz durumlar olabilir. Bu makale, C++’ta rastgele sayı üretme işleminde belirli sayıları engelleme tekniklerini inceleyecektir.
Standart Kütüphane İşlevleri
C++ Standart Kütüphanesi, std::rand()
ve std::srand()
işlevlerini içerir. Bu işlevler, rastgele sayılar üretmek için kullanılır. Ancak, bu işlevler belirli sayıları engelleme özelliği sunmaz.
Üçüncü Taraf Kütüphaneleri
Belirli sayıları engelleme özelliği sunan birkaç üçüncü taraf kütüphane mevcuttur. Bu kütüphanelerden bazıları şunlardır:
El İle Engelleme
Üçüncü taraf kütüphaneleri kullanmak istemiyorsak, belirli sayıları el ile engelleyebiliriz. Bu, rastgele sayı üreten işlevi tekrar tekrar çağırmayı ve istenmeyen sayılar üretildiğinde bunları atlamayı içerir.
cpp
int generate_random_number(int min, int max, std::vector<int> excluded_numbers) {
int random_number;
do {
random_number = rand() % (max - min + 1) + min;
} while (std::find(excluded_numbers.begin(), excluded_numbers.end(), random_number) != excluded_numbers.end());
return random_number;
}
Örnek Kullanım
Aşağıdaki kod parçası, 1 ile 10 arasında rastgele bir sayı üretir ve 3 ve 7 sayılarını engeller:
“`cpp
include
include
int main() {
std::vector
int random_number = generate_random_number(1, 10, excluded_numbers);
std::cout << “Rastgele sayı: ” << random_number << std::endl;
return 0;
}
“`
Sonuç
C++’ta belirli sayıları engellemeyle rastgele sayı üretmek, standart kütüphane işlevleri, üçüncü taraf kütüphaneleri veya el ile engelleme teknikleri kullanılarak yapılabilir. Uygun teknik, belirli gereksinimlere ve performans hususlarına bağlıdır.