Hej, behöver lite hjälp med min kod. Det är en array som skall visa 10 siffror så ska varje siffra skjutas till åt höger sida. Men efter 5 rotationer så visar den siffror från ramminnet.
const int SIZE = 10;
double c[SIZE];
double option;
int seq[SIZE]= {0};
for(int i = 0; i < SIZE; i++){
cin >> c[i];
for (int j=1; j <= option; j++) {
cout << "rotation seq "<< j;
for(int i = 0; i < SIZE; i++){
Förstår inte uppgiften riktigt tror jag. Du har en array med alla 10 siffror? {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}
I varje tur i loopen så skall alla värden flyttas ett steg åt höger och sista elementet skall bli det första? Korrekt?
Om så är fallet, se till att ha två st arrays där du tar värdet från den gamla till den nya och sätter in värdena ett steg till höger fram till sista elementet som du sätter i 0:e elementet i den nya arrayen.
Något i stil med:
private int[] moveToTheRight(int[] oldArray){
int [oldArray.length] newArray;
for(int i = 0; i < oldArray.length; i++){
if(i + 1 == oldArray.length){
newArray[0] = oldArray[i];
}else{
newArray[i+1] = oldArray[i];
}
}
}
public void stepper(){
int [] oldArray = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9};
int numberOfSteps = 5;
for(int i = 0; i < numberOfSteps; i++){
oldArray = moveToTheRight(oldArray);
}
}