# Thread: Some problems with selected short

1. ## Some problems with selected short

Hi guys,

I'm learning C++ and one of the exercises is to create a program that sorts an unsorted array. So I created a prog, but it won't work, only the first 2 numbers and the last 2 were sorted, the rest remained to it's original position.

So I took a look at my code, rewrote it 2 times and still it has the same issue! Can somebody please help me out?

Code:
```#include <iostream>

using namespace std;

int main()
{
int n[10] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
int i, j, p;

i = 0;
j = 0;
p = 0;

// the unsorted list
for (i = 0; i < 10; i++){
cout << "[" << i << "] = ";
cin >> n[i];
}

i = 0;
j = 0;

cout << endl;
cout << "Unsorted list = ";
for (i = 0; i < 10; i++)
cout << n[i] << ", ";

cout << endl;
cout << "Sorting..." << endl;
// sorting...
i = 0;
while (true){
if (n[i] < n[i + 1]){
++i;
if (i = 8)
break;
}
if (n[i] > n[i + 1]){
// swap --------
p = n[i + 1];
n[i + 1] = n[i];
n[i] = p;
//--------------
i = 0;
}
if (n[i] == n[i + 1])
++i;
}

// the sorted list
cout << "Sorted list = ";
for (i = 0; i < 10; i++)
cout << n[i] << ", ";

}```

2. That looks more like Gnome sort to me.
This line sets i to 8:
Code:
`if (i = 8)`

3. OMFG, thank you

I hate myself...and I love you!!!!!!!!