serhatt123
Hectopat
- Katılım
- 1 Şubat 2020
- Mesajlar
- 110
Evet başlıkta dediğim gibi bunu bir şekilde yapmam lazım ama nasıl bir döngü kurarım bilemedim.
Vector size limitine göre bir rastgele sayı oluştur. Örnek vermek gerekirse Vector de 10 eleman var random sayı ile 0, 9 arası sayı al ve gelen index değerine göre elemanı çek.
rand()
fonskiyonu kullanarak random sayılar döndürebilirsiniz.#include <iostream>
#include <vector>
using namespace std;
int randomGenerator(const vector<int>& vec) {
if (vec.empty()) {
throw runtime_error("Vector ici bos!");
}
srand(time(0));
int randomIndex = rand() % vec.size();
return vec[randomIndex];
}
int main() {
vector<int> vectorlar = {1, 2, 3, 4, 5, 12,23, 43, 543, 6, -2, 32, 33, 333}; // burada inputla dinamik input ekleyebilirsin
int randomValue = randomGenerator(vectorlar);
cout << randomValue << endl;
return 0;
}
Geçici bir index oluştur aynı indexe eşitse tekrar random ile farklı bir index al.Tamam ama aynı eleman tekrar gelsin istemiyorum. Dediğin şekilde yaptım az önce 54 sayısı 4 kez çıktı.
Bu sitenin çalışmasını sağlamak için gerekli çerezleri ve deneyiminizi iyileştirmek için isteğe bağlı çerezleri kullanıyoruz.