Methoden Eindimensionale Arrays

Stefan309

Mitglied
Hallo liebes Forum,
mir ist folgende Aufgabe und Lösung gegeben:
1. Gib den Wert des kleinsten Elements von einem Array zurück
2. Gib den kleinsten Abstand zweier benachbarter Elemente zurück
Lösungen:
1.
Java:
    public static double minElement( double Feld[]){
        double minimum = Feld[0];
        for(int i = 0; i < Feld.length; i++){
            if(minimum > Feld[i]){
                minimum = Feld[i];
            }
        }
        return minimum;
    }
2.
Java:
    public static double bestimmeKleinstenAbstand(double feld[]){
        double abstand_zwischen[] = new double[feld.length-1];
       
        for(int i = 0;i<feld.length-1;i++){
            abstand_zwischen[i] = Math.abs(feld[i] - feld[i+1]);
        }
        return minElement(abstand_zwischen);
    }

Nun zu meiner eigentlichen Frage. Ich verstehe nicht wieso man bei der zweiten Methode ein Array erstellt dessen länge feld.length -1 ist. Desweiteren wird in der For-Schleife solange iteriert bis i kleiner ist als feld.length -1. Bei der ersten Methode hingegen wurde in der For-Schleife iteriert bis i kleiner ist als feld.length. Wieso wird das so gemacht?

Liebe Grüße Stefan
 
Zuletzt bearbeitet von einem Moderator:
Angenommen, das Array enthält vier Elemente. Dann interessieren hier die Abstände zwischen dem ersten und dem zweiten, dem zweiten und dem dritten und zwischen dem dritten und dem vierten Element. Für vier Elemente hat man also nur drei Abstände zwischen benachbarten Elementen. Das ist die Begründung für beide Fragen.
 
Angenommen, das Array enthält vier Elemente. Dann interessieren hier die Abstände zwischen dem ersten und dem zweiten, dem zweiten und dem dritten und zwischen dem dritten und dem vierten Element. Für vier Elemente hat man also nur drei Abstände zwischen benachbarten Elementen. Das ist die Begründung für beide Fragen.

Hallo Meniskusschaden,
danke für den Tipp! Jetzt kann ich es nachvollziehen!
Mit freundlichen Grüßen
Stefan
 

Zurück
Oben