Advertisement
Guest User

Untitled

a guest
Nov 5th, 2017
243
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 10.34 KB | None | 0 0
  1. # include <iostream>
  2. # include <conio.h>
  3. #include <locale>
  4. # include <time.h>
  5. # include <cstdlib>
  6. using namespace std;
  7. void vvod(int a[], int n);
  8. void generac(int a[], int n);
  9. void vivod(int a[], int n);
  10. void vivod1(int a[], int n);
  11. void vivod2(int a[], int n);
  12. void vivod3(int a[], int n);
  13. void vivod4(int a[], int n);
  14. void vivod5(int a[], int n);
  15. void vivod6(int a[], int n);
  16. void vivod7(int a[], int n);
  17. void vivod8(int a[], int n);
  18. void vivod9(int a[], int n);
  19. void vivod10(int a[], int n);
  20. void vivod11(int a[], int n);
  21. void main()
  22. {srand((unsigned)time(NULL));
  23. setlocale(0, "");
  24. int a[20];
  25. int n,k;
  26. signed int y=0,u=0,p,summ=0;
  27. cout<<"введите количество элементов массива"; cin>>n;
  28. do
  29. {cout<<"1. Ввод массива a"<<endl;
  30. cout<<"2. Генетация элементов массива a"<<endl;
  31. cout<<"3. Вычисление среднего арифметического значения элементов массива и замена положительных элементов массива целой частью от среднего арифметического значения"<<endl;
  32. cout<<"4. Вычисление минимального элемента. Вычисление максимального элемента. Замена всех элементов равных максимальному элементу значением минимального элемента."<<endl;
  33. cout<<"5.Найти минимальный элемент. Найти максимальный элемент. Заменить все элементы, стоящие между минимальным и максимальным элементом - нулями"<<endl;
  34. cout<<"6. Найти количество положительных элементов в массиве. Заменить все четные элементы массива на их индексы."<<endl;
  35. cout<<"7. Найти минимальный элемент. Найти количество элементов имеющих минимальное значение. Удалить все минимальные элементы из массива"<<endl;
  36. cout<<"8.Найти первый отрицательный элемент в массиве. Найти сумму отрицательных элементов. Заменить все элементы, стоящие перед первым отрицательным элементом на сумму отрицательных элементов."<<endl;
  37. cout<<"9. Найти минимальный элемент среди элементов, имеющих четный индекс. Найти минимальный элемент среди элементов, имеющих нечетный индекс. Заменить все элементы, стоящие между этими минимальными элементами на их индексы"<<endl;
  38. cout<<"10. Найти минимальный элемент среди положительных элементов массива. Заменить все отрицательные элементы массива на этот минимальный элемент элементов массива"<<endl;
  39. cout<<"11. Найти второй по порядку минимальный элемент. Заменить все элементы, кратные трем, на этот элемент"<<endl;
  40. cout<<"12. Найти минимальный элемент. Вставить после минимального элемента его индекс"<<endl;
  41. cout<<"13. Найти максимальный элемент. Найти количество элементов имеющих максимальное. Удалить все максимальные элементы из массива"<<endl;
  42. cout<<"14.Найти количество элементов, стоящих после последнего отрицательного элемента в массиве. Вставить после этого элемента найденное количество."<<endl;
  43. cout<<"15. Конец работы"<<endl;
  44. cout<<"Укажите номер пункта меню"; cin>>k;
  45. switch (k)
  46. {case 1: vvod(a,n);break;
  47. case 2: vivod(a,n); break;
  48. case 3: generac(a,n);break;
  49. case 4:vivod1(a,n);break;
  50. case 5:vivod2(a,n);break;
  51. case 6:vivod3(a,n);break;
  52. case 7:vivod4(a,n);break;
  53. case 8:vivod5(a,n);break;
  54. case 9:vivod6(a,n);break;
  55. case 10:vivod7(a,n);break;
  56. case 11:vivod8(a,n);break;
  57. case 12:vivod9(a,n);break;
  58. case 13:vivod10(a,n);break;
  59. case 14:vivod11(a,n);break;
  60. case 15: cout<<"Конец работы"<<endl; break;
  61. default: cout<<"Такого пункта нет"<<endl;
  62. }
  63. if (k==15) break;
  64. } while(true);
  65. _getch();
  66. }
  67. //ВВОД
  68. void vvod(int a[], int n)
  69. {
  70. cout<<"Введите элементы массива"<<endl;
  71. for(int i=0;i<n;i++)
  72. cin>>a[i];
  73.  
  74. }
  75. //ВЫВОД
  76. void vivod(int a[], int n)
  77. {cout<<"Массив a"<<endl;
  78. for(int i=0;i<n;i++)
  79. cout<<a[i]<<"\t";
  80. cout<<endl;
  81. }
  82. // 3Вычисление среднего арифметического значения элементов массива и замена положительных элементов массива целой частью от среднего арифметического значения
  83. void generac(int a[], int n)
  84. {
  85.  
  86.  
  87. }
  88. //4Вычисление минимального элемента. Вычисление максимального элемента. Замена всех элементов равных максимальному элементу значением минимального элемента.
  89. // ycnex
  90. void vivod1(int a[], int y,int u,int n)
  91. {
  92. cout<<"Введите элементы массива"<<endl;
  93. for(int i=0;i<n;i++)
  94. cin>>a[i];
  95.  
  96. for(int i=0;i<n;i++)
  97. {
  98.  
  99.  
  100. if(a[i]>y)
  101. {
  102. y=a[i];
  103. }
  104. else if(a[i]<y)
  105. {
  106. u=a[i];
  107. }
  108. else if(a[i]=y)
  109. {
  110. a[i]=u;
  111. }
  112. cout<<a[i]<<"\t";
  113. }
  114. }
  115. //5Найти минимальный элемент. Найти максимальный элемент. Заменить все элементы, стоящие между минимальным и максимальным элементом - нулями.
  116. //ycnex
  117. void vivod2(int a[],int y,int u,int n)
  118. {
  119. for(int i=0;i<n;i++)
  120. {
  121.  
  122.  
  123. if(a[i]>y)
  124. {
  125. y=a[i];
  126. }
  127. else if(a[i]=y)
  128. {
  129. a[i]=0;
  130. }
  131. else if(a[i]<y)
  132. {
  133. u=a[i];
  134. }
  135. cout<<a[i]<<"\t";
  136. }
  137. }
  138. //6Найти количество положительных элементов в массиве. Заменить все четные элементы массива на их индексы.
  139. void vivod3(int a[],int n)
  140. {
  141. for(int i=0;i<n;i++)
  142. {
  143. if (a[i]%2==0)
  144. {
  145. cout<<i;
  146. }
  147. else
  148. {
  149. cout<<a[i]<<"\t";
  150. }
  151. }
  152. }
  153. //7Найти минимальный элемент. Найти количество элементов имеющих минимальное значение. Удалить все минимальные элементы из массива
  154. void vivod4(int a[],int p,int u, int n)
  155. {
  156. for(int i=0;i<n;i++)
  157. {
  158. if(a[i]<=u)
  159. {
  160. p++;
  161. u=a[i];
  162. cout<<u<<"\n";
  163.  
  164.  
  165. }
  166. u=0;
  167. cout<<p<<"\n";
  168. cout<<a[i]<<"\t";
  169. }
  170. }
  171. //8Найти первый отрицательный элемент в массиве. Найти сумму отрицательных элементов. Заменить все элементы, стоящие перед первым отрицательным элементом на сумму отрицательных элементов.
  172. //hemhai
  173. void vivod5(int a[], int n,int u,int summ)
  174. {
  175.  
  176. }
  177.  
  178. //9Найти минимальный элемент среди элементов, имеющих четный индекс. Найти минимальный элемент среди элементов, имеющих нечетный индекс. Заменить все элементы, стоящие между этими минимальными элементами на их индексы.
  179. void vivod6(int a[],int i ,int u,int n)
  180. {
  181. for(int i=0;i<n;i++)
  182. {
  183. if(i%2)
  184. {
  185. if(a[i]<=u)
  186. {
  187. a[i]=u;
  188. }
  189. }
  190. else
  191. {
  192. if(a[i]<=u)
  193. {
  194. a[i]=u;
  195. }
  196. }
  197. }
  198. cout<<a[i]<<"\t";
  199. }
  200. //10Найти минимальный элемент среди положительных элементов массива. Заменить все отрицательные элементы массива на этот минимальный элемент.
  201. void vivod7(int a[], int i,int n,int y)
  202. { for(int i=0;i<n;i++)
  203. {
  204. if(a[i]<=y &&a[i]>=0)
  205. {
  206. y=a[i];
  207. }
  208. {
  209. if(a[i]<0)
  210. a[i]=y;
  211. }
  212. }
  213. cout<<a[i]<<"\t";
  214. }
  215. //11Найти второй по порядку минимальный элемент. Заменить все элементы, кратные трем, на этот элемент.
  216. void vivod8(int a[], int u,int n,int p,int)
  217. {
  218. for(int i=0;i<n;i++)
  219. {
  220. if(a[i]<=u)
  221. {
  222. u=a[i];
  223. p++;
  224. if(p==2)
  225. {
  226. if(a[i]%3)
  227. {
  228. a[i]=u;
  229. }
  230. }
  231. }
  232. cout<<a[i]<<"\t";
  233. }
  234. }
  235. //12Найти минимальный элемент. Вставить после минимального элемента его индекс.
  236. void vivod9(int a[], int u,int n)
  237. {
  238. for(int i=0;i<n;i++)
  239. {
  240. if(a[i]<=u)
  241. {
  242. u=a[i];
  243. }
  244. else
  245. {
  246. a[i]=0;
  247. }
  248. cout<<a[i]<<"\t";
  249. }
  250. }
  251. //13Найти максимальный элемент. Найти количество элементов имеющих максимальное. Удалить все максимальные элементы из массива
  252. void vivod10(int a[],int u,int i, int n)
  253. {
  254. for(int i=0;i<n;i++)
  255. {
  256. if(a[i]>=u)
  257. {
  258. u=a[i];
  259. }
  260.  
  261. }
  262. if(a[i]=u)
  263. {
  264. a[i]=0;
  265. }
  266. cout<<a[i]<<"\t";
  267. }
  268. //14Найти количество элементов, стоящих после последнего отрицательного элемента в массиве. Вставить после этого элемента найденное количество.
  269. void vivod11(int a[], int n)
  270. {
  271. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement