Skip to content

Commit

Permalink
Add the function to find median value Fixes smuos#3
Browse files Browse the repository at this point in the history
  • Loading branch information
yy90axf2010 committed Sep 27, 2014
1 parent becc46b commit d74408d
Showing 1 changed file with 17 additions and 0 deletions.
17 changes: 17 additions & 0 deletions mm.c
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@ int numcmp (const void *a, const void *b) {
return 0;
}

// mean value
int mean(int length, int *pt){
int i;
double value = 0;
Expand All @@ -22,6 +23,17 @@ int mean(int length, int *pt){
return value;
}

// median value
int median(int length, int *pt){
int middle;
if(length % 2 != 0){
middle = (pt[length/2] +pt[(length/2)+1]) / 2;
}else{
middle = pt[length/2];
}
return middle;
}

int main(int argc, char *argv[]) {

int i, length, *pt;
Expand Down Expand Up @@ -56,6 +68,11 @@ int main(int argc, char *argv[]) {
// Sort numbers
qsort(pt, length, sizeof(int), numcmp);

//find the middle value
int medianvalue;
medianvalue = median(length, pt);
fprintf(stdout, "The median value is: %d\n", medianvalue);

// Print out numbers
fprintf(stdout, "%s: Sorted output is: \n", argv[0]);
for (i=0; i<length; i++) {
Expand Down

0 comments on commit d74408d

Please sign in to comment.