Guest User

Untitled

a guest
Feb 16th, 2019
90
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.22 KB | None | 0 0
  1. #include "remove_where.h"
  2. #include <vector>
  3. #include <iostream>
  4. #include <cstdlib>
  5.  
  6. template <typename T>
  7. void PrintVector(const std::vector<T>& vec)
  8. {
  9. std::cout << "-----" << std::endl;
  10. for(const auto& x : vec)
  11. {
  12. std::cout << x << std::endl;
  13. }
  14. }
  15.  
  16. int main(int argc, char* argv[])
  17. {
  18. if(argc < 3)
  19. {
  20. std::cout << "Usage: " << argv[0] << " (gt|lt|ge|le|ne|eq) operand N N N N ..." << std::endl;
  21. return 1;
  22. }
  23.  
  24. std::vector<int> vec;
  25. int operand = atoi(argv[2]);
  26. std::string oper(argv[1]);
  27.  
  28. for(int i = 3; i < argc; ++i)
  29. {
  30. vec.push_back(atoi(argv[i]));
  31. }
  32.  
  33. PrintVector(vec);
  34.  
  35. if(oper == "gt")
  36. {
  37. RemoveWhere(vec) > operand;
  38. }
  39. else if(oper == "lt")
  40. {
  41. RemoveWhere(vec) < operand;
  42. }
  43. else if(oper == "ge")
  44. {
  45. RemoveWhere(vec) >= operand;
  46. }
  47. else if(oper == "le")
  48. {
  49. RemoveWhere(vec) <= operand;
  50. }
  51. else if(oper == "eq")
  52. {
  53. RemoveWhere(vec) == operand;
  54. }
  55. else if(oper == "ne")
  56. {
  57. RemoveWhere(vec) != operand;
  58. }
  59. else
  60. {
  61. std::cout << "Operator " << oper << " not recognized." << std::endl;
  62. return 1;
  63. }
  64.  
  65. PrintVector(vec);
  66.  
  67. return 0;
  68. }
Add Comment
Please, Sign In to add comment