【发布时间】:2016-03-27 14:36:12
【问题描述】:
我正在尝试为特定范围(例如:1000、10000 等)生成多个混洗整数文件(例如 100)。这是我到目前为止尝试过的代码
// 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”被覆盖,我最终只得到一个文件。如何创建多个文件,每个文件中都有不同的洗牌整数集?
谢谢
【问题讨论】:
-
将随机数写入文件是否重要?如果没有,您将需要减少代码以更接近问题的核心。另外,请把代码完整,以便其他人可以拿来编译。并对其进行格式化,以便其他人可以阅读和理解它。就目前而言,您的问题是题外话。
-
@UlrichEckhardt 。你能帮我理解为什么我的问题听起来离题吗?
-
@NivethaMahalakshmi 你应该阅读“How to create a Minimal, Complete, and Verifiable example”的帮助部分。