Indirekte "GOTO- Anweisung"

  • Ich würde gerne in Karel einen Sprungbefehl indirekt programmieren.

    In TPE sieht das z.B. so aus:


    JMP LBL[R[Zielmarke]]


    Ist dies auch in Karel möglich? Die "Zielmarke" bekomme ich als Argument aus dem Übergeordneten Programm übergeben.


    GOTO [Zielmarke] funktioniert leider nicht.


    Irgendwie steh ich grad aufm Schlauch.

  • ANZEIGE
  • So habe ich es bisher:

    IF "eingelesenes Argument"=1 THEN GOTO x1

    ENDIF

    Da es sich teilweise um sehr viele DI`s handelt die hier ausgewertet werden müssen möchte ich an der Stelle einfach nur:

    GOTO ["eingelesenes Argument"]

    stehen haben.

  • Hallo Carsten,

    ich habe es zwar noch nicht probiert aber vielleicht kannst du dein Argument umwandeln in ein String und dann mit der variable arbeiten?

    ... umgefährt so.. conv_int_str (AR1_int,0,0,AR1_str)...AR1_str=Sub_str(AR1_str,2,4)... goto AR1_str..

  • Hallo Rob76,

    natürlich ist die Version von Hermann eleganter und sollte im normalen fall genutzt werden.

    Aber ich weiß ja nicht wie der Rest seines Programms aussieht. Außerdem geht es mir nur darum zu testen ob dieses funktionieren würde.


    Wenn man immer nur das verwendet was man schon kennt kommt man nicht weiter.

Erstelle ein Benutzerkonto oder melde dich an um zu kommentieren

Du musst ein Benutzerkonto haben um einen Kommentar hinterlassen zu können

Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Geht einfach!
Neues Benutzerkonto erstellen
Anmelden
Du hast bereits ein Benutzerkonto? Melde dich hier an.
Jetzt anmelden