gon2

stats.cpp

Jan 29th, 2018
148
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.12 KB | None | 0 0
  1. #include <iostream>
  2. #include <vector>
  3. #include <algorithm>
  4.  
  5. using namespace std;
  6.  
  7. void prenta(double midg, double dreifni) {
  8.   cout << "Miðgildi talnanna er " << midg << endl;
  9.   cout << "Dreifni talnanna er " << dreifni << endl;
  10. }
  11.  
  12. int main() {
  13.   vector<double> v;
  14.   double inntak;
  15.   double midg;
  16.   double summa = 0.0;
  17.   double medaltal;
  18.   double dreifniSumma = 0.0;
  19.   double dreifni;
  20.  
  21.   while (cin >> inntak) {
  22.     v.push_back(inntak); //færum inntakið aftast í vigurinn
  23.   }
  24.  
  25.   sort(v.begin(), v.end()); //röðum stökunum frá lægsta til hæsta
  26.  
  27.   int lengd = v.size(); //stakafjöldi vigursins
  28.  
  29.   if (lengd%2 == 0) { //ef slétt tala
  30.     midg = (v[lengd/2-1] + v[lengd/2]) / 2; //meðaltal stakanna í miðjunni
  31.   } else { //ef oddatala
  32.     midg = v[lengd/2]; //stakið í miðjunni
  33.   }
  34.  
  35.   for (double i : v) { //fyrir öll stök (i) í v
  36.      summa += i;
  37.   }
  38.  
  39.   medaltal = summa/lengd;
  40.  
  41.   for (int i=0; i<lengd; i++) {
  42.     dreifniSumma += ((v[i]-medaltal)*(v[i]-medaltal));
  43.   }
  44.  
  45.   dreifni = (1.0/lengd) * dreifniSumma;
  46.  
  47.   prenta(midg, dreifni); //sendum gildin í prenta fallið sem er efst
  48. }
Advertisement
Add Comment
Please, Sign In to add comment