Итак, я пытаюсь выполнить операцию поворота указанное количество раз.
#include <iostream>
using namespace std;
void result_arr_one_rotation (int arr [], int n){
// int one_rotate_arr[n];
int p=arr[0];
for (int i=0;i<n-1;++i){
arr[i]=arr[i+1];
}
arr[n]=p;
//return arr;
}
int main(){
//n stands for total number of elements in array and d stands for number of rotation
int n,d;
cin>>n>>d;
int arr[n];
//to take elements of array
for(int i=0;i<n;i++){
cin>>arr[i];
}
//int rotated_arr[n];
for (int i=0;i<d;i++){
result_arr_one_rotation(arr,n);
//cout<<arr[i]<<" ";
}
for (int i=0;i<n;i++){
cout<<arr[i]<<" ";
}
return 0;
}
Теперь функция result_arr_one_rotation
вращает элементы на один индекс. Чтобы сохранить 0-й элемент индекса, я создал переменную p
, которая была назначена наконец. Вы можете увидеть это по строке 'arr [n] = p'. Теперь я повернулся в d
раз, так как пользователь может свободно использовать, сколько раз он вращается. И тогда я просто распечатываю элементы.
Теперь вот проблема, когда я дал такие данные, как
5 which is number of elements(n)
2 number of rotation d
1 2 3 4 5 -> answer it should be
3 4 5 5 5-> this is the answer comes out
Пожалуйста, кто-нибудь скажите мне, что я сделал неправильно здесь