Zum Inhalt springen

BlueJ Sortieren durch Auswahl


Empfohlene Beiträge

Geschrieben

Hallo wir sollen einen Algorithmus programmieren zum Thema Bubblesort (Sortieren durch auswahl)

ALso das aufwendige ist hier die Auswahl des jeweils kleinsten Elements, leicht hingegen das Einfügen.

Ich habe bereits angefangen wir arbeiten derzeit mit dem Programm BlueJ!

Ähnelt sehr Java etc


public class SORT

{


    public SORT()

    {


    }



    public void bubble ()

    {    


        int max=50;

        int [] feld = new int [10];

        for (int i=1; i<10; i++)

        {

           feld[i]= (int) (100*Math.random());




         }


        for (int i=1; i<10; i++)

         {

              System.out.println("Zufällige Zahlen="+feld[i]);

         }


        for (int i=1; i<10; i++)

        {

          if (feld[i]<max)

          {

              max=feld[i];

          }



        }


       System.out.println("Die kleinste Zahl ist: " + max);

    }

}







ALso ich kann bereits die kleinste Zahl von Zufallszahlen bestimmen, aber wie mache ich weiter wie sortiere ich die Zahlen nun?

Geschrieben

Das ist mir schon klar wie der Algorithmus abläuft nur mein Problem ist wie ich es ins Programm umsetzen kann. Gibt es einen speziellen Befehl mit den man Zahlen vertauscht ??

Geschrieben

Hey kennst du dich einigermaßen mit dem Programm BlueJ aus, oder allgemein mit Java

ähnelt ja alles sehr

Und könntest du mir vielleicht helfen ich habe auch schon dran bisschen gearbeitet, aber weiter komme ich auch nicht mehr :(

public class SORT

{


    public SORT()

    {


    }



    public void bubble ()

    {    


        int max=101;

        int [] feld2 = new int [10];

        int [] feld = new int [10];

        for (int i=1; i<10; i++)

        {

           feld[i]= (int) (100*Math.random());




         }


        for (int i=1; i<10; i++)

         {

              System.out.println("Zufällige Zahlen="+feld[i]);

         }


        for (int i=1; i<10; i++)

        {

          if (feld[i]<max)

          {

              max=feld[i];

          }



        }


       System.out.println("Die kleinste Zahl ist: " + max);



       feld2[0]=max;

       for (int i=0; i<10; i++)

         {

              System.out.println("Sortierte Zahlen="+feld[i]);

         }

       //System.out.println(feld2[0]);

    }

}



PS: könnt ihr mir bitte Ansätze geben wäre sehr nett und ich muss sie natürlich auch nachvollziehen können !!

Geschrieben


prozedur bubbleSort( A : Liste sortierbarer Elemente ) 

  n := Länge( A )

  wiederhole

    vertauscht := falsch

    für jedes i von 1 bis n - 1 wiederhole 

      falls A[ i ] > A[ i + 1 ] dann

        vertausche( A[ i ], A[ i + 1 ] )

        vertauscht := wahr

      ende falls

    ende für

    n := n - 1

  solange vertauscht und n > 1

prozedur ende

Was verstehst du daran nicht?

Geschrieben

Wie gesagt ich verstehe das Prinzip was dahinter steckt also ich habe schon auf einem Blatt praktiziert nur mein Problem ist es ja gerade, dass auf ein Programm zu übertragen

Geschrieben

Dann erklär uns doch einmal wo genau du hängst.

Kannst du die deutschen Begriffe nicht in die englische Bedeutung und deren Syntax einer Programmiersprache setzen?

- Die Prozedur kannst du wie eine Funktion behandeln und wird bei deinem Programm erst einmal nicht benötigt.

- Die Länge zählt in deinem Fall die Anzahl der Elemente deines Arrays.

- Wiederhole steht in dem Fall für eine fußgesteuerte Schleife.

- Vertauscht ist eine Hilfsvariable.

- Für ist eine Zählschleife.

- Falls bezeichnet eine Abfrage.

- Vertausche steht für eine Funktion, diese kannst du weglassen und durch mein Beispiel oben ersetzen.

- n ist eine Variable.

Fang doch erst einmal an das in ein Programm zu übertragen, dann wird man dir auch sagen was du falsch gemacht hast. Dir das ganze vorzukauen führt zu keinem Erfolg.

Aber wenn du unbedingt einen Anfang brauchst..

int n = feld.length();

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...