Jump to content

Empfohlene Beiträge

Geschrieben

Hallo,

ich habe ein Script, das sich in mehrere Blöcke aufteilt die nacheinander abgearbeitet werden sollen.
Je nach Anbangsbedingung soll an einer bestimmten Stelle jedoch abgebrochen werden...

Ein einfaches Beispiel wäre:
 

function test(x)
if x==0 then return end 
print("Block1")
if x==1 then return end
print("Block2")
if x==2 then return end
print("Block3")
if x==3 then return end
print("Block4")
if x==4 then return end
print("Block5")
end

test(1):
Block1

test(4):
Block1
Block2
Block3
Block4

test(5):
Block1
Block2
Block3
Block4
Block5

test(0):
sofortiger Abbruch

... gibt es da noch eine andere Vorgehensweise, wie man das umsetzen könnte (... ohne if... if... if ..)

Gruß
EASY

Geschrieben
tab = {
 function() print("Block 1") end,
 function() print("Block 2") end,
 function() print("Block 3") end,
 function() print("Block 4") end,
 function() print("Block 5") end
}

function test(x)
  for i=1, x do
    tab[i]()
  end
end

test(1)
print()
test(4)
print()
test(5)
print()
test(0)

:D

Geschrieben (bearbeitet)

Deine Tabelle ist okay, Andy, aber die Konstruktion deiner Testfunktion entspricht nicht dem, was EASY sucht.

Mein Fehler! Deine Funktion arbeitet richtig, meine hingegen falsch! (Nach dem vierten Mal hinschauen habe ich es dann endlich begriffen. :D )

Sorry!

Bearbeitet von Goetz
Falschaussage korrigiert

Erstelle ein Benutzerkonto oder melde dich an, um zu kommentieren

Du musst ein Benutzerkonto besitzen, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen.

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde dich hier an.

Jetzt anmelden
×
×
  • Neu erstellen...