Announcement

Collapse
No announcement yet.

Größtes element in einem array auslesen und ausgeben

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Größtes element in einem array auslesen und ausgeben

    Hi, zusammen ich stehe mal wieder auf dem schlauch, ich versuche aus einem array das größte Element auszugeben, bekomme aber nur alle werte des arrays im cmd ausgegeben. Bin mir nicht sicher was ich falsch mache. Hier der Code falls einer 'ne idee hat...



    Imports System.Console

    Module abc
    Sub Main()
    Dim aInt() as Integer = {19, 125, 43, 200, 11, 2, 48}
    Dim i as short

    Writeline()
    Write("Das größte Element hat den Wert: ")
    For i = 0 to aInt.GetUpperBound(0)
    Write("{0,2}", aInt(i))
    Next

    Writeline()
    End Sub
    End Module
    Zuletzt editiert von Christian Marquardt; 07.01.2014, 18:48.

  • #2
    Hallo,

    Vielleicht hilft dir 'Array.Sort(arrayname)' weiter.
    *-- robert.oh. --*

    Comment


    • #3
      Hallo.

      Vielleicht hilft die konventionelle Methode, ein Maximum aus einem Array zu ermitteln, hier weiter:
      -for-Schleife definieren
      -Variable 'max' mit Null initialisieren
      -max Variablen den ersten Wert des Arrays zuweisen
      -in der for-Schleife dann das Array durchlaufen und prüfen, ob max grösser oder gleich dem aktuellen Arraywert ist. Wenn nein, wird max mit dem höheren Arraywert belegt
      -max ausgeben
      MfG
      Cheat-Sheets for Developers / Programming Quotes

      Comment


      • #4
        @Markus Lahr, danke für den tipp jatzt erhalte ich aber einen Laufzeitfehler, steh immer noch auf dem Schlauch.....
        danke für die hilfe...
        dracoulars
        '-------------------------CODE----------------------------------------------
        Imports System.Console

        Module abc

        Sub Main()

        Dim ac() as integer = {19, 125, 43, 200, 11, 2, 84}
        Dim MAX as integer

        for MAX = 0 to ac.GetUpperBound(0) +1
        if ac(MAX) >= ac(MAX+1).toString then
        end if
        next
        write("das größte element hat den wert: ")
        write("{0}", ac(MAX))



        End Sub
        End Module

        Comment


        • #5
          Hallo,

          Probiers mal auf diese Art:

          Code:
          Dim ac() as Integer = {19, 125, 43, 200, 11, 2, 84}
          Dim MAX as Integer = 0
          Dim currentNo as Integer
           
          for currentNo = 0 to ac.Length
             If MAX < ac(currentNo) Then
                 MAX = ac(currentNo)
             End If
          next
           
          Console.WriteLine(...)
          Eventuelle Schreibfehler bitte zu entschuldigen, da ich normalerweise mehr mit C# unterwegs bin


          Wenn du .NET 2.0 oder hoeher verwendest wuerden sich die Verwendung von Generics anbieten, zB eine SortedList<int>, diese ist automatisch sortiert und noch dazu strongly typed - also du kannst dir sicher sein, dass sie nur int-Werte (in diesem Fall) enthaelt.
          *-- robert.oh. --*

          Comment


          • #6
            @robert.oh.
            Vielen dank hat wunderbar geklappt!
            VG
            dracoulars

            Comment

            Working...
            X