Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

// C++ // Program used to gather statistical data about the number of movies col

ID: 3627022 • Letter: #

Question

// C++

// Program used to gather statistical data about the number of movies college students see in a month.

// Program will calculate and print the average, median, and mode of the values entered.

#include <iostream>

using namespace std;

void getinfo(int*, int);
void sort(int [], int);
double average(int*, int);
double median(int*, int);
int get_mode(int*, int);

int main()
{ int*array;
int num;
int mode,i,range;
float avg;
cout<<"Enter number of students? ";
cin>>num;
while(num<=0)
{cout<<"Invalid Entry ";
cout<<" Enter number of students? ";
cin>>num;
}
array = new int[num];
getinfo(array, num);
cout<<" The array is: ";
for(i=0;i<num;i++)
cout<<"Student "<<i+1<<" saw "<<*(array+i)<<" movies. ";
sort(array, num);
cout << " The median is "<<median(array, num) << endl;
cout << "The average is "<<average(array, num) << endl;
mode = get_mode(array, num);
if (mode == -1)
cout << "No mode. ";
else
cout << "The mode is " << mode << endl;
delete [] array;
system("pause");
return 0;
}
void getinfo(int a[], int n)
{int i;
for (i= 0;i<n;i++)
{do
{cout<<"How many movies did student "<<(i+1)<< " see? ";
cin >> a[i];
if(a[i]<0||a[i]>100)
cout<<"Invalid entry, Please enteer a value between 0 and 100 ";
}while(a[i]<0||a[i]>100);
}
}
double average(int a[], int num)
{ int tot = 0,i;
double avg;
for (i= 0;i<num; i++)
tot += a[i];
avg=(double)tot/num;
return avg;
}

void sort(int a[], int n)
{ int i,j,t;
for(i=0;i<n-1;i++)
for(j=i;j<n;j++)
if(a[i]>a[j])
{t=a[i];
a[i]=a[j];
a[j]=t;
}
}
double median(int* a, int n)
{ int m1,m2;
if (n%2==0)
{m1=n/2;
m2=(n/2)-1;
return((*(a+m1)+*(a+m2))/2.);
}
else

return *(a+(n/2));
}
int get_mode(int* a, int n)
{
int* count,most,index,i,j;
count= new int[n];
for (i= 0;i< n;i++)
count[i] = 0;
for(i=0;i<n;i++)
{for(j=0;j<n;j++)
{if (*(a+j)==*(a +i))
(*(count+i))++;
}
}
most=*count;
index=0;
for (i=1;i<n;i++)
{if (*(count+i) >most)
{most=*(count+i);
index=i;
}
}
if (most == 1)
return -1;
else
return *(a+index);
}

Explanation / Answer

#include using namespace std; // function header get info // void getinfo(int*, int); // function header to sort void sort(int [], int); // function to get average double average(int*, int); // function to get meadian double median(int*, int); // function to get mode. int get_mode(int*, int); int main() { // declare an array pointer int*array; int num; // declare a num integer int mode,i,range; // declare mode i range float avg; // to store average coutnum; // get number students. while(num