none
Delphi in VB übersetzen RRS feed

  • Frage

  • Hallo.

    Kann mir bitte jemand diese Delphi-Zeile

      Result:=DeltaX+DeltaY-((DeltaX+1) div 2)+Integer(Odd(DeltaX) and ((Odd(P1.X) and (P1.Y > P2.Y))or (not Odd(P1.X) and (P1.Y < P2.Y))))


    in VB übersetzen. Ich sehe gerade den Wald durch die ganzen ODD-Anweisungen nicht.

    Vielen Dank
    Jan

     

    Sonntag, 31. Juli 2011 14:44

Antworten

  • Hallo Jan,

    zunächst kannst Du Dir eine Odd Methode bauen. Ob eine Zahl gerade oder ungerade ist, lässt sich mit dem Modulus Operator ermitteln:

    Function Odd(ByVal value As Integer) As Boolean
     Return (value Mod 2 <> 0)
    End Function
    

    Dann fällt die Übersetzung relativ leicht:

    Result=DeltaX+DeltaY-((DeltaX+1) \ 2)+CInt(Odd(DeltaX) and ((Odd(P1.X) and (P1.Y > P2.Y))or (not Odd(P1.X) and (P1.Y < P2.Y))))
    

    Thorsten Dörfler
    Microsoft MVP Visual Basic
    vb-faq.de
    Sonntag, 31. Juli 2011 15:38

Alle Antworten

  • Hallo Jan,

    zunächst kannst Du Dir eine Odd Methode bauen. Ob eine Zahl gerade oder ungerade ist, lässt sich mit dem Modulus Operator ermitteln:

    Function Odd(ByVal value As Integer) As Boolean
     Return (value Mod 2 <> 0)
    End Function
    

    Dann fällt die Übersetzung relativ leicht:

    Result=DeltaX+DeltaY-((DeltaX+1) \ 2)+CInt(Odd(DeltaX) and ((Odd(P1.X) and (P1.Y > P2.Y))or (not Odd(P1.X) and (P1.Y < P2.Y))))
    

    Thorsten Dörfler
    Microsoft MVP Visual Basic
    vb-faq.de
    Sonntag, 31. Juli 2011 15:38
  • Hallo Thorsten,

    vielen Danke für die schnelle Hilfe.

    Gruß
    Jan

     

    Sonntag, 31. Juli 2011 16:19