maximum einer Zahlenfolge in Java ermitteln?

1 Antwort

Vom Fragesteller als hilfreich ausgezeichnet

Tach,

deine Exception rührt daher, dass deine Iteration scheinbar zu oft durch den Array läuft, um es kurz zusagen, du versuchst einen Index, eine Stelle in deinem Array, aufzurufen, welche allerdings garnicht existiert.

kurzes Example: du hast einen Array z.B. [1,5,2,3,9], dann hast du die folgende Indexierung [0,1,2,3,4,5], wenn du nun auf den Index 6 oder größer zugreifst, dann bekommst du deine oben gezeiget Exception.

Um deine Frage zubeantworten und deinen Code etwas simpler zugestallten, kannst du eine for Schleife nutzen und immer deine aktuell größte Zahl extern in einer Variable speichern.

Ein freihand example könnte so ähnlich ausschauen:

int[] userInput = (cast zum int array) Tastatur.liestEin()

int highestNumber;
for(int numberToEvaluate : userInput) {
  if highestNumber < numberToEvaluate {
    highestNumber = numberToEvaluate 
  }
}
print(highestNumber)

Solltest du noch weitere Fragen haben, kannst du gerne ein Kommentar hinterlassen bzw. wir versuchen via Discord etc. Kontakt aufzunehemen.

Gruß

Alexander

Woher ich das weiß:Berufserfahrung

GolDBach47 
Fragesteller
 12.11.2021, 18:46

Vielen Dank Alexander. Habe die Abkürzung des Algorithmus verstanden und angewandt. Und durch deinen Hinweis habe ich auch bemerkt dass folge[i+1] den fehler verursacht. Habe das +1 dann streichen können für die Schleife. Dankeschön und schönen Abend noch! Aber eine Frage hätte ich noch, falls Sie diese beantworten möchten. Bei Ihnen steht, dass Sie mit sowas im Beruf zutun haben. Als was sind Sie denn genau tätig?

0
Alexander1604  12.11.2021, 19:00
@GolDBach47

Hey,

es freut mich zuhöhren, dass du mit meinem kleinen Beispiel etwas anfangen konntest und auch den Fehler bzgl. der Exception gefunden hast.

Zu deiner zweiten Frage, ich bin persönlich in der Softwareentwicklung tätig.

0