Advertisement
Guest User

Kajornsak

a guest
Oct 21st, 2014
125
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.29 KB | None | 0 0
  1.  
  2. #include <stdio.h>
  3. #include <math.h>
  4.  
  5.  
  6. int main(){
  7. double num[20],avg,sd,sum = 0,sumsd = 0,sum2,avg2,sumsd2,sd2;
  8.  
  9. for (int i =0; i < 20; i++) {
  10. scanf("%lf",&num[i]);
  11. sum += num[i];
  12. }
  13.  
  14. avg = sum/20;
  15.  
  16. for (int i = 0; i < 20; i++) {
  17. sumsd += pow((num[i]-avg),2.0);
  18. }
  19. sd = sqrt(sumsd/20);
  20. printf("AVG = %.4lf\n",avg);
  21. printf("SD = %.4lf\n",sd);
  22. //-----------------------------------------------------//
  23.  
  24. sum2 = 0;
  25. sumsd2 = 0;
  26. sd2 = 0;
  27. avg2 = 0;
  28. int count = 0;
  29. for (int i = 0; i < 20 ; i++) {
  30. if (fabs(num[i]-avg) > (4*sd)) {
  31. num[i] = 0;
  32. count++;
  33.  
  34. }
  35. sum2 += num[i];
  36. }
  37. for (int i = 0; i < 20; i++) {
  38. printf("%.0lf ",num[i]);
  39. }
  40.  
  41. avg2 = sum2/(20-count);
  42.  
  43. for (int i = 0; i < 20; i++) {
  44. if (num[i] == 0) {
  45. continue;
  46. }
  47. else
  48. sumsd2 += pow((num[i]-avg2),2.0);
  49. }
  50.  
  51. sd2 = sqrt(sumsd2/(20-count));
  52.  
  53. printf("\nAfter removing outliers:\n");
  54. printf("AVG = %.4lf\n",avg2);
  55. printf("SD = %.4lf\n",sd2);
  56.  
  57.  
  58. }
  59.  
  60.  
  61. //20 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
  62. @//0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 10
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement