Advertisement
Guest User

Untitled

a guest
Jan 23rd, 2019
80
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.73 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <time.h>
  3. #include <string.h>
  4.  
  5. #define N 10
  6.  
  7. typedef mytab[N];
  8.  
  9. int zakres()
  10. {
  11. return rand()%10;
  12. }
  13.  
  14. void wypelnij(int tablica1[])
  15. {
  16. printf("Maszyna losujaca jest pusta, nastepuje zwolnienie blokady \n");
  17.  
  18. int i;
  19.  
  20. for (i=0;i<N;i++)
  21. {
  22. tablica1[i]=zakres();
  23. }
  24.  
  25. }
  26. void wypisztablice(int tablica1[])
  27. {
  28. int i;
  29.  
  30. for(i=0;i<N;i++)
  31. {
  32. printf("%d. %d\t",i+1, tablica1[i]);
  33. printf("\n");
  34. }
  35. }
  36. double sredniatablicy(int tablica1[])
  37. {
  38. int i;
  39. double suma;
  40.  
  41. for(i=0;i<N;i++)
  42. {
  43. suma=suma+tablica1[i];
  44. }
  45. double srednia=suma/N;
  46. return srednia;
  47. }
  48. int maxymalna(int tablica1[])
  49. {
  50. int i,j,a=0;
  51. int max;
  52. max=0;
  53. for (i=0;i<N;i++)
  54. {
  55. if(max<tablica1[i])
  56. max=tablica1[i];
  57. }
  58. for(j=0;j<N;j++)
  59. {
  60. if(tablica1[j]==max)
  61. a++;
  62. }
  63. printf("wartosc max wystepuje %d\n", a);
  64. return max;
  65. }
  66. int minimalna(int tablica1[])
  67. {
  68. int i,j,a=0;
  69. int min;
  70. min=tablica1[0];
  71. for(i=0;i<N;i++)
  72. {
  73. if(min>tablica1[i])
  74. min=tablica1[i];
  75. }
  76. for(j=0;j<N;j++)
  77. {
  78. if(tablica1[j]==min)
  79. a++;
  80. }printf("wartosc min wystepuje %d\n", a);
  81. return min;
  82. }
  83. double srednia_nieparzystych_cyfr(int tablica1[])
  84. {
  85. int i;
  86. double srednia;
  87. double suma;
  88. int a=0;
  89. for (i=0;i<N;i++)
  90. {
  91. if(tablica1[i]%2!=0)
  92. {
  93. suma=suma+tablica1[i];
  94. a++;
  95. }
  96.  
  97.  
  98. }
  99. srednia=suma/a;
  100. return srednia;
  101. }
  102. double srednia_parzystych(int tablica1[])
  103. {
  104. int i;
  105. double srednia;
  106. double suma;
  107. int a=0;
  108. for(i=0;i<N;i++)
  109. {
  110. if(tablica1[i]%2==0)
  111. {
  112. suma=suma+tablica1[i];
  113. a++;
  114. }
  115. srednia=suma/a;
  116. } return srednia;
  117. }
  118. void histogram(int tablica1[])
  119. {
  120. int wynik=0;
  121. int i,j;
  122. printf("histogram tablicy: \n");
  123. for (j=-5; j<5; j++)
  124. {
  125. for (i=0;i<N;i++)
  126. if (tablica1[i]==j)
  127. {
  128. wynik++;
  129. }
  130.  
  131. printf("\n%d:%d",j , wynik);
  132. wynik=0;
  133.  
  134. }
  135. }
  136. /*void wyswietl_histogram(int hist[])
  137. {
  138. printf("histogram tablicy: \n");
  139. int i;
  140. for(i=0;i<N;i++)
  141. {
  142. printf("%d: %d\t",i,hist[i]);
  143. printf("\n");
  144. }
  145. }*/
  146.  
  147. void swap(int *a, int *b)
  148. {
  149. int temp;
  150. temp=*a;
  151. *a=*b;
  152. *b=temp;
  153. }
  154.  
  155. void selection_sort(int tablica1[])
  156. {
  157. int i,j;
  158.  
  159. for(i=0; i<N-1;i++)
  160. {
  161. int min=i;
  162. for(j=i+1; j<N; j++)
  163. if(tablica1[min]>tablica1[j])
  164. min=j;
  165. if(min!=i)
  166. swap(&tablica1[min],&tablica1[i]);
  167.  
  168. }
  169. printf("\nPosortowana tablica:\n ");
  170. for(i=0; i<N;i++)
  171. {
  172. printf("%d. %d\t", i+1, tablica1[i]);
  173. printf("\n");
  174. }
  175. }
  176. void losowanie_drugatablica(int tablica2[], int tablica1[])
  177. {
  178. printf("\ndruga tablica to \n");
  179. int i;
  180. for (i=0;i<N;i++)
  181. {
  182. tablica2[i]=zakres();
  183. }
  184. for(i=0;i<N;i++)
  185. {
  186. printf("%d. %d\t", i+1, tablica2[i]);
  187. printf("\n");
  188. }
  189. }
  190.  
  191. double srednia_waz(int tablica2[], int tablica1[])
  192. {
  193. double sumaWag=0;
  194. double sumaliczb=0;
  195. double srednia;
  196. int i;
  197.  
  198. for (i=0;i<N;i++)
  199. {
  200. sumaWag=sumaWag+tablica2[i];
  201. sumaliczb+=tablica1[i]*tablica2[i];
  202.  
  203. } srednia=sumaliczb/sumaWag;
  204. return srednia;
  205. }
  206.  
  207.  
  208. int main()
  209. {
  210. srand (time(0));
  211. mytab tablica1,tablica2;
  212. wypelnij(tablica1);
  213. wypisztablice(tablica1);
  214. printf("srednia tablicy= %f\n",sredniatablicy(tablica1));
  215. printf("wartosc maxymalna= %d\n",maxymalna(tablica1));
  216. printf("wartosc minimalna= %d\n",minimalna(tablica1));
  217. printf("srednia nieparzystych cyfr %f\n", srednia_nieparzystych_cyfr(tablica1));
  218. printf("srednia parzystych cyfr %f\n", srednia_parzystych(tablica1));
  219.  
  220. printf("\n");
  221.  
  222. histogram(tablica1);
  223. //wyswietl_histogram(hist);
  224. selection_sort(tablica1);
  225. losowanie_drugatablica(tablica2,tablica1);
  226. printf("srednia wazona= %d",srednia_waz(tablica2,tablica1));
  227. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement