در ++cدر آرايه ها چگونه يک خانه ميتوان به راست شيفت داد به طور مثال اگر آرايه ما باشد
5 4 3 2 1 بعد از شيفت به صورت مقابل شود4 3 2 1 5 برنامه را نوشتم ولی تمامی خانه ها را 1 می کند
#include<iomanip.h>
#include<iomanip.h>
void shift(int[],int);
const int arraysize=10;
int a[arraysize]={1,2,3,4,5,6,7,8,9,10};
int main()
{
cout<<"the array is:\n";
for(int i=0;i<arraysize;i++)
cout<<a<<setw(5);
cout<<endl;
shift(a,arraysize);
cout<<"the shift array is:\n";
for(int j=0;j<arraysize;j++)
cout<<a[j]<<setw(5);
return 0;
}
void shift(int b[],int sizeofarray)
{
for(int j=0;j<sizeofarray;j++)
if(j!=9)
b[j+1]=a[j];
else if(j==9)
b[0]=a[9];
}
5 4 3 2 1 بعد از شيفت به صورت مقابل شود4 3 2 1 5 برنامه را نوشتم ولی تمامی خانه ها را 1 می کند
#include<iomanip.h>
#include<iomanip.h>
void shift(int[],int);
const int arraysize=10;
int a[arraysize]={1,2,3,4,5,6,7,8,9,10};
int main()
{
cout<<"the array is:\n";
for(int i=0;i<arraysize;i++)
cout<<a<<setw(5);
cout<<endl;
shift(a,arraysize);
cout<<"the shift array is:\n";
for(int j=0;j<arraysize;j++)
cout<<a[j]<<setw(5);
return 0;
}
void shift(int b[],int sizeofarray)
{
for(int j=0;j<sizeofarray;j++)
if(j!=9)
b[j+1]=a[j];
else if(j==9)
b[0]=a[9];
}