64 std::list<int, std::allocator<int> > aList;
66 std::generate_n (std::inserter (aList, aList.begin ()), 6,
iotaGen (1));
67 std::cout <<
"Original list: ";
68 std::copy (aList.begin (), aList.end (),
ostrm_iter_type (std::cout,
" "));
70 std::cout << std::endl;
73 std::vector<int, std::allocator<int> > aVec (6);
75 std::transform (aList.begin (), aList.end (), aVec.begin (),
square);
76 std::cout <<
"After squaring: ";
77 std::copy (aVec.begin (), aVec.end (),
ostrm_iter_type (std::cout,
" "));
79 std::cout << std::endl;
82 std::transform (aVec.begin (), aVec.end (), aVec.begin (),
square);
83 std::cout <<
"After squaring again: ";
84 std::copy (aVec.begin (), aVec.end (),
ostrm_iter_type (std::cout,
" "));
86 std::cout << std::endl;
89 std::vector<int, std::allocator<int> > cubes (6);
91 std::transform (aVec.begin (), aVec.end (), aList.begin (), cubes.begin (),
92 std::divides<int> ());
93 std::cout <<
"After division: ";
94 std::copy (cubes.begin (), cubes.end (),
ostrm_iter_type (std::cout,
" "));
96 std::cout << std::endl;
104 std::vector<int, std::allocator<int> > aVec (5);
105 std::generate (aVec.begin (), aVec.end (),
iotaGen (1));
108 std::cout <<
"Partial sums examples" << std::endl;
109 std::cout <<
"Partial sums : ";
110 std::partial_sum (aVec.begin (), aVec.end (),
113 std::cout << std::endl;
116 std::cout <<
"Partial products: ";
117 std::partial_sum (aVec.begin (), aVec.end (),
120 std::cout << std::endl;
128 std::vector<int, std::allocator<int> > aVec (5);
129 std::generate (aVec.begin (), aVec.end (),
iotaGen (1));
132 std::cout <<
"Adjacent Differences examples" << std::endl;
133 std::cout <<
"Adjacent Differences : ";
134 std::adjacent_difference
136 std::cout << std::endl;
139 std::cout <<
"Adjacent sums: ";
140 std::adjacent_difference (aVec.begin (), aVec.end (),
144 std::cout << std::endl;
150 std::cout <<
"STL generic algorithms -- that transform sequences"
157 std::cout <<
"End generic transform algorithms example" << std::endl;
std::ostream_iterator< int, char, std::char_traits< char > > ostrm_iter_type
void partial_sum_example()
std::ostream_iterator< int, char, std::char_traits< char > > ostrm_iter_type
void adjacent_difference_example()