私は、特定の範囲(例えば:1000,10000など)のシャッフル整数の複数のファイル(例えば100)を生成しようとしています。これは私が今まで試したコードです与えられた範囲のシャッフルされた整数の複数のファイルを生成するC++
// random_shuffle example
#include <iostream> // std::cout
#include <algorithm> // std::random_shuffle
#include <vector> // std::vector
#include <ctime> // std::time
#include <cstdlib> // std::rand, std::srand
#include <fstream>
// random generator function:
int myrandom (int i) { return std::rand()%i;}
int main(){
std::srand (unsigned (std::time(0)));
std::vector<int> myvector2;
// For creating 10 different shuffled files
for(int j=0;j<10;j++){
// set some values:
for (int i=1; i<=10000; ++i) myvector2.push_back(i);
// using built-in random generator:
std::random_shuffle (myvector2.begin(), myvector2.end());
// using myrandom:
std::random_shuffle (myvector2.begin(), myvector2.end(), myrandom);
// print out content:
std::cout << "Data Shuffled:";
// put content in out file
std::ofstream f2("out.txt");
for (std::vector<int>::iterator it=myvector2.begin(); it!=myvector2.end(); ++it)
f2<< *it <<'\n';
}
return 0;
}
ファイル 'out.txt'は上書きされ、私はただ1つのファイルで終わります。各ファイルに異なるシャッフル整数のセットを持つ複数のファイルを作成するにはどうすればよいですか?
は、あなたが同じファイル名の各時間のstd :: ofstreamのF2( "out.txtを")を使用している
ファイルに乱数を書き込んでいても問題ありませんか?そうでない場合は、問題の中核に近づくためにコードを減らす必要があります。また、他の人がそれを受け取りコンパイルできるように、コードを完成させてください。それをフォーマットして、他の人がそれを読んで理解できるようにしてください。それが立てば、あなたの質問は話題にはなりません。 @UlrichEckhardt。 –
私の質問がなぜ話題になっているのか理解できますか? –
@NivethaMahalakshmi「[最小限の、完全で検証可能なサンプルの作成方法(http://stackoverflow.com/help/mcve)」のヘルプセクションを参照してください。 – pjs