Advertisement
Guest User

Untitled

a guest
Nov 29th, 2015
68
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.30 KB | None | 0 0
  1. #include <iostream>
  2. #include <time.h>
  3. #include <iomanip>
  4. #include <algorithm>
  5. using namespace std;
  6.  
  7.  
  8. void print (int *&p)
  9. {
  10. cout<<"Полученный массив "<<endl;
  11. for(int i = 0; i < 10; i++)
  12. {
  13. cout<<(*p = rand()%10)<<" ";
  14. }
  15. }
  16.  
  17. void delIlem(int *p,int* arr )
  18. {
  19. int k,n;
  20. cout<<endl;
  21. cout<<"Введите номер элемента с которого хотите начать удаление: ";
  22. cin>>k;
  23. cout<<endl;
  24. cout<<"Введите количество элементов, которые хотите удалить: ";
  25. cin>>n;
  26. *p= arr[0] ;
  27. for(int i=k; i<10-n ;i++)
  28. {
  29. swap((*p=i+n),(*p=i));
  30. }
  31. n=10-n;
  32. for(int i=0;i<n; i++)
  33. {
  34. //a2[i]=a1[i];
  35. *p=*p;
  36. //p++;
  37. }
  38. for(int i=0;i<n; i++)
  39. {
  40. cout<<(*p=i)<<" ";
  41. //p++;
  42. }
  43. }
  44.  
  45. void Add()
  46. {
  47. int n = 10;
  48. int* arr = new int[n];
  49. int* newArr = new int[n+1];
  50. int*p, *newP = &arr[n-1];
  51. //*p = *arr[0];
  52. for(int i = 0, *p = &arr[0]; i < n + 1; i++, newP = p++, *newP = *p );
  53. //*p = *&arr[0];
  54. // newP = p++;
  55. // *newP = *p;
  56. delete[] arr;
  57. arr = newArr;
  58. }
  59.  
  60. void ObrPor()
  61. {
  62. int n = 10, i;
  63. int* arr = new int[n];
  64. int *p=arr;
  65. //int* newArr = new int[n+1];
  66. for(int i = 0; i < n ; i++ );
  67. reverse(( *p= i),( *p=n - i - 1));
  68. for(int i=0;i<n; i++)
  69. {
  70. cout<<(*p=i)<<" ";
  71. //p++;
  72. }
  73. delete[] arr;
  74. }
  75.  
  76. int main()
  77. {
  78. setlocale(LC_ALL,"ru");
  79. cout<<"Автор: Васильева Мария ИП - 304. "<<endl;
  80. cout<<endl;
  81. int y=0;
  82. bool l=true;
  83. srand(time(0));
  84. int* arr = new int[10];
  85. int* p = &arr[0];
  86. print (p);
  87. cout<<endl;
  88. while(l)
  89. {
  90. cout<<"\nВставка элементов в массив - 1 \nУдаление элементов - 2 \nВывод элементов массива в обратном порядке, начиная с последнего - 3 \nВыход - 0"<<endl;
  91. cin>>y;
  92. switch(y)
  93. {
  94. case 0:
  95. l = false;
  96. break;
  97. case 1:
  98.  
  99. cout<<endl;
  100. //print (p);
  101. Add();
  102. cout<<endl;
  103. break;
  104. case 2:
  105.  
  106. cout<<endl;
  107. print (p);
  108. delIlem(p, arr );
  109. cout<<endl;
  110. break;
  111. case 3:
  112.  
  113. cout<<endl;
  114.  
  115. cout<<endl;
  116. break;
  117.  
  118. default :
  119. cout<<"неизвестная команда"<<endl;
  120. break;
  121. }
  122. }
  123. delete[] arr;
  124. cout<<endl;
  125. system("pause");
  126. return 0;
  127. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement