Popular Posts

Showing posts with label Quartiles for Grouped Data.. Show all posts
Showing posts with label Quartiles for Grouped Data.. Show all posts

23 Jan 2014

Quartiles for Grouped Data.


# Statisrics with C++.

//Program to calculate the QUARTILE of given grouped data.

#include<iostream.h>
#include<iomanip.h>
#include<conio.h>
const SZ=100;
class Quart
{
  public : int F[SZ],LCF[SZ],LM[SZ],UL[SZ];
  int Tn,h,N;
  public : void QData();
  void QShow();
  void Quartile(int);

};
void Quart :: QData()
{
  cout<<"\nEnter total no. data : ";
  cin>>Tn;
  cout<<"\n\nEnter lower and upper limit of class: (ex. 0  10) : \n";
  for(int i=0;i<Tn;i++)
  {
     cout<<"\n  Class Number"<<i+1<<" : ";
     cin>>LM[i];
     cin>>UL[i];
  }
  cout<<"\n\nEnter frequency for entered classes : \n";
  for(i=0;i<Tn;i++)
  {
    cout<<"\n Freq. for class "<<LM[i]<<"-"<<UL[i]<<" : ";
    cin>>F[i];
    LCF[i] = F[i];
  }
  for(i=1;i<Tn;i++)
  {
    LCF[i]=LCF[i-1]+LCF[i];
  }
}

void Quart :: QShow()
{
  cout<<"\n\nYour Data : \n\n";
  cout<<"\nTotalNumbr of Data : "<<Tn;
  cout<<"\n\n  Class  \t Frequency\t less than c. freq.\n";
  for(int i=0;i<Tn;i++)
  { cout<<"\n  "<<LM[i]<<"-"<<UL[i]<<"\t\t"<<F[i]<<"\t\t"<<LCF[i]; }
}

void Quart :: Quartile(int a)
{
   int c,d,l,u,f,i=0;
   N=LCF[Tn-1];
   float mdc=(float)(N*a)/4;
   while(i<Tn)
   {
     if(LCF[i]>mdc)
     {
       d=LCF[i];
       c=LCF[i-1];
       f=F[i];
       l=LM[i];
       u=UL[i];
       h=u-l;
       break;
     }
     i++;
   }

   cout<<"\n\n";

  /*
          ( These are to check the values which we are going to put in the quartile formulae... )

   cout<<"\nClass Interval (i.e h) = "<<h;
   cout<<"\nSum of all Freq.s (i.e N) = "<<N;
   cout<<"\nTo find median class ((N*a)/4) = "<<mdc;
   cout<<"\nFrequency of median class (f)= "<<f;
   cout<<"\nLower limit of median class (l)= "<<l;
   cout<<"\nUpper limit of median class (u)= "<<u;
   cout<<"\nLess-than-cf just before the ltcf of median class (i.e C) = "<<c;

   cout<<"\n\nMedian Class : \n\n";
   cout<<"\n-----------------------------------\n";
   cout<<"\n Class \t Frequency \t Less than CF.\n";
   cout<<"\n "<<l<<"-"<<u<<"\t\t"<<f<<"\t\t "<<d ;
   cout<<"\n------------------------------------\n";

  */

   float QT =(float) (l+(h*(mdc-c)/f));
   cout<<" = "<<setprecision(2)<<QT<<"\n";
}
void main()
{
  Quart q;
  clrscr();
  q.QData();
  clrscr();
  q.QShow();
  cout<<"\n\nFirst Quartile = Q1 ";
  q.Quartile(1);
  cout<<"\nSecond Quartile= Q2 ";
  q.Quartile(2);
  cout<<"\nThird Quartile = Q3 ";
  q.Quartile(3);
  getche();
}


---------------------------------------------------------------------------------------------------------------------

OUTPUT :




---------------------------------------------------------------------------------------------------------------------

Please comment if there is any error or corrections...


Happy Coding!