Advertisement
Guest User

Untitled

a guest
Feb 21st, 2019
70
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.30 KB | None | 0 0
  1. #include <ctime>
  2. #include <cstdlib>
  3. #include <iostream>
  4. #include <iomanip>
  5.  
  6. using namespace std;
  7.  
  8. #define ROZM_TABL_MAX 1000
  9.  
  10. // Deklaracje (prototypy) własnych funkcji użytych w programie
  11.  
  12. int WypelnTabl( int tabl[], int rozmTabl );
  13.  
  14. int MinIndex( int tabl[], int rozmTabl );
  15. int MaxIndex( int tabl[], int rozmTabl );
  16. double Srednia( int tabl[], int rozmTabl );
  17.  
  18. int CzytajInt( int min, int max );
  19. void PiszTabl( int tabl[], int rozmTabl, int nKol );
  20. void sort(int tabl[], int rozmTabl[]);
  21. void rePiszTabl(int &a, int &k)
  22. //---------------------------------------------------------
  23.  
  24. int main(int argc, char *argv[])
  25. {
  26. int t[ROZM_TABL_MAX];
  27. int ilLiczb, ilKolumn;
  28. int idxMin, idxMax;
  29. double sr;
  30.  
  31. // 1. Uzupelnic
  32.  
  33. cout << "Podaj liczbe elementow tablicy: ";
  34. ilLiczb = CzytajInt( 1, ROZM_TABL_MAX );
  35. WypelnTabl( t, ilLiczb );
  36.  
  37. // 2. Uzupelnic
  38.  
  39. cout << "Podaj liczbe kolumn: ";
  40. ilKolumn = CzytajInt( 1, 8 );
  41. cout << endl;
  42. PiszTabl( t, ilLiczb, ilKolumn );
  43.  
  44. sr = Srednia( t, ilLiczb );
  45. idxMin = MinIndex( t, ilLiczb );
  46. idxMax = MaxIndex( t, ilLiczb );
  47.  
  48. // 3. Uzupelnic
  49. cout << "Wartosc srednia elementow tablicy: "<<fixed <<setprecision(1) <<sr << endl;
  50. cout << "Najmniejszy element tablicy t[" << idxMin << "] wynosi = " <<t[idxMin] << endl;
  51. cout << "Najwiekszy element tablicy t[" << idxMax << "] wynosi = " <<t[idxMax] << endl;
  52.  
  53.  
  54. return 0;
  55. }
  56.  
  57. //---------------------------------------------------------
  58.  
  59.  
  60. int WypelnTabl( int tabl[], int rozmTabl )
  61. {
  62. int ofs = RAND_MAX / 2;
  63. int i;
  64.  
  65. srand( (unsigned int)time( NULL ) );
  66. for( i = 0; i < rozmTabl; i++ )
  67. tabl[ i ] = rand( ) - ofs;
  68.  
  69. return rozmTabl;
  70. }
  71.  
  72. //---------------------------------------------------------
  73.  
  74. int MinIndex( int tabl[], int rozmTabl )
  75. // 4. Uzupelnic
  76. {
  77. int i, min, index =0;
  78. min =tabl[0];
  79.  
  80. for(i=1; i<rozmTabl; i++)
  81. {
  82. if(min>tabl[i])
  83. {
  84. min=tabl[i];
  85. index=i;
  86. }
  87.  
  88. else
  89. min=min;
  90.  
  91.  
  92. }
  93.  
  94. return index;
  95. }
  96. //---------------------------------------------------------
  97.  
  98. int MaxIndex( int tabl[], int rozmTabl )
  99. // 5. Uzupelnic
  100. {
  101. int i, index=0, max =tabl [0];
  102.  
  103. for (i=1; i<rozmTabl; i++)
  104. {
  105. if (max < tabl[i+1])
  106. {
  107. index =i+1;
  108. max=tabl[i+1];
  109. }
  110. }
  111. return index;
  112. }
  113. //---------------------------------------------------------
  114.  
  115. double Srednia( int tabl[], int rozmTabl )
  116. // 6. Uzupelnic
  117. {
  118. int suma = 0, i;
  119. double sr;
  120.  
  121. for(i=0; i<rozmTabl;i++)
  122. {suma=suma+tabl[i];}
  123. sr=suma/i;
  124. return sr;
  125. }
  126. //---------------------------------------------------------
  127.  
  128. int CzytajInt( int min, int max )
  129. // 7. Uzupelnic
  130. {
  131. int a;
  132. cin>> a;
  133. if(a>max)
  134. return max;
  135. else
  136. if (a<min)
  137. return min;
  138. else return a;
  139. }
  140. //---------------------------------------------------------
  141.  
  142. void PiszTabl( int tabl[], int rozmTabl, int nKol )
  143. // 8. Uzupelnic
  144. {
  145. int i, k=1;
  146.  
  147. for(i=0;i<rozmTabl; i++)
  148. { if(i==k*nKol)
  149. {
  150. k++;
  151. cout<< endl;
  152. }
  153. cout << setw(3)<<right << i <<".";
  154. cout << setw(9)<< tabl[i];
  155. }
  156. cout<< endl <<endl;
  157. }
  158.  
  159. //---------------------------------------------------------
  160. void sort(int tabl[], int rozmTabl[])
  161. {
  162. for(int j=rozmTabl-1; j>0; j--)
  163. for(int i=0; i<j; i++)
  164. if(tabl[i]>tabl[i+1])
  165. rePiszTabl(tabl[i], tabl[i+1]);
  166. }
  167.  
  168. void rePiszTabl(int , int
  169. {
  170. int temp=
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement