Advertisement
Guest User

Untitled

a guest
May 24th, 2016
56
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.65 KB | None | 0 0
  1. #include <iostream>
  2.  
  3. using namespace std;
  4.  
  5. void rotate(int a[], unsigned size, int shift)
  6. {
  7.     if(shift <= size)
  8.     {
  9.         int mod_a[size] = {};
  10.         for(int i = 0; i < size; i++)
  11.         {
  12.             mod_a[i] = *(a + i + shift % size); // cдвиг
  13.         }
  14.         for(int k = 0; k < shift; k++)
  15.         {
  16.             mod_a[size - shift + k] = *(a + k); // заполнение ячеек переноса
  17.         }
  18.  
  19.         a = mod_a;
  20.         for(int z = 0; z < size; z++)
  21.         {
  22.             cout << a[z] << endl;
  23.         }
  24.     }
  25. }
  26.  
  27. int main()
  28. {
  29.     int a[] = {15, 65, 87, 1475, 111};
  30.     rotate(a, 5, 2);
  31.     return 0;
  32. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement