Advertisement
Guest User

pls spag

a guest
May 25th, 2015
260
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.68 KB | None | 0 0
  1.  
  2. #include <iostream>
  3. #include <vector>
  4. #include <list>
  5. #include <iterator>
  6. #include <algorithm>
  7.  
  8. using namespace std;
  9.  
  10. // Define functions even, odd, lt10, gt10, alwaystrue
  11. // All these functions returns bool and have one int parameter
  12. // Meanings are obvious
  13.  
  14. bool even(int n) {return n%2==0;}
  15. bool odd(int n) {return n%2!=0;}
  16. bool lt10(int n) {return n>10;}
  17. bool gt10(int n) {return n<10;}
  18. bool alwaystrue(int n) {return true;}
  19.  
  20.  
  21.  
  22. void main()
  23. {
  24. int tab[] = { 2, 5, 8, 3, 12, 15, 17, 23, 3, 26, 30, 5, 18, 22, 1 };
  25. for (int i:tab)
  26. cout << i << "," ;
  27. cout<<endl<<endl;
  28.  
  29. vector<int> v, v_even, v_odd;
  30. back_insert_iterator<vector<int>> iitv(v);
  31. //auto iitv = back_inserter(v);
  32.  
  33. // Define back inserters for vectors v_even and v_odd
  34. auto iitve = back_inserter(v_even);
  35. back_insert_iterator<vector<int>> iitvo(v_odd);
  36.  
  37. copy(tab, tab+sizeof(tab)/sizeof(int), iitv);
  38. for (int i:v)
  39. cout << i << "," ;
  40. cout<<endl<<endl;
  41.  
  42. // Fill vector v_even with proper elements of vevtor v,
  43. // use copy_if algorithm and even function
  44. // List v_even elements to screen
  45.  
  46. copy_if(v.begin(), v.back(), iitve, even);
  47. for(int i:v_even)
  48. cout<< i <<",";
  49.  
  50.  
  51.  
  52. // Fill vector v_odd with proper elements of vevtor v,
  53. // use copy_if algorithm and odd function
  54. // List v_odd elements to screen
  55.  
  56. copy_if(v.begin(), v.back(), iitvo, odd);
  57. for(int i: v_odd)
  58. cout<<i<<",";
  59.  
  60.  
  61. cout << count_if(v.begin(),v.end(),lt10) << endl << endl ;
  62. cout << count_if(v.begin(),v.end(),gt10) << endl << endl ;
  63. cout << count_if(v.begin(),v.end(),alwaystrue) << endl << endl ;
  64.  
  65. // Find max and min element of v vector
  66. // use proper algorithms
  67.  
  68. cout<<"Max element of vector v: "<<*max_element(v.begin(), v.back() )<<endl;
  69. cout<<"Min element of vector v: "<<*min_element(v.begin(), v.back() )<<endl;
  70.  
  71. vector<int> v1(v);
  72. vector<int> v2(v);
  73.  
  74. /* auto it=v1.begin();
  75. while ( it!=v1.end() )
  76. if ( even(*it) )
  77. it=v1.erase(it);
  78. else
  79. ++it;
  80. for (int i:v1)
  81. cout << i << "," ;
  82. cout<<endl<<endl;
  83.  
  84. auto itr = remove_if(v2.begin(),v2.end(),even);
  85. for (int i:v2)
  86. cout << i << "," ;
  87. cout<<endl<<endl;
  88.  
  89. v2.erase(itr,v2.end());
  90. for (int i:v2)
  91. cout << i << "," ;
  92. cout<<endl<<endl;*/
  93.  
  94. // Sieve of Eratosthenes
  95. // Find all prime numbers less than 1000
  96.  
  97. list<int> numbers;
  98. list<int> prime;
  99.  
  100.  
  101. cout<<"Prime numbers less than 1000"<<endl;
  102. for ( list<int>::iterator it=prime.begin() ; it!=prime.end() ; ++it )
  103. cout<<" "<<(*it);
  104. cout<<endl<<endl;
  105. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement