/*
* Fill and Generate
*
*/
template<class For, class T> void fill(For first, For last, const T& val);
template<class Out, class Size, class T> void fill_n(Out res, Size n, const T& val);
template<class For, class Gen> void generate(For first, For last, Gen g);
template<class Out, class Size, class Gen> void generate_n(Out res, Size n, Gen g);
/*
* Usage
*
*/
int v1[900];
int v2[900];
vector v3;
void f()
{
fill(v1,&v1[900],99); // set all elements of v1 to 99
generate(v2,&v2[900],Randint()); // set to random values
// output 200 random integers in the interval [0..99]:
generate_n(ostream_iterator<int>(cout),200,Urand(100));
fill_n(back_inserter(v3),20,99); // add 20 elements with the value 99 to v3
}