# Thread: Help with sort ascending and descending

1. Member
Join Date
Aug 2011
Posts
3
Rep Power
0

## Help with sort ascending and descending

Can someone please help me with my code.. im kinda stuck in ascending and descending.. here is my code hope you can understand it.. it just need a little of your magic trick so it could arrange the numbers correctly! Thanks in advance!

Java Code:
```import java.io.*;

public class Sorting {
public static void main(String[]args)throws IOException{
int [] x;
x = new int [10];
int y;

try{

System.out.println("Your numbers are: "+x[0]+" "+x[1]+" "+x[2]+" "+x[3]+" "+x[4]+" "+x[5]+" "+x[6]+" "+x[7]+" "+x[8]+" "+x[9]);
System.out.println("[1] Sort ascending");
System.out.println("[2] Sort descending");
System.out.println("Choose what type of sort: ");
int j=0,i=0, value = 0, n= x.length;
try{
if (y==1){
for(i = 1; i<n;i++){
value = x[i];
j=i;
while((j>0)&&(x[j-1]>value)){
x[i] = x [j=1];
j = j-1;
}

x[j] = value;
System.out.println("In ascending order");
for(i=0; i<n; i++)
System.out.println(x[i]+" ");

}
}else if(y==2){
for(i = 1; i>n;i++){
value = x[i];
j=i;
while((j>0)&&(x[j-1]>value)){
x[i] = x [j=1];
j = j-1;

}
x[j] = value;
System.out.println("In descending order");
for(i=0; i>n; i++)
System.out.println(x[i]+" ");
}

}else{
System.out.println("Error! choices are 1 and 2 only");
}
}catch(NumberFormatException nfe){
}
}catch(NumberFormatException nfe){
}
}

}```
Last edited by Freeze69; 08-16-2011 at 05:26 PM.

2. Moderator
Join Date
Apr 2009
Posts
13,132
Rep Power
23
Please use code tags when posting code (use the # button in the message toolbar).
Unformatted code is hard to follow.

You haven't actually said...

3. Senior Member
Join Date
Oct 2010
Location
Germany
Posts
787
Rep Power
8
it just need a little of your magic trick so it could arrange the numbers correctly
Integer[] x = new Integer[10];
....
if (y == 1) {
Arrays.sort(x);
} else if (y == 2) {
Arrays.sort(x , Collections.reverseOrder());
}

4. Member
Join Date
Aug 2011
Posts
3
Rep Power
0
sorry mate. .its my first time posting a thread here in java-forums.. anyway my problem is here..

Java Code:
```int j=0,i=0, value = 0, n= x.length;
try{
if (y==1){
for(i = 1; i<n;i++){
value = x[i];
j=i;
while((j>0)&&(x[j-1]>value)){
x[i] = x [j=1];
j = j-1;
}

x[j] = value;
System.out.println("In ascending order");
for(i=0; i<n; i++)
System.out.println(x[i]+" ");

}
}else if(y==2){
for(i = 1; i>n;i++){
value = x[i];
j=i;
while((j>0)&&(x[j-1]>value)){
x[i] = x [j=1];
j = j-1;

}
x[j] = value;
System.out.println("In descending order");
for(i=0; i>n; i++)
System.out.println(x[i]+" ");
}

}else{
System.out.println("Error! choices are 1 and 2 only");
}```
my code is that the user will give 10 numbers then he'll choose if he like to arrange it by ascending and descending order..
as you can see.. its in disorder but it runs smoothly.. Im stuck in this part right here and i don't have a clue to what ill do next, i think my problem is in the computation cause it wont arrange the 10 numbers in ascending and descending order..

5. Member
Join Date
Aug 2011
Posts
3
Rep Power
0
Originally Posted by eRaaaa
Integer[] x = new Integer[10];
....
if (y == 1) {
Arrays.sort(x);
} else if (y == 2) {
Arrays.sort(x , Collections.reverseOrder());
}

dude.. i already know that.. we do it the hard way.. thanks anyway

6. Senior Member
Join Date
Oct 2010
Location
Germany
Posts
787
Rep Power
8
Then read Sorting algorithm - Wikipedia, the free encyclopedia, choose an algorithm, read, code, ask quations again :D

7. Or you could try debugging your code to see where the problem is. Add printlns to show the values of variables at the point where you are making decisions and changing the order of the numbers in the array.

Some suggestions for easier debugging:
Hard code the numbers in an array instead of asking a user to enter them:
int[] x = {3,5,1,7,22,6}; // define the numbers to sort

#### Posting Permissions

• You may not post new threads
• You may not post replies
• You may not post attachments
• You may not edit your posts
•