#include lt;iostreamgt;#include lt;algorithmgt;#include lt;functionalgt;#include lt;iteratorgt;#include lt;vectorgt;
templatelt; typename _T1, typename _T2 = int gt;void print(_T1 amp; data){ std::copy(data.begin(), data.end(), std::ostream_iteratorlt; _T2 gt;(std::cout, " ")); std::cout lt;lt; std::endl;}
templatelt; typename Tgt;void replace_sign(T begin, T end){ for (T iter = begin; iter != end; iter++) { if (*iter lt;= 0) *iter = 0; else *iter = 1; }}
int main(void){ std::vectorlt; int gt; data = {-2, 2, 0, 9 -5, 8, 0, 10, -8}; print(data); replace_sign(data.begin(), data.end()); print(data);
return 0;}