Informatik Java?

2 Antworten

Vermutlich sollst du das schon verbinden. Mach einfach eine Schleife in der du mit dem Index 9 anfängst und dann davon immer 1 abziehst bis du bei Index 0 angekommen bist

public static void main(String[] args) {
    int[] zahlen = new int[10];

    for(int i = 0; i < zahlen.length; i++){
        zahlen[i] = i * i;
        System.out.println(zahlen[i]);
    }
    for(int i = 9; i >= 0; i--){
        System.out.println(zahlen[i]);
    }
}

So hätte ich die Aufgabe verstanden.

Da die Zahlen schon quadriert in den Array gegeben werden, ist es sinnlos, sie nochmal zu quadrieren. Es sei denn, es sind zwei Arrays notwendig.

Woher ich das weiß:Berufserfahrung – > 20 Jahre in der Softwareentwicklung
EinstNewt142 
Fragesteller
 29.04.2024, 13:08

Aber warum ist i kleiner als zahlen.lenght ?

Woran erkennt man, dass es größer oder kleiner ist?

0
cleanercode  29.04.2024, 14:17
@EinstNewt142

i ist kleiner als die Arraylänge, weil du es im Schleifenkopf mit 0 initialisierst.

for(int i = 0;

Du weißt ja, dass der Array größer Null ist - da du den Array vorab mit Werten füllst.

1
EinstNewt142 
Fragesteller
 29.04.2024, 18:19
@cleanercode

Also ist i quasi immer kleiner?

Und ist zahlen.lenght die Anzahl an "Schubladen". Also bei einem max. Index von 5 ist zahlen.length 6?

0
cleanercode  29.04.2024, 19:13
@EinstNewt142

Je nachdem, ob du ein In- oder Dekrement hast, hat i den entsprechenden Startwert.

Length sagt, wie viele Werte sich im Array befinden. 10 Werte, Index 0 bis 9.

Ein Informatiker zählt ab 0, nicht ab 1 :)

1
EinstNewt142 
Fragesteller
 29.04.2024, 19:41
@cleanercode

Ok, danke.

Aber wir haben damals eine Aufgabe bearbeitet mit einem erzeugten Feld von 6 Elementen.

Bei der Schleife stehr dann

For(int i = 0: i<=5 ; i++)

Sollte es nicht kleiner gleich 6 sein? Weil wir haben ja 6 elemente

0
cleanercode  29.04.2024, 19:51
@EinstNewt142

Wenn du glänzen möchtest, schmeiß den Debugger an und schaue, was in array.length steht :)

Bei 6 Elementen hast du 5 Indizes.

0
EinstNewt142 
Fragesteller
 29.04.2024, 23:02
@cleanercode

Hätte man im Code nach i=9 auch i>zahlen.lenght schreiben können?

0
EinstNewt142 
Fragesteller
 29.04.2024, 23:01

Hätte man nach i=9 auch i>zahlen.lenght schreiben können?

0