2017-02-07 9 views
0

私は、ユーザーの入力をランダム化したいと考えています。 ユーザーが「1234567890」と入力した場合のように数字のセットを無作為化する方法

出力は「5684319027」 のようになります。数字はランダム化されているため、任意の乱数です。

したがって、私はどのようにユーザーの入力をランダム化しますか?

+3

使用すると、[ 'のstd :: shuffle'](http://www.cplusplus.com/reference/algorithm/shuffle/) – qxz

+0

@qxzアイムのnoobのビットだから、私はそれをコードに入れますか?最初、入力の前か後? – Akuhyo

+0

入力を文字列として受け取ったら、文字列を再配置する 'std :: shuffle'を使用することができます。次に、あなたが必要とするもののために文字列を使用します。私は答えを作ります – qxz

答えて

0

std::shuffleを使用すると、ほぼすべての順序構造の要素の順序をランダム化できます。 std::stringでこれを使用すると、個々の文字を並べ替えることができます。ここでは使用例です:

// at the top of your file 
#include <algorithm> 

// in your main code 
std::string str; // define a string variable 
std::cin >> str; // get user input into the string 

// shuffle the string with a default random engine 
std::shuffle(str.begin(), str.end(), std::default_random_engine(std::random_device{}())); 

// use the now-shuffled string... 
関連する問題