Advertisement
Guest User

Untitled

a guest
Jan 16th, 2019
77
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.48 KB | None | 0 0
  1. #include<iostream>
  2. #include<vector>
  3.  
  4. using namespace std;
  5.  
  6. double mean(vector<double>);
  7. double median(vector<double>);
  8.  
  9. vector<double> iSort(vector<double>);
  10.  
  11. int main() {
  12.     vector<double> nums;
  13.     while(true) {
  14.         double num;
  15.         cout << "Enter a number. (Input -1 to stop.)\n> ";
  16.         cin >> num;
  17.         if (num == -1) {
  18.             break;
  19.         } else {
  20.             nums.push_back(num);
  21.         }
  22.     }
  23.     nums = iSort(nums);
  24.     double avg = mean(nums);
  25.     double med = median(nums);
  26.     cout << "Mean: " << avg << endl;
  27.     cout << "Median: " << med << endl;
  28. }
  29.  
  30. double mean(vector<double> nums) {
  31.     double amount = nums.size();
  32.     double total;
  33.     for (int i = 0;i < amount;i++) {
  34.         total += nums[i];
  35.     }
  36.     return total/amount;
  37. }
  38.  
  39. double median(vector<double> nums) {
  40.     int middle = nums.size()/2;
  41.     if (nums.size() % 2 == 0) {
  42.         //Is somewhere between
  43.         double ans = (nums[middle] + nums[middle-1])/2;
  44.         return ans;
  45.     } else {
  46.         //Returns the actual middle
  47.         return nums[middle];
  48.     }
  49. }
  50.  
  51.  
  52. //insertion sort
  53. vector<double> iSort(vector<double> integers) {
  54.     int siz = integers.size();
  55.     int current, j;
  56.     for (int i = 1; i < siz; i++) {
  57.         current = integers[i];
  58.         j = i-1;
  59.         while (j >= 0 && integers[j] > current) {
  60.             integers[j+1] = integers[j];
  61.             j = j-1;
  62.         }
  63.         integers[j+1] = current;
  64.     }
  65.     return integers;
  66. };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement