Wie kann ich bei Java Zahlen der Größe nach sortieren?

2 Antworten

Speichere alle Zahlen in einen Array und wende eine sort Methode zum Sortieren an. Dann hast du alle in der richtigen Reihenfolge und brauchst nur noch die Zahlen aus dem Array ausgeben


Murmel937 
Fragesteller
 16.09.2021, 21:58

Danke für die Antwort. Leider weiß ich nicht einmal was ein Array ist, geschweige denn, wie man ihn umsetzen könnte.

0
FaTech  16.09.2021, 21:59
@Murmel937

Ich habe dir einen Ansatz gegeben. Der Rest lässt sich wunderbar googlen. Versuch das mal, dann kannst du nochmal fragen ^^

0
Murmel937 
Fragesteller
 16.09.2021, 22:10
@FaTech

Ich habe bis jetzt ein Programm, dass mir alle Primzahlen bis zu einer gegebenen Obergrenze ausgibt und aus denen mit Rest eins im Modulo vier die Wurzel zieht. Wie kann ich das mit einem Array verknüpfen ohne alle Ergebniss händisch eintippen zu müssen? Nach einer Stunde googeln bin ich leider nicht schlauer geworden 😂 (Meine Java Kenntnisse lassen wirklich zu wünschen übrig)

0
FaTech  16.09.2021, 22:12
@Murmel937

Tja, ich kann nicht mal Java und helfe trotzdem 😮😅

Kannst du deinen bisherigen code posten? Dann kann ich mir mal einen eigenen Eindruck machen, was du schon gemacht hast

0
Murmel937 
Fragesteller
 16.09.2021, 22:17
@FaTech

  public class SIEB_Zusammen

  {

  static private int maxNumber;

  static public void gibPrimzahlAus (int max){

    maxNumber=max;

    int a=0;

    int b=0;

    boolean[] istPrimzahl= new boolean[maxNumber];

    for ( int i=2; i<maxNumber;i++)

    {

      istPrimzahl[i]=true;

      for (int j=2; j<=i/2; j++){

        if (i%j==0)

        {

          istPrimzahl[i]=false;

          break;

        }

        else

        {

          istPrimzahl[i]=true;

        }

      }

    }

    for (int i=2; i<maxNumber; i++)

    {

      if(istPrimzahl[i])

      {

        if (i%4==1)

        {

         double wurzel = Math.sqrt(i);

         System.out.println("Primzahl:" + wurzel);

        }

        else if (i%4==3)

        {

          System.out.println("Primzahl:" + i);

        }

        else if (i%4==2)

        {

          System.out.println("Primzahl:" + i);

        }

        

      }

    }

     

  }

   

}

0
Murmel937 
Fragesteller
 16.09.2021, 22:18
@Murmel937

Also ich betrachte den Abstand zwischen Gaußschen Primelementen

0
Murmel937 
Fragesteller
 16.09.2021, 22:19
@Murmel937

Und ich habe versucht den Array da mit einzufügen (was wahrscheinlich der Fehler war)

0
FaTech  16.09.2021, 22:21
@Murmel937

Bitte nimm das nächste mal ein Code Block Element, dann ist der Code Ordentlicher ...

Wo genau willst du die Zahlen ausgeben lassen?

0
FaTech  16.09.2021, 22:28
@Murmel937

Ähm ... Ich sehe da den Sinn gerade nicht ganz ... Warum hast du das so gemacht? istPrimzahl als Bool und warum nicht als int und du speicherst einfach alle Zahlen darein, die eine Primzahl sind? Dann hättest du die doch schon direkt in einem Array

0
Murmel937 
Fragesteller
 16.09.2021, 22:28
@FaTech

Oh, achso 😂😂😂 Am Ende, also wenn mir die Zahlen berechnet wurden.

0
FaTech  16.09.2021, 22:34
@Murmel937

Nimm mal bitte meine Freundschaftsanfrage an 😅

0
Murmel937 
Fragesteller
 16.09.2021, 22:36
@FaTech

Also ich wollte zuerst alle Primzahlen herausfiltern und dann die mit Rest 3 mod 4 ausgeben und aus denen mit Rest 1 mod 4 die Quadratwurzel ziehen. Und jetzt sollen die halt nach der Größe sortiert werden, z.B. ist die Wurzel aus 5 (Primzahl im Komplexen) ja kleiner als die Primzahl 3, nur mein Programm sortiert jetzt 3; 2,...;7; usw. Was ich gerne hätte: 2,...;3;7. Dazu speziell finde ich aber nichts

0
Murmel937 
Fragesteller
 16.09.2021, 22:40
@FaTech

Ich stelle mich wirklich doof an, wie geht das denn?😂 Benutze das heute das erste Mal

0
FaTech  16.09.2021, 22:42
@Murmel937

Geh auf dein Profil: Murmel937

Geh auf den Reiter Freunde

Und dort sollte die Anfrage sein. Du solltest aber auch bei Mitteilungen eine Nachricht haben

0

import java.util.Arrays;
x = [1,4,2,5];
Arrays.sort(x);