Advertisement
Guest User

vector calculator need help

a guest
Apr 16th, 2014
42
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 2.07 KB | None | 0 0
  1. // main.cpp
  2. // calculator using vectors
  3.  
  4. #include <iostream>
  5. #include <vector>
  6. #include <stdexcept>
  7.  
  8. typedef std::vector<int>::size_type vc_size;
  9.  
  10. int add(std::vector<int> v_add);
  11. int sub(std::vector<int> v_sub);
  12. int mult(std::vector<int> v_mult);
  13. int div(std::vector<int> v_div);
  14. void p_info();
  15. void user_info();
  16.  
  17. int main(){
  18.     p_info();
  19.     user_info();
  20.     return 0;
  21. }
  22.  
  23. int add(std::vector<int> v_add){
  24.     vc_size vector_size = v_add.size();
  25.     int add_result = v_add[0];
  26.  
  27.     for(int i = 1; i < vector_size; i++){
  28.         add_result += v_add[i];
  29.     }
  30.  
  31.     return add_result;
  32. }
  33.  
  34. int sub(std::vector<int> v_sub){
  35.     vc_size vector_size = v_sub.size();
  36.     int sub_result = v_sub[0];
  37.  
  38.     for(int i = 1; i < vector_size; i++){
  39.         sub_result -= v_sub[i];
  40.     }
  41.  
  42.     return sub_result;
  43. }
  44.  
  45. int mult(std::vector<int> v_mult){
  46.     vc_size vector_size = v_mult.size();
  47.     int mult_result = v_mult[0];
  48.  
  49.     for(int i = 1; i < vector_size; i++){
  50.         mult_result *= v_mult[i];
  51.     }
  52.  
  53.     return mult_result;
  54. }
  55.  
  56. int div(std::vector<int> v_div){
  57.     vc_size vector_size = v_div.size();
  58.     int div_result = v_div[0];
  59.  
  60.     for(int i = 1; i < vector_size; i++){
  61.         div_result /= v_div[i];
  62.     }
  63.  
  64.     return div_result;
  65. }
  66.  
  67. void p_info(){
  68.     std::cout << "Vector calculating program" << std::endl;
  69.     std::cout << "Calculate: ";
  70. }
  71.  
  72. void user_info(){
  73.     char user_symbol;
  74.     char user_quit = 'q';
  75.     int user_value1, user_value2;
  76.     std::vector<int> v;
  77.  
  78.     while(!(std::cin >> user_quit)){
  79.         std::cin >> user_value1 >> user_symbol >> user_value2;
  80.         v.push_back(user_value1);
  81.         v.push_back(user_value2)
  82.     }
  83.  
  84.     switch(user_symbol){
  85.         case '+':
  86.             std::cout << add(v);
  87.             break;
  88.         case '-':
  89.             std::cout << sub(v);
  90.             break;
  91.         case '*':
  92.             std::cout << mult(v);
  93.             break;
  94.         case '/':
  95.             std::cout << div(v);
  96.             break;
  97.         default:
  98.             throw std::runtime_error("Error");
  99.     }
  100. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement