Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <string>
- #include <algorithm>
- #include <cstdlib>
- #include <vector>
- void print(std::vector <double> const &a)
- {
- std::cout << "The vector elements are : ";
- for(size_t i=0; i < a.size(); i++)
- std::cout << a.at(i) << ' ';
- }
- std::string user_input()
- {
- std::string x="";
- std::cin >> x;
- return x;
- }
- int tutorial()
- {
- std::vector<double> numbers;
- const double meter=1;
- const double inch=0.0254;
- const double centimeter=0.01;
- const double feet=0.3048;
- double number=0;
- std::string raw_number="";
- while(true)
- {
- number=0;
- std::cout << "Please enter a length and it's unit, like 12cm. Accepted units are m, cm, in, ft.\n";
- raw_number=user_input();
- if (raw_number=="|")
- {
- break;
- }
- if (raw_number.find("cm")!=std::string::npos)
- {
- number=std::stod(raw_number)*centimeter;
- }
- else if(raw_number.find("m")!=std::string::npos)
- {
- number=std::stod(raw_number)*meter;
- }
- else if(raw_number.find("in")!=std::string::npos)
- {
- number=std::stod(raw_number)*inch;
- }
- else if(raw_number.find("ft")!=std::string::npos)
- {
- number=std::stod(raw_number)*feet;
- }
- else
- {
- std::cout << "Accepted units are m,cm,in and ft, enter it like \"12cm\"\n";
- }
- numbers.push_back(number);
- }
- sort(numbers.begin(), numbers.end());
- print(numbers);
- return 0;
- }
- int main()
- {
- tutorial();
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement