Guest User

Untitled

a guest
Oct 24th, 2017
67
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.55 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <limits.h>
  4. void *safeMalloc(int n) {
  5. void *p = malloc(n);
  6. if (p == NULL) {
  7. printf("Error: malloc(%d) failed. Out of memory?n", n);
  8. exit(EXIT_FAILURE);
  9. }
  10. return p;
  11. }
  12.  
  13. int main(int argc, char *argv[]) {
  14. int n,i;
  15. scanf("%d",&n);
  16. int* array=safeMalloc(n*sizeof(int));
  17. for(i=0;i<n;i++){
  18. int value;
  19. scanf("%d",&value);
  20. array[i]=value;
  21. }
  22.  
  23. //mean
  24. double mean;
  25. double sum=0;
  26. for(i=0;i<n;i++){
  27. sum=sum+(double)array[i];
  28. }
  29. mean=sum/n;
  30. printf("mean: %.2fn",mean);
  31.  
  32. //median
  33.  
  34. float temp;
  35. int j;
  36. for(i=0;i<n;i++)
  37. for(j=i+1;j<n;j++){
  38. if(array[i]>array[j]){
  39. temp=array[j];
  40. array[j]=array[i];
  41. array[i]=temp;
  42. }
  43. }
  44. printf("median: %dn",array[n/2]);
  45.  
  46.  
  47. //mode
  48.  
  49. int val=array[0],noOfRepetitions=1,valMax=array[0],maxRepetitions=1,possibleMax=1;
  50.  
  51. for(i=1;i<n;i++){
  52. if(array[i]==val){
  53. noOfRepetitions++;
  54. }
  55.  
  56. if(array[i]!=val){
  57. val=array[i];
  58. noOfRepetitions=1;
  59. }
  60.  
  61. if(noOfRepetitions==possibleMax){
  62. maxRepetitions=1;
  63. continue;
  64. }
  65.  
  66. if(noOfRepetitions>maxRepetitions){
  67. valMax=val;
  68. maxRepetitions=noOfRepetitions;
  69. possibleMax=maxRepetitions;
  70. }
  71. }
  72.  
  73. if(maxRepetitions>1){
  74. printf("mode: %dn",valMax);
  75. }else{
  76. printf("mode: NONEn");
  77. }
  78.  
  79. return 0;
  80. }
Add Comment
Please, Sign In to add comment