Neon_Falcon

Untitled

Apr 9th, 2019
154
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.10 KB | None | 0 0
  1. #include <ctime> /* time */
  2. #include <stdlib.h>/* memory */
  3. #include <random>
  4. #include <malloc.h>
  5. #include <stdio.h>
  6. #include <math.h>
  7.  
  8.  
  9. int fill(int(*m))
  10. {
  11. int i;
  12. srand((unsigned int)time(NULL));
  13. for (i = 0; i <= 49; i++)
  14. {
  15. m[i] = rand() % 81 - 50;
  16. printf("%d ", m[i]);
  17. }
  18.  
  19. return 0;
  20. }
  21.  
  22. float average(int*m) /* arithmetic mean */
  23. {
  24. int i;
  25. float d = 0;
  26. int a = 0, n = 0;
  27. for (i = 0; i <= 49; i++)
  28. {
  29. if (m[i] > 0)
  30. {
  31. a += m[i];
  32. n += 1;
  33. }
  34. }
  35. if (n == 0)
  36. {
  37. for (i = 0; i <= 49; i++)
  38. {
  39. printf("%d ", m[i]);
  40. }
  41. return -1;
  42. }
  43. d = float(a) / float(n);
  44. return d;
  45. }
  46.  
  47. int substitution(int(*m), int(d))
  48. {
  49. int i;
  50. for (i = 0; i <= 49; i++)
  51. {
  52. if (m[i] < 0)
  53. {
  54. m[i] = d;
  55. }
  56. printf("%d ", m[i]);
  57. }
  58. return 0;
  59. }
  60.  
  61. int main()
  62. {
  63. int* massiv;
  64. float d;
  65. massiv = (int*)malloc(50 * sizeof(int));
  66. fill(massiv);
  67. printf("\n");
  68. d = average(massiv);
  69. if (d > 0)
  70. {
  71. substitution(massiv, int(d));
  72. }
  73. printf("\n %0.2f \n", d); /* округляет к меньшему*/
  74. free(massiv);
  75. system("pause");
  76. return 0;
  77. }
Advertisement
Add Comment
Please, Sign In to add comment