Exemplo n.º 1
0
	std::vector<int> demoAccessingMemberFromLambda() {
		std::vector<int> v;
		generate_n(back_inserter(v),10,[=] {
			return ++x, x*x; // member x can be changed
		});
		return v;
	}
Exemplo n.º 2
0
int main(int argc, char** argv)
{
	//Generator obj(4);

	std::deque<int> mydeque(5);
	std::generate(mydeque.begin(), mydeque.end(), Generator(4));

	std::ostream_iterator<int> out_it (std::cout, "; ");
    copy (mydeque.begin(), mydeque.end(), out_it);
    std::cout << std::endl;

    std::vector<int> s1(5);
    copy(mydeque.begin(), mydeque.end(), s1.begin());
    copy (s1.begin(), s1.end(), out_it);
    std::cout << std::endl;

    mydeque.clear();

    std::vector<int> s2(10);
    std::generate(s2.begin(), s2.end(), Generator(2));
    copy (s2.begin(), s2.end(), out_it);
    std::cout << std::endl;

    std::vector<int> s3;
    //generate_n 
    std::back_insert_iterator<std::vector<int> > it (s3);
    generate_n(it, 6, Generator(3));

    copy (s3.begin(), s3.end(), out_it);
    std::cout << std::endl;

    std::cout << "s1 contenu dans s2 : " << (includes(s1.begin(), s1.end(), s2.begin(), s2.end()) ? "true" : "false") << std::endl;

	return 0;
}
Exemplo n.º 3
0
std::string
rand_alnum_str (std::string::size_type sz)
{
    std::string s;
    s.reserve  (sz);
    generate_n (std::back_inserter(s), sz, rand_alnum);
    return s;
}
Exemplo n.º 4
0
/*Generate multifactorials to 9

  Nigel_Galloway
  November 14th., 2012.
*/
int main(void) {
   for (int g = 1; g < 10; g++) {
     int v[11], n=0;
     generate_n(std::ostream_iterator<int>(std::cout, " "), 10, [&]{n++; return v[n]=(g<n)? v[n-g]*n : n;});
     std::cout << std::endl;
   }
   return 0;
}
Exemplo n.º 5
0
void genPrimes(){
    generate_n (primes, LIMIT, stepUp);
    for (int p = 2; p*p <= LIMIT; p++){
        for (int i = 2; i <= LIMIT / p; i++){
            primes[(i*p)-2] = 0;
        }
    }
}
Exemplo n.º 6
0
std::vector<int> vectorwithsquares_lambda(){
	std::vector<int> v;
	int x{}; // memory for lambda below
	generate_n(std::back_inserter(v),10,[&x]{
		++x; return x*x;
	});
	return v;
}
Exemplo n.º 7
0
std::vector<int> vectorwithsquares_mutable_lambda(){
	std::vector<int> v;
	int x{}; // memory for lambda below
	generate_n(std::back_inserter(v),10,[x]() mutable {
		return ++x , x*x; // mutable allows change
	});
	return v;
}
Exemplo n.º 8
0
std::wstring wrandomstr(std::wstring::size_type sz) {
  std::wstring s;
  s.reserve(sz);
  //need to have different seeds to avoid DDOS attack
  unsigned int seed = static_cast<unsigned int>(
      qi::SystemClock::now().time_since_epoch().count()/1000);
  srand(seed);
  generate_n(std::back_inserter(s), sz, rand_alnum);
  return s;
}
Exemplo n.º 9
0
 std::string generate_random_string (size_t length) {
     auto generate_random_char = [] () -> char {
         static const char Charset[] = "0123456789"
         "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
         "abcdefghijklmnopqrstuvwxyz";
         const size_t max_index = (sizeof(Charset) - 1);
         return Charset[rand() % max_index];
     };
     std::string str(length, 0);
     generate_n(str.begin(), length, generate_random_char);
     return str;
 }
Exemplo n.º 10
0
Arquivo: main.cpp Projeto: CCJY/coliru
int main() {
    std::mt19937 mt;
    std::uniform_int_distribution<> dist;
    
    std::vector<int> v;
    generate_n(back_inserter(v), 10000, bind(dist,ref(mt)));

    nth_element(begin(v), begin(v) + 10, end(v));
    v.erase(begin(v) + 10, end(v));
    
    std::cout << "The ten smallest values out of 10,000 values generated: ";
    copy(begin(v), end(v), std::ostream_iterator<int>(std::cout, " "));
}
Exemplo n.º 11
0
int main()
{
        list< int, allocator > ilist( 10 );
        void (*pfi)( int ) = print_elements;

	generate_n( ilist.begin(), ilist.size(), even_by_twos() );

	// generates:
	// generate_n with even_by_twos():
	// 2 4 6 8 10 12 14 16 18 20 

	cout << "generate_n with even_by_twos():\n";
	for_each( ilist.begin(), ilist.end(), pfi ); cout << "\n";

	generate_n( ilist.begin(), ilist.size(), even_by_twos( 100 ) );

	// generates:
	// generate_n with even_by_twos( 100 ):
	// 102 104 106 108 110 112 114 116 118 120

	cout << "generate_n with even_by_twos( 100 ):\n";
	for_each( ilist.begin(), ilist.end(), pfi );
}
Exemplo n.º 12
0
std::vector<std::vector<Word>> prepareLines(std::vector<std::vector<Word>> lines)
{
	std::vector<std::vector<Word>> preparedLines {};

	for_each(lines.begin(), lines.end(), [&preparedLines](std::vector<Word> line) {
		generate_n(std::back_inserter(preparedLines), line.size(), [&line] {
			std::rotate(line.begin(), line.begin() + 1, line.end());

			return line;
		});
	});

	std::sort(preparedLines.begin(), preparedLines.end());

	return preparedLines;
}
vector<double>  MBO_Object::LevyFlight(int StepSzie, int dim)
{
	// Allocate matrix for solutions
	vector<double>  delataX(dim);
	vector<double>  fx(StepSzie);

	// Loop over each dimension
	for (int i = 0; i < dim; ++i)
	{
		generate_n(fx.begin(), fx.size(),
			[=]()
		{
			return tan(pi*random(0.0, 1.0));
		});
		delataX[i] = sum(fx);
	}

	return delataX;
}
void generate_find_demo(){
	std::vector<int> v{};
	srand(time(0));
	generate_n(back_inserter(v),100,[]{return rand()%100;});
	auto zero_it=find(begin(v),end(v),0);
	if (zero_it == end(v)){
		std::cout << "\nno zero found \n";
	} else {
		std::cout << "\nfound zero at position:"
				<< distance(begin(v),zero_it)<<'\n';
	}
	auto odd=find_if(begin(v),end(v),[](auto x){return x%2;});
	if (odd == end(v)){
		std::cout << "no odd number found\n";
	} else {
		std::cout << "found odd number:" << *odd
				<< "\nat position:"<<distance(begin(v),odd)<< '\n';
	}
	std::cout << count(begin(v),end(v),42)<<" times 42\n";
	std::cout << count_if(begin(v),end(v),
			[](auto x){return 0==(x%2);})<<" even numbers\n";
}
int main(){
	std::vector<X> v; // geht nicht: v(10) -> braucht X::X()
	generate_n(std::back_inserter(v),10,Initializer(100));
	copy(v.begin(),v.end(),std::ostream_iterator<X>(std::cout,", "));
}
Exemplo n.º 16
0
std::string rand_num_str(std::string::size_type size) {
    std::string s;
    s.reserve(size);
    generate_n(std::back_inserter(s), size, rand_num);
    return s;
}
Exemplo n.º 17
0
 std::vector<T> gen_n(size_t count, Generator generator) {
     std::vector<T> result;
     result.reserve(count);
     generate_n(std::back_insert_iterator<std::vector<T> >(result), count, generator);
     return result;
 }
Exemplo n.º 18
0
 /** the correlation of timeserieses in range 0..scope */
 inline TimeSeriesDigit correlation(const TimeSeriesDigit& ts1, const TimeSeriesDigit& ts2, int scope) {
     TimeSeriesDigit out;
     CalcCorrelationFunctor gen(ts1, ts2, ts1.getAvg(), ts2.getAvg(), ts1.getSigma(), ts2.getSigma() );
     generate_n(back_inserter(out), scope, gen );
     return out;
 }
Exemplo n.º 19
0
int main(void)
{
  Distribution* rng;
  Pstd_mem ptr;
  generate_n(rng->*ptr); // { dg-error "non-static member" } 
}