Hallo liebe Community, ich habe kleines BubbleSort Programm zum üben geschrieben und wollte damit mir das Thema der Methoden beibringen. Bin auch bisher mit Google als kleiner Helfer ganz weit gekommen, aber jetzt muss sich ein Logik-Fehler eingeschlichen haben. Bei der Ausgabe wird mein gefülltes Array und sortiertes Array nur mit Nullen "0" ausgeben. Ich denke sollte für euch ein leichtes sein mich drauf hinzuweisen woran es liegt. Für Kritik Hinweise bin ich immer offen
. Danke schonmal!!!
Java:
Java:
/**
* Sort SE11 AS
* @author Sascha.Fuchs
* @version 1.0/ 24.05.2012
*/
import java.util.Scanner;
public class Sort {
public int[] randomNumber(){
final int anz = 21;
int [ ] zahl = new int [anz];
for(int i=0; i<anz; i++){
zahl[i]=(int)(Math.random() * 1000+1);
}
return zahl;
}
public int[] bubbleSort(){
final int anz = 21;
int [ ] zahl = new int [anz];
for(int i=anz-2; i>=0 ;i--){
for(int j=0; j<=i; j++){
if(zahl[j]<zahl[j+1]){
int temp=zahl[j];
zahl[j]=zahl[j+1];
zahl[j+1]= temp;
}
}
}
return zahl;
}
public int[] showArray (){
final int anz = 21;
int [ ] zahl = new int [anz];
for(int i=0; i<anz; i++)
System.out.println("Zahl["+i+"]"+zahl[i]);
return zahl;
}
public static void main (String[] args){
Scanner eingabe=new Scanner(System.in);
int input=1;
do{
Sort x= new Sort(); // Objekt erstellen der Klasse Sort
x.randomNumber();
x.showArray();
x.bubbleSort();
x.showArray();
System.out.println("Wenn SIe das Programm wiederholen wollen drücken sie 1!");
input=eingabe.nextInt();
}while(input==1);
System.out.println("ENDE!");
}
}