Haftalık C++ 20 – Ortaya Karışık Sayılar

Başlığın yeni bir C++ özelliği gibi durmadığının farkındayım, zaten değil 🙂 Ama yeni bazı API’lerden bahsediyor olacağız 😉

Ara sıra, küçük kod parçaları paylaşacağımdan bahsetmiştim. Bu yazı da onlardan birisi olacak ve çok da uzun olmayacak. Öncelikle, yazının çıkış noktasından bahsedeyim isterseniz. Kızım için basit bir oyun tasarlıyordum, oyun temelinde aslında ileri ve geriye doğru ritmik sayma ile ilgili aynı zamanda da, sayıları bulma ve dikkat de gerektiyor. Bu oyun için de ikiye iki ızgaraya, sayıları rastgele dağıtma ihtiyacı hasıl oldu. İşte aşağıdaki kod parçası tam da bu amaca hizmet etmek için. Gerçi ben bunu farklı bir dilde (Godot oyun motorunun GdScript ile kullandım, buna ilişkin de yakında bir yazıyı sizler ile paylaşacağım) kullandım ama meramımı anlatabilmişimdir 🙂

Gelelim kodumuza:

Kısaca izlediğimiz adımlara ve kullandığımız API’lere bir göz atalım:

  • Öncelikli olarak karıştırmak için kullanacağımız sayı kümesini oluşturuyoruz,
  • Sonra std::generate ile verilen konteynerlerin içeriğini jenerik bir şekilde, geçirilen son parametre ile dolduruyoruz. Bu API C++ 17 ile gelen bir API bu arada,
  • Son olarak da std::shuffle ile geçirilen konteynerin içeriğini yine geçirilen üçüncü parametre ışığında lineer zamanda karıştırır. Bu API de C++ 11 den beri sunulmakta.

Bu kısa yazımızın da sonuna geldik. Bir sonraki yazımda görüşmek dileğiyle. Bol kodlu günler.

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Bu site, istenmeyenleri azaltmak için Akismet kullanıyor. Yorum verilerinizin nasıl işlendiği hakkında daha fazla bilgi edinin.