Java Array Wert an bestimmtem Index angeben

melisax

Mitglied
Hallo zusammen,

Die Aufgabe lautet: Deklariere einen Array intArray vom Typ int mit der Größe 10. Initialisieren die Werte mit 0 und an jedem dritten Index mit 1.

Ausgabe: 0010010010

Meine einfache Lösung:
int [] intArray ={0,0,1,0,0,1,0,0,1,0};

for (int zahlen : intArray) {
System.out.println(zahlen + " ");
}

Aber wie könnte man die Aufgabe mit einer for Schleife lösen, wo an jedem dritten Index 1 ist, geht das überhaupt?
 
In Java können Sie ein Array vom Typ int mit der Größe 10 wie folgt deklarieren und initialisieren:

int[] intArray = new int[10];

Und an jedem dritten Index mit 1:

Java:
for (int i = 0; i < intArray.length; i++) {
    intArray[i] = 0;
}

intArray[2] = 1;
intArray[5] = 1;
intArray[8] = 1;

In der ersten Zeile deklarieren wir ein Array vom Typ int mit dem Namen intArray und legen seine Größe auf 10 fest. In der for-Schleife setzen wir jeden Wert des Arrays auf 0. Dann setzen wir den Wert an der Stelle 2, 5, 8 des Arrays auf 1, da die Indizes bei 0 beginnen.

Wenn Sie es vorziehen, können Sie das Array auch in einer einzigen Zeile initialisieren:

int[] intArray = new int[]{0,0,1,0,0,1,0,0,1,0};

Dieser Code erstellt auch ein Array mit der Größe 10 und setzt jeden dritten Wert auf 1 und alle anderen auf 0.
 
In Java können Sie ein Array vom Typ int mit der Größe 10 wie folgt deklarieren und initialisieren:

int[] intArray = new int[10];

Und an jedem dritten Index mit 1:

Java:
for (int i = 0; i < intArray.length; i++) {
    intArray[i] = 0;
}

intArray[2] = 1;
intArray[5] = 1;
intArray[8] = 1;

In der ersten Zeile deklarieren wir ein Array vom Typ int mit dem Namen intArray und legen seine Größe auf 10 fest. In der for-Schleife setzen wir jeden Wert des Arrays auf 0. Dann setzen wir den Wert an der Stelle 2, 5, 8 des Arrays auf 1, da die Indizes bei 0 beginnen.

Wenn Sie es vorziehen, können Sie das Array auch in einer einzigen Zeile initialisieren:

int[] intArray = new int[]{0,0,1,0,0,1,0,0,1,0};

Dieser Code erstellt auch ein Array mit der Größe 10 und setzt jeden dritten Wert auf 1 und alle anderen auf 0.
Und was ist wenn es statt 10 50 sind, muss ich dann für jeden Index das so einzelnd aufschreiben?
 
Sie können jeden dritten Index eines int-Arrays auf 1 setzen, indem Sie eine for-Schleife verwenden und den Index mit einer modulo-Operation überprüfen. Hier ist ein Beispiel:

Java:
int[] intArray = new int[10];

for (int i = 0; i < intArray.length; i++) {
    if (i % 3 == 2) {
        intArray[i] = 1;
    }
}

Edit: Wenn der 0-Index nicht beachtet werden soll, beginnen Sie die for-Schleife bei 1:

for (int i = 1; i < intArray.length; i++)
 
Eine andere Möglichkeit wäre freilich auch, wenn das Array schon initialisiert ist:

Java:
for (int i = 2; i < intArray.length; i+=3) {
    intArray[i] = 1;
}
 
Sorry, ein Teil meiner Antworten wurden mithilfe von Chat gpt erstellt. 😵 Ich habe die aber auf Plausibilität überprüft. Man möge es mir nachsehen.
Ich habe die Methode verwendet:

intArray = new int [4];

for (int i = 0; i< 4; i++){
if (i%3 ==2) {
intArray = 1;
System.out.println (intArray);
}
}
Aber die Ausgabe zeigt: 10010 anstatt 0010 wie kann man das korrigieren?
 
wie kann man das korrigieren?

In etwa so:

Java:
    public static void main(String[] args) {
        int[] intArray = new int[10];
        for (int i = 1; i < intArray.length; i++) {
            if ((i - 1) % 3 == 1) {
                intArray[i] = 1;
                System.out.println(Arrays.toString(intArray));
            }
        }
    }

Aber ich möchte darum bitten, während des weiteren Verlaufs, Code-Tags zu verwenden...
 
Weshalb? Sie entsprechen exakt der Antwort, die ich auch gegeben hätte...
Frag z.B. ChatGPT danach. Dann bekommst Du:
Additionally, if you're copying and pasting the answer in a text, it is also good practice to add a reference link to the OpenAI website where the model is hosted. This not only gives credit to the creators of the model, but also allows others to easily access the source and verify the information provided.

Es ist eine gute Angewohnheit, Quellen zu nennen.

Und zu guter letzt: Du interagierst hier mit anderen Leuten. In einem Thread zu ChatGPT war die Meinung diesbezüglich eigentlich einstimmig.

Und eine kleine Notiz am Rande: An anderen Stellen sind ChatGPT Antworten gebannt worden, z.B. Stackoverflow:
 

Neue Themen


Zurück
Oben