Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <stdlib.h>
- #include <limits.h>
- void *safeMalloc(int n) {
- void *p = malloc(n);
- if (p == NULL) {
- printf("Error: malloc(%d) failed. Out of memory?n", n);
- exit(EXIT_FAILURE);
- }
- return p;
- }
- int main(int argc, char *argv[]) {
- int n,i;
- scanf("%d",&n);
- int* array=safeMalloc(n*sizeof(int));
- for(i=0;i<n;i++){
- int value;
- scanf("%d",&value);
- array[i]=value;
- }
- //mean
- double mean;
- double sum=0;
- for(i=0;i<n;i++){
- sum=sum+(double)array[i];
- }
- mean=sum/n;
- printf("mean: %.2fn",mean);
- //median
- float temp;
- int j;
- for(i=0;i<n;i++)
- for(j=i+1;j<n;j++){
- if(array[i]>array[j]){
- temp=array[j];
- array[j]=array[i];
- array[i]=temp;
- }
- }
- printf("median: %dn",array[n/2]);
- //mode
- int val=array[0],noOfRepetitions=1,valMax=array[0],maxRepetitions=1,possibleMax=1;
- for(i=1;i<n;i++){
- if(array[i]==val){
- noOfRepetitions++;
- }
- if(array[i]!=val){
- val=array[i];
- noOfRepetitions=1;
- }
- if(noOfRepetitions==possibleMax){
- maxRepetitions=1;
- continue;
- }
- if(noOfRepetitions>maxRepetitions){
- valMax=val;
- maxRepetitions=noOfRepetitions;
- possibleMax=maxRepetitions;
- }
- }
- if(maxRepetitions>1){
- printf("mode: %dn",valMax);
- }else{
- printf("mode: NONEn");
- }
- return 0;
- }
Add Comment
Please, Sign In to add comment