Изменить порядок масива
Мне необходимо изменить порядок элементов в массиве. Например, в массиве есть числа 1 2 3 4 5. Мне надо вывести новый массив, начиная его выводить с указаного индекса, пусть индекс будет 2. Тоисть новый массив должен выглядеть вот так : 3 4 5 1 2.
using namespace std;
int main() {
int size, i, index;
cout << "Enter value of elements:";
cin >> size;
int* array = new int[size];
for (i = 0; i < size; i++) {
cout << "Enter" << " " << i + 1 << " element:";
cin >> array[i];
}
for (i = 0; i < size; i++) {
cout << *(array + i) << " ";
}
delete[] array;
cout << endl << "Enter index of the first element:";
cin >> index;
}```
Ответы (2 шт):
Автор решения: HMS_TRINIDAD
→ Ссылка
Попробуйте так:
for (int i = index; i < size; ++i)
{
cout << *(array + i) << " ";
}
for (int i = 0; i < index; ++i)
{
cout << *(array + i) << " ";
}
в итоге один массив, просто выводим в нужном порядке
Автор решения: MBo
→ Ссылка
for (i = 0; i < size; i++)
cout << array[(i + index) % size] << " ";
Для заполнения нового массива:
for (i = 0; i < size; i++)
new_array[i] = array[(i + index) % size];