#include<iostream>
using std::cout;
using std::endl;
#include<algorithm>
#include<vector>
#include<iterator>
char nextLetter();
int main()
{
std::vector< char > chars( 10 );
std::ostream_iterator< char > outputIt( cout, " " );
std::fill( chars.begin(), chars.end(), '5' );
cout<<"Vector chars after filling with 5s:/n";
std::copy( chars.begin(), chars.end(), outputIt );
std::fill_n( chars.begin(), 5, 'A' );
cout<< "/n/nVector chars after filling five elements"
<<" with As:/n";
std::copy( chars.begin(), chars.end(), outputIt );
std::generate( chars.begin(), chars.end(), nextLetter );
cout<<"/n/nVector chars after generating letters A-J:/n";
std::copy( chars.begin(), chars.end(), outputIt );
std::generate_n( chars.begin(), 5, nextLetter );
cout<<"/n/nVector chars after generating K-O for the"
<<" first five elements:/n";
std::copy( chars.begin(), chars.end(), outputIt );
cout<<endl;
return 0;
}
char nextLetter()
{
static char letter = 'A';
return letter++;
}