1. Dashboard
  2. Mitglieder
    1. Letzte Aktivitäten
    2. Benutzer online
    3. Team
    4. Mitgliedersuche
  3. Forenregeln
  4. Forum
    1. Unerledigte Themen
  • Anmelden
  • Registrieren
  • Suche
Alles
  • Alles
  • Artikel
  • Seiten
  • Forum
  • Erweiterte Suche
  1. AutoIt.de - Das deutschsprachige Forum.
  2. Mitglieder
  3. JanSka

Beiträge von JanSka

  • For Schleife 2d

    • JanSka
    • 14. Juli 2019 um 15:22
    Zitat von alpines

    Du musst auch $x1 einen Startwert zuweisen, ohne geht das nicht. For $variable = Startwert To EndWert [Step Schritt]

    Und bitte beantworte meine Frage von vorhin:

    Daran lag es, vielen Dank nochmal alpines.

    Das ganze soll später eine Art Taschenrechner werden, mit dem man verschiedene geometrische Berechnungen durchführen kann. Das wird mir beim technischen Zeichnen helfen.

  • For Schleife 2d

    • JanSka
    • 14. Juli 2019 um 15:05

    Danke für eure schnellen Antworten.

    Der Fehler liegt allerdings nicht in der If Bedingung. Ich habe im Forumbeitrag hier vergessen die $ zu setzen, weil ich die Formel kurz aus dem Internet kopiert habe, aber selbst wenn ich die If Bedingung ganz entferne und eine einfache MsgBox ausgebe, kommt der Fehler.

    Test.PNG

  • For Schleife 2d

    • JanSka
    • 14. Juli 2019 um 14:36

    Danke für deine Antwort alpines.

    Ich bin mir die Iteration nochmal durchgegangen und du hast Recht, er geht durch jede Koordinate.

    Allerdings erhalte ich nun bei den For Schleifen die Fehlermeldungen:

    error: syntax error

    error: statement cannot be just an expression


    Mein Ziel:

    Ich habe 2 Koordinaten (px1, py1) & (px2, py2) und dann zusätzlich noch die 2 Koordinaten (x1,y1) & (x2,y2) , die einen Koordinatenbereich darstellen sollen und durch die ich, wie oben beschrieben, mit der For Schleife iterieren möchte.

    Mein Ziel ist es, herauszufinden ob die 2 gegebenen Punkte (px1, py1) & (px2, py2) zu irgendeinem der Punkte zwischen dem Bereich (x1,y1) & (x2,y2) Linear ist. Wenn irgendein Punkt aus dem Bereich  (x1,y1) & (x2,y2) Linear zu den Punkten (px1, py1) & (px2, py2) ist, soll die MsgBox erscheinen. Die If Bedingung sagt mir ober ein die 3 Punkte Linear sind oder nicht, allerdings muss ich durch den gesamten Bereich (x1,y1) & (x2,y2) iterieren.


    So sieht mein Code aus, die Koordinaten sind in diesem Beispiel frei erfunden, da ich die richtig aktuell nicht da habe.

    Code
    $px1 = 30
    $py1 = 30
    $px2 = 60
    $py2 = 76
    $x1 = 15
    $y1 = 34
    $x2 = 52
    $y2 = 66
    
    For $x1 To $x2 Step +1         ;hier kommt die Fehlermeldung
    
        For $y1 To $y2 Step +1     ;hier kommt die Fehlermeldung
    
            If ((y1 - py2)*(px2 - px1) == (py2 - py1)*(x1 - px2)) Then    ;prüft ob Linear
                MsgBox(0, "Titel", "Ist Linear")
            EndIf
    
        Next
    
    Next
    Alles anzeigen
  • For Schleife 2d

    • JanSka
    • 14. Juli 2019 um 00:14

    Hallo,

    ich habe 2 Koordinaten herausgefunden, einmal die obere Linke Ecke und einmal die untere Rechte Ecke.

    Nun möchte ich durch jede mögliche Spalten und Zeilenkombination mit einer For Schleife iterieren.

    Nehmen wir als Beispiel folgende Koordinaten:

    Code
    $x1 = 5
    $y1 = 10
    $x2 = 20
    $y2 = 40

    Ich hab zunächst eine verschachtelte Schleife verwendet, aber dann ist mir aufgefallen dass er dann garnicht durch alle möglichen Koordinaten iteriert.

    Code
    For $x To $x2 Step +1
        For $y To $y2 Step +1
            If (Meine Bedingung True) Then
                ;tue was
            EndIf
        Next
    Next

    Ich habe nun irgendwo gelesen dass ich ein 2 Dimensionales Array brauche mit der Anzahl der Spalten und den Zeilen:

    Code
    local $array[x2-x1][y2-y1]

    Doch wie verwende ich das nun in meiner For-Schleife?


    Danke.

Spenden

Jeder Euro hilft uns, Euch zu helfen.

Download

AutoIt Tutorial
AutoIt Buch
Onlinehilfe
AutoIt Entwickler
  1. Datenschutzerklärung
  2. Impressum
  3. Shoutbox-Archiv
Community-Software: WoltLab Suite™