WCM Forum

WCM Forum (http://www.wcm.at/forum/index.php)
-   Programmierung (http://www.wcm.at/forum/forumdisplay.php?f=17)
-   -   Arrayübergabe und Ausgabe mit Bubblesort (http://www.wcm.at/forum/showthread.php?t=194856)

coolbininet 07.07.2006 18:19

Arrayübergabe und Ausgabe mit Bubblesort
 
Hallo Leute!

Seht Euch folgende Code an und sagt mir, wie ich nach sortiertem Array nicht die Elemente mit einer Forschleife ausgeben kann (im Code remarked)

import java.io.*;

public class Listing0518
{
public static void main(String[] args)
{
System.out.println("Demonstration des Bubblesort");
System.out.println("");
int[] zahlenarray = {12, 9, -9, 100, 199};
bubblesort(zahlenarray);
/*Wieso kann ich hier nicht die einzelnen Elemente des Arrays mit einer forschleife ausgeben? Weiß dass das gleich unten nicht funktionert, wie mache ich es richtig? Code soll nicht viel verändert werden.
zB.:
for (int z = 0; z < zahlenarray.length; z++)
{
System.out.println(bubblesort(zahlenarray));

}

*/

}
public static int[] bubblesort(int[] zahlenarray)
{
boolean sorted = false;
int zwischenvariable = 0;


while (sorted != true)
{
sorted = true;
for (int i=0; i < zahlenarray.length-1; i++)
{
if (zahlenarray[i] > zahlenarray[i+1])
{
zwischenvariable = zahlenarray[i];
zahlenarray[i] = zahlenarray[i+1];
zahlenarray[i+1] = zwischenvariable;
sorted = false;
}
}
}
return zahlenarray;
}
}


Grüße Coolbininet

jak 07.07.2006 18:46

Re: Arrayübergabe und Ausgabe mit Bubblesort
 
Code:

      bubblesort(zahlenarray);
  /*Wieso kann ich hier nicht die einzelnen Elemente des Arrays mit einer forschleife ausgeben? Weiß dass das gleich unten nicht funktionert, wie mache ich es richtig? Code soll nicht viel verändert werden.
  zB.:
    for (int z = 0; z < zahlenarray.length; z++)
    {
    System.out.println(bubblesort(zahlenarray));

  }

*/
  }
}

Was du machst: Du führst zahlenarray.length mal bubblesort und gibst den Rückgabewert mit System.out.println() aus. Der Rückgabewert von bubblesort ist aber ein int[] --> das funktioniert nicht.
Was du machen willst ist, bubblesort() einmal aufrufen, den Rückgabewert speichern und danach die Elemente ausgeben:
Eine Möglichkeit:
Code:

      zahlenarray = bubblesort(zahlenarray);
        for (int z = 0; z < zahlenarray.length; z++) {
          System.out.println(zahlenarray[z]);

    }

jak

coolbininet 08.07.2006 22:11

Danke jak!

Hat mir geholfen! Bist du professioneller Javaprogrammierer?

Grüße

Coolbininet

jak 12.07.2006 12:43

Freut mich!
Nein, ich bin kein professioneller Java Programmierer. Aber kann ja noch werden :)

jak


Alle Zeitangaben in WEZ +2. Es ist jetzt 07:09 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
© 2009 FSL Verlag