2017-07-16 4 views
-3

でループ毎にアレイからn個の要素を選択します私のコードです。はradomly入力は、アレイ内のユーザと店舗を形成した後、4</p>以下 <p>のグループにランダム要素を裏面印刷得ることを私は、C++コードを記述しようとしているC++

#include<iostream> 
    using namespace std; 
    int main(){ 
     int i; int arr[5]; 
     cout << "Enter some numbers" << endl; 
     for(i=0; i<5; i++){ 
      cin >> arr[i]; 
     } 


     for(int k=0; k<5; k++){ 
       cout << arr[k]; 
       cout << " "; 
     } 
     cout << " " << endl; 
} 
+0

を返すことです1.あなたの質問は何ですか? 2.両方の 'for'ループに*未定義の動作*があります(範囲外の配列にアクセスしています) – UnholySheep

+1

なぜCで質問にタグを付けましたか? – pmg

+0

@pmgそれはC++ではないc。 –

答えて

2

あなただけの4つの以上の数字のプールから4個の乱数を取得したい場合は、それを行うための簡単な方法は、ちょうどすべてのエントリを毎回シャッフルし、最初の4

+0

シャッフルを実装するにはどうしたらいいですか? –

+0

@NtirpangLouis: "Fisher-Yates shuffle algorithm"を検索してください。たくさんのリンクを表示する必要があります。 [Wikipedia](https://en.wikipedia.org/wiki/Fisher%E2%80%93Yates_shuffle)。 –

+2

@NtirpangLouis割り当てによって禁止されていない場合は、[std :: shuffle'を使用してください](http://en.cppreference.com/w/cpp/algorithm/random_shuffle) – user4581301

関連する問題