Int-Felder erzeugen

neerual

Mitglied
Hallöchen, ich habe neulich schonmal eine Frage hier gestellt und mir wurde super geholfen, deshalb bin ich nun wieder da! :p

Ich soll ein int-Feld der Länge n erstellen, dies mit Zufallszahlen aus dem Bereich 1,...,n füllen und mir dann das Feld ausgeben lassen.

Ich habe dazu soweit folgendes:
Code:
        int[] a;
        a = new int[n];
        for (int i = 0; i < n, i++)
            a[i] = Math.random();
        System.out.println(a)

(Das ist an sich nur der Rumpf meines Codes, wenn ihr den Rest auch sehen wollt, einfach fix schreiben.)
So, meine Frage ist nun:
ich denke das ich dort oben folgendes tue:
ich gebe einem int-Feld den Namen a, dann sage ich, dass es die Länge n haben soll mit a = new int[n] und weise ihm dann mit dem Rest zu, dass es mit einer Zahl zwischen 1 und n gefüllt werden soll.
Aber tue ich dies überhaupt?

Ich wüsste auch nicht, wie ich das schnell compilen köönte ums zu testen :(

Vielen Dank für eure Hilfe!
 

JStein52

Top Contributor
Code:
public class IntArrayTesten {

   public static void main(String[] args) {
     int n= 10;
        int[] a;
        a = new int[n];
        for (int i = 0; i < n; i++)
            a[i] = Math.random();
        System.out.println(a);
   }
}

und wenn du das compilieren willst wirst du noch ein kleines Problem feststellen ...
 
Zuletzt bearbeitet:

neerual

Mitglied
Code:
public class IntArrayTesten {

   public static void main(String[] args) {
     int n= 10;
        int[] a;
        a = new int[n];
        for (int i = 0; i < n, i++)
            a[i] = Math.random();
        System.out.println(a);
   }
}

und wenn du das compilieren willst wirst du noch ein kleines Problem feststellen ...
Danke euch beiden schon mal für die Blitz-Antwort :)

Wenn ich das ganze so compile, dann sagt er mir, 'can't find symbol i' zu der "a = Math.random();" Zeile. Muss ich i also auch deklarieren, ja? Und wenn ja, dann als int i = 0?

Allerdings dachte ich, dass ich i schon in dem for abschnitt in Zeile 3 des original codes deklariert hätte?
 

JStein52

Top Contributor
Und in der Math.random()-Zeile fehlte erstens das Semikolon, zweitens ergibt das eine Zufallszahl zwischen 0.0 und 1.0 ! Nicht das was du willst, gelle
 

JStein52

Top Contributor
Du kannst es so lösen:

Code:
        Random rand = new Random();
       
        int n= 10;
        int[] a;
        a = new int[n];
        for (int i = 0; i < n; i++) {
            a[i] = rand.nextInt(100);
            System.out.println(a[i]);
       }
dein Array a musst du auch elementweise ausgeben sonst wird die Ausgabe ein wenig kryptisch aussehen
 

neerual

Mitglied
Du kannst es so lösen:

Code:
        Random rand = new Random();
      
        int n= 10;
        int[] a;
        a = new int[n];
        for (int i = 0; i < n; i++) {
            a[i] = rand.nextInt(100);
            System.out.println(a[i]);
       }
dein Array a musst du auch elementweise ausgeben sonst wird die Ausgabe ein wenig kryptisch aussehen
Danke, soweit - ich bin nochmal in meine Unterlagen getaucht:
könnte ich das ganze vielleicht auch so lösen:

Code:
class Uebung04Aufgabe1 {
    public static void main(String[] args) {
        int n = Integer.parseInt(args[0]);
            if (n < 0) {
                System.out.println("n ist zu klein!");
                System.exit(0);
            } //works!!
        int N = Integer.parseInt(args[0]);
        double r = Math.random();
        int n = (int) (r * N);
        System.out.println(n);   
        //Ein int-Feld der Länge n wird erzeugt und mit Zufallszahlen aus dem Bereich 1,...,n             //gefüllt. Das Feld wird ausgegeben.
}
}

Das ist jetzt mein gesamter Code :D Ist natürlich alles unfertig, also da kommt noch einiges an Aufgabe dazu leider ;(
 

neerual

Mitglied
Danke, soweit - ich bin nochmal in meine Unterlagen getaucht:
könnte ich das ganze vielleicht auch so lösen:

Code:
class Uebung04Aufgabe1 {
    public static void main(String[] args) {
        int n = Integer.parseInt(args[0]);
            if (n < 0) {
                System.out.println("n ist zu klein!");
                System.exit(0);
            } //works!!
        int N = Integer.parseInt(args[0]);
        double r = Math.random();
        int n = (int) (r * N);
        System.out.println(n);  
        //Ein int-Feld der Länge n wird erzeugt und mit Zufallszahlen aus dem Bereich 1,...,n             //gefüllt. Das Feld wird ausgegeben.
}
}

Das ist jetzt mein gesamter Code :D Ist natürlich alles unfertig, also da kommt noch einiges an Aufgabe dazu leider ;(

Ich hab das letzte n zu m umbenannt und dann scheint es für mich zu funktionieren :)
 

Java4win

Aktives Mitglied
Wenn ich die Aufgabe richtig verstanden haben ist dies das was du haben möchtest...
Du hättest dir den ein oder anderen Schritt sparen können wenn du z.B. den double Wert aus Math.random direkt gecastet hättest.

Noch ein kleiner Tipp du könntest die Abfrage für die Länge des Arrays in eine while Schleife packen so dass das Programm erst weitergeht wenn ein gültiger Wert eingegeben wurde.

Schau dir am besten den folgenden Code einfach mal an und versuche ihn zu verstehen:)

Java:
int arrayLength = 4;   //4 ist nur ein Beispiel es könnte auch eine andere Zahl sein
int [] a = new int[arrayLength];

for (int i = 0; i  < arrayLength; i++){
    a[i] = (int)(Math.random * arrayLength) + 1;
    System.out.println(a[i]);
}

Gruß Java4win
 

temi

Top Contributor
Eine kleine Anmerkung dazu:

Java:
class Uebung04Aufgabe1 {
    public static void main(String[] args) {
        int n = Integer.parseInt(args[0]); //dieses...
            if (n < 0) {
                System.out.println("n ist zu klein!");
                System.exit(0);
            } //works!!
        int N = Integer.parseInt(args[0]); // ... und dieses sind identisch. Verwende doch gleich das "n" von oben
        double r = Math.random();
        int n = (int) (r * N); // würdest du das "n" nicht neu deklarieren ("int"), dann würde es auch so gehen...
        System.out.println(n); 
        //Ein int-Feld der Länge n wird erzeugt und mit Zufallszahlen aus dem Bereich 1,...,n             //gefüllt. Das Feld wird ausgegeben.
}
}
 

JStein52

Top Contributor
Die Anmerkung bzgl. Neudeklaration von int n verstehe ich nicht denn diese Neudeklaration ist schlicht und einfach falsch. Sagt aber auch der Compiler schon ...
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
Z Erste Schritte 9x9 Felder Erzeugen+Aufrufen Java Basics - Anfänger-Themen 1
E Wechselnde Felder erzeugen Java Basics - Anfänger-Themen 15
U HILFE! - per ActionListener Felder enablen....... Java Basics - Anfänger-Themen 5
M Werte in Felder speichern und geordnet ausgeben Java Basics - Anfänger-Themen 8
A Felder: arithmetisches und geometrisches Mittel Java Basics - Anfänger-Themen 3
L Datentypen Deklarierte Felder einer Generic Klasse bestimmen Java Basics - Anfänger-Themen 7
Elyt Bei Monopoly werden Felder übersprungen Java Basics - Anfänger-Themen 2
L Listen und Felder Java Basics - Anfänger-Themen 2
P Felder König array Java Basics - Anfänger-Themen 6
T Art 4 Felder Matrix Memory Java Basics - Anfänger-Themen 2
P Zugriff auf Felder in ArrayList Objekten Java Basics - Anfänger-Themen 2
D Felder Java Basics - Anfänger-Themen 2
D Übung Felder java Error kompilieren Java Basics - Anfänger-Themen 4
M Felder leer - überprüfen? Java Basics - Anfänger-Themen 2
S reflection und felder Java Basics - Anfänger-Themen 12
X Verknüpfte Excel Felder mitändern Java Basics - Anfänger-Themen 6
S Wie instanziert man Felder? Java Basics - Anfänger-Themen 11
V Zwei Felder Adderen Java Basics - Anfänger-Themen 2
W Methoden Falsche Felder von Methode belgegt Java Basics - Anfänger-Themen 14
M Spielfeld mit 10x10 Felder Java Basics - Anfänger-Themen 13
E Felder bei falscher Eingabe leeren Java Basics - Anfänger-Themen 8
S Felder mit Variablen/Tabellen verknüpfen! Java Basics - Anfänger-Themen 3
M Felder mit Methode verändern Java Basics - Anfänger-Themen 11
W Datentypen Felder mit Potenzen Java Basics - Anfänger-Themen 31
C Erste Schritte felder, die public final sind Java Basics - Anfänger-Themen 6
B Frage zur Effizienz - alle Array-Felder initialisieren oder jedes Feld auf null prüfen? Java Basics - Anfänger-Themen 4
C Felder(Größte Zahl, Index) Java Basics - Anfänger-Themen 6
K Felder Java Basics - Anfänger-Themen 5
M 3 Felder, Barcode, reinschreiben in die DB Java Basics - Anfänger-Themen 30
D Datentypen Felder: Deklaration und Initialisierung Java Basics - Anfänger-Themen 5
C Java Felder bearbeiten Hilfe Java Basics - Anfänger-Themen 4
H Felder mit unterschiedl. Typen sortieren Java Basics - Anfänger-Themen 5
B n-dimensionale Felder in m-dimensionale Felder konvertiert Java Basics - Anfänger-Themen 30
H felder vergleichen Java Basics - Anfänger-Themen 6
F Felder von aufrufender Klasse ändern Java Basics - Anfänger-Themen 16
A Felder Java Basics - Anfänger-Themen 7
A Mehrdimensionale Felder Java Basics - Anfänger-Themen 18
C Felder im Dialog zurücksetzen Java Basics - Anfänger-Themen 3
maddin86 Eine Methode für ein- und zweidimensionale double Felder als Parameter? Java Basics - Anfänger-Themen 5
A Felder- Minimum/Maximum Java Basics - Anfänger-Themen 2
D Felder Java Basics - Anfänger-Themen 7
D Felder Java Basics - Anfänger-Themen 2
T Border Layout alle mittleren felder gleich groß Java Basics - Anfänger-Themen 3
C Speicherverwaltung für Felder Java Basics - Anfänger-Themen 8
S EINDIMENSIONALE FELDER? Java Basics - Anfänger-Themen 23
G 3. Aufgaben und komme nicht weiter (Felder, Methoden) Java Basics - Anfänger-Themen 3
M Felder (Wo liegt der Fehler?) Java Basics - Anfänger-Themen 2
D Wie werden Felder grau? Java Basics - Anfänger-Themen 26
S generische Felder Java Basics - Anfänger-Themen 2
A Felder Java Basics - Anfänger-Themen 3
D String mit split teilen und leere Felder behalten Java Basics - Anfänger-Themen 4
R Felder unterschiedlichen Typs Java Basics - Anfänger-Themen 9
J 2 Felder aus DB selektieren u. in JList - eines verstecken? Java Basics - Anfänger-Themen 7
T Suche über mehrere Felder value = key = value Java Basics - Anfänger-Themen 3
B Array doppelt Felder löschen Java Basics - Anfänger-Themen 27
B clone(), Clonable und Felder von Interfacetypen Java Basics - Anfänger-Themen 3
G Felder kopieren Java Basics - Anfänger-Themen 8
G Felder-Länge Java Basics - Anfänger-Themen 2
G Felder zurückgeben? Java Basics - Anfänger-Themen 3
C Früheste Datum aus 3 Felder Java Basics - Anfänger-Themen 20
M Felder innerhalb eines Arrays vergleichen Java Basics - Anfänger-Themen 2
D Felder vergleichen Java Basics - Anfänger-Themen 14
D Verbindung von Methoden und Felder Java Basics - Anfänger-Themen 3
A Aus dem menü heraus andere Felder bearbeiten Java Basics - Anfänger-Themen 2
S Statische Felder - statische Methoden Java Basics - Anfänger-Themen 2
G variable felder in java? geht das? Java Basics - Anfänger-Themen 4
W Javadoc HTML erzeugen mit allen dependency Java Basics - Anfänger-Themen 11
J Delay erzeugen, ohne Programm zu blockieren Java Basics - Anfänger-Themen 7
Say abstract class und Objekt erzeugen - Dringend Hilfe Java Basics - Anfänger-Themen 10
BeginnerJava String mit vorgegebener Länge und Buchstaben erzeugen/ mit Leerstellen Java Basics - Anfänger-Themen 8
frager2345 Singleton-Muster Java ->Nur eine Instanz einer Klasse erzeugen können Java Basics - Anfänger-Themen 45
H Artefact mit Bild erzeugen Java Basics - Anfänger-Themen 11
E Rekursiv Objekte erzeugen - geht das? Java Basics - Anfänger-Themen 2
F Aus eingelesener Datei korrekt Objekte erzeugen Java Basics - Anfänger-Themen 5
D Hilfe beim Erzeugen eines Arrays NullPointerException wird ausgelöst Java Basics - Anfänger-Themen 11
C Runnable Jar-File erzeugen Java Basics - Anfänger-Themen 14
W Mehrfach das gleiche Attribut für ein Objekt erzeugen (mit verschiedenen Werten) Java Basics - Anfänger-Themen 2
Lena_2611 Vergleich von Array1 Index mit Array2 Wert und erzeugen eines neues Arrays Java Basics - Anfänger-Themen 8
C Instanzen, wann muss ich Instanzen erzeugen & wo?) Java Basics - Anfänger-Themen 23
S Erzeugen einer eindeutigen ID Java Basics - Anfänger-Themen 2
E Objekt durch Benutzer über Konsole erzeugen - Java Java Basics - Anfänger-Themen 3
L Simples Spielfeld erzeugen Java Basics - Anfänger-Themen 1
G Anklickbaren Text erzeugen Java Basics - Anfänger-Themen 2
I Object-Oriented Programming, Objekt erzeugen Java Basics - Anfänger-Themen 1
P Objekt aus String-Array erzeugen Java Basics - Anfänger-Themen 104
S Mit nextGaussian() positive Zahlen erzeugen? Java Basics - Anfänger-Themen 39
S Array erzeugen mit verschiedener Verteilung Java Basics - Anfänger-Themen 11
B Automatisch Objekte erzeugen mit verschiedenen Namen Java Basics - Anfänger-Themen 4
L Dynamische Anzahl an Arrays mit verschiedenen Namen erzeugen Java Basics - Anfänger-Themen 6
J Doppelte Ausgabe erzeugen Iterator Java Basics - Anfänger-Themen 6
N ArrayList in eigener Klasse erzeugen mit Zugriff Java Basics - Anfänger-Themen 7
K Methoden JTExtField mit Array erzeugen Java Basics - Anfänger-Themen 13
B Kann man eine Tabelle in Eclipse erzeugen und damit arbeiten? Java Basics - Anfänger-Themen 8
E Best Practice Jar-file mit zwei Klassen und externer Bibliothek über Konsole erzeugen Java Basics - Anfänger-Themen 13
I TextField Array mit for Loop erzeugen Java Basics - Anfänger-Themen 4
M Objekte mit einer Schleife mehrmals erzeugen Java Basics - Anfänger-Themen 17
G Objekt der selben Klasse wie selbst mit Aufrufen des Konstruktors erzeugen Java Basics - Anfänger-Themen 14
J Eindeutige Nummer (8 stellig) erzeugen Java Basics - Anfänger-Themen 9
C Instanz einer Klasse während if-Abfrage erzeugen und bei zweiter if-Abfrage wiederverwenden Java Basics - Anfänger-Themen 6
B OOP Objekt in IF erzeugen - funktioniert nicht so richtig Java Basics - Anfänger-Themen 11

Ähnliche Java Themen

Neue Themen


Oben