Advertisement
Guest User

Untitled

a guest
May 27th, 2016
58
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.50 KB | None | 0 0
  1. #include <iostream>
  2. #include <cstdlib>
  3. #include <time.h>
  4. #include <fstream>
  5. #include <string>
  6. #include <algorithm>
  7. using namespace std;
  8.  
  9.  
  10. void losowe(int tab[], int n)
  11. {
  12. srand(time(NULL));
  13. for(int i = 0; i <= n; i++)
  14. {
  15. tab[ i ] = rand () % 201 - 100;
  16. cout << tab[ i ] << " ";
  17. }
  18. cout << endl;
  19. }
  20.  
  21.  
  22. void sumuje(int tab[], int n)
  23. {
  24. int suma = 0;
  25. for(int i = 0; i <= n; i++)
  26. {
  27. if(tab[ i ]<0)
  28. {
  29. suma = tab[ i ] + suma;
  30. }
  31. }
  32. cout << "Wynik: " << suma << endl;
  33. }
  34.  
  35. void przesuwa_lewo(int tab[], int n)
  36. {
  37. for(int i = 0; i <= n; i++)
  38. {
  39. tab[ i - 1] = tab[ i ];
  40. cout << tab[ i ] << " ";
  41. }
  42. cout << endl;
  43. }
  44.  
  45. void przesuwa_prawo(int tab[], int n)
  46. {
  47. for(int i = 0; i <= n; i++)
  48. {
  49. tab[ i + 2 ] = tab[ i ];
  50. cout << tab[ i ] << " ";
  51. }
  52. cout << endl;
  53. }
  54.  
  55. void najwieksza_wartosc(int tab[], int n)
  56. {
  57. int max = 0;
  58. for(int i = 0; i <= n; i++)
  59. {
  60. if(tab[ i ] > max){
  61. max = tab[ i ];
  62. }
  63. }
  64. cout << max << endl;
  65. }
  66. void najmniejsza_wartosc(int tab[], int n)
  67. {
  68. int min1 = 0, min2 = 0, imin1 = 0, imin2 = 0;
  69. for(int i = 0; i <= n; i++)
  70. {
  71. if(tab[ i ] <= min1)
  72. {
  73. min2 = min1;
  74. min1 = tab[ i ];
  75. imin2 = imin1;
  76. imin1 = i;
  77. }
  78. else if(tab[ i ] < min2)
  79. {
  80. min2 = tab[ i ];
  81. imin2=i;
  82. }
  83. }
  84. cout << "tab" << "[ " << imin1 << " ] = " << min1 << endl;
  85. cout << "tab" << "[ " << imin2 << " ] = " << min2 << endl;
  86. }
  87.  
  88. void najczestsza_wartosc(int tab[], int n)
  89. {
  90. int licznik, war, licznik_max, war_max;
  91. licznik_max = 0;
  92. for(int i = 0; i < n; i++)
  93. {
  94. war = tab[ i ];
  95. licznik = 0;
  96. for(int j = 0; j < n; j++)
  97. {
  98. if(tab[ j ] == war)
  99. {
  100. licznik++;
  101. }
  102. if(licznik > licznik_max)
  103. {
  104. licznik_max = licznik;
  105. war_max = war;
  106. }
  107. }
  108. }
  109. cout << "Najczesciej wystepujacym elementem jest: " << war_max << endl;
  110. cout << "Wystepuje " << licznik_max << " razy" << endl;
  111. }
  112.  
  113. void zamiana(int tab[] ,int n) {
  114.  
  115. int tmp;
  116. tmp=tab[0];
  117. tab[0]=tab[1];
  118. tab[1]=tmp;
  119. for (int k = 0;k<n;k++)
  120. cout<<tab[k]<<" ";
  121. }
  122.  
  123. void sortuje(int tab[], int n) {
  124.  
  125. int tmp, min = 0;
  126.  
  127. for(int j = 0; j < n; j++) {
  128. min = j;
  129. for(int i = j + 1; i < n; i++) {
  130. if (tab[i] < tab[min])
  131. min = i;
  132. }
  133. tmp = tab[j];
  134. tab[j] = tab[min];
  135. tab[min] = tmp;
  136. }
  137. for (int k = 0;k<n;k++)
  138. cout<<tab[k]<<" ";
  139.  
  140. }
  141. void usuwanieSpacji( const string tekst, string tekstBS )
  142. {
  143. tekstBS = "";
  144. int x = 0;
  145.  
  146. while( x == 0 )
  147. {
  148. for( int a = 0; a < tekst.length(); a++ )
  149. {
  150. if( tekst.at( a ) == ' ' )
  151. x = 1;
  152. else
  153. tekstBS += tekst.at( a );
  154.  
  155. }
  156. }
  157. cout << "Nasz tekst: " << tekst << endl;
  158. cout << "Tekst bez spacji: " << tekstBS;
  159.  
  160. }
  161.  
  162. void usun_wielokrotne_spacje(string s){
  163. for( int i = 0; i < s.length() - 1; i++ )
  164. if( !( s[ i ] == ' ' && s[ i + 1 ] == ' ' ) )
  165. cout << s[ i ];
  166. cout << s[ s.length() - 1 ] << endl;
  167. }
  168.  
  169. int main()
  170. {
  171. const int n=100;
  172. string tekst = " Wlazl kotek na plotek";
  173. int opcja;
  174. int tab[n];
  175.  
  176. for(;;)
  177. {
  178. cout << " MENU - wybierz numer zadania " << endl << endl;
  179. cout<<"1. Wypelnia tablice wartosciami od -100 do 100. "<<endl;
  180. cout<<"2. Sumuje elementy ujemne tablicy. "<<endl;
  181. cout<<"3. Przesuwa wszystkie elementy tablicy o 1 w lewo. "<<endl;
  182. cout<<"4. Przesuwa wszystkie elementy tablicy o 2 w prawo. "<<endl;
  183. cout<<"5. Odnajduje najwieksza wartosc w tablicy. "<<endl;
  184. cout<<"6. Znajduje 2 najmniejsze liczby w tablicy. "<<endl;
  185. cout<<"7. Pokazuje najczesciej powtarzajacy sie wartosci tablicy. "<<endl;
  186. cout<<"8. Zamienia miejscami dwie zmienne. "<<endl;
  187. cout<<"9. Sortuje zadana tablice. "<<endl;
  188. cout<<"10. Usuwa z lancucha spacje. "<<endl;
  189. cout<<"11. Usuwa wielokrotne spacje. "<<endl;
  190. cout << endl;
  191. cout << " 0. Koniec programu." << endl;
  192.  
  193. cin >> opcja;
  194.  
  195. switch (opcja)
  196. {
  197. case 1: losowe(tab,n);
  198. break;
  199. case 2: sumuje(tab,n);
  200. break;
  201. case 3: przesuwa_lewo(tab,n);
  202. break;
  203. case 4: przesuwa_prawo(tab,n);
  204. break;
  205. case 5: najwieksza_wartosc(tab,n);
  206. break;
  207. case 6: najmniejsza_wartosc(tab,n);
  208. break;
  209. case 7: najczestsza_wartosc(tab,n);
  210. break;
  211. case 8: zamiana(tab,n);
  212. break;
  213. case 9: sortuje(tab,n);
  214. break;
  215.  
  216. case 10:
  217. {
  218. string tekstBS;
  219. usuwanieSpacji(tekst,tekstBS);
  220. cout << endl;
  221. }
  222. break;
  223. case 11:
  224. {
  225. usun_wielokrotne_spacje;
  226. cout<<endl;
  227. }
  228. break;
  229. case 0:
  230. {
  231. cout<<"Zakonczono!"<<endl;
  232. }
  233. default:
  234. {
  235. exit(0);
  236.  
  237. }
  238. }
  239.  
  240. }
  241.  
  242. return 0;
  243. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement