webForumDet fria alternativet

Goto?

4 svar · 179 visningar · startad av oJones

oJonesMedlem sedan dec. 200154 inlägg
#1

Har en hel hop IF satser och när det inte går som det ska
(typ
X = 1
IF X = 2 Then ...
)

så vill jag att den börjar om.
Ungefär som gamla basic tiden när man kunde göra en GOTO.

Typ IF X = 2 Then GOTO start

Hänger ni med i min luddiga beskrivning?
Grejjen är den att det här "GOTO" kommandet ska fungera hela vägen. så om det strular i tredje IF satsen så ska den likförbaskat börja om från "början".

Observera att jag _inte_ vill ladda om sidan. Är det möjligt?

LarsGMedlem sedan dec. 200012 464 inlägg
#2

Du kan väl simulera lite

finsihed = false
do until finished
do until finished
'
if x = 2 then exit do
'
finished = true
loop
loop

------------------
essentitia preter non sans multiplicandum

[Redigerat av LarsG den 19 dec 2001]

oJonesMedlem sedan dec. 200154 inlägg
#3

Varför två st do until finished och två loop?

Hmm, vad jag vill är följande:
--

borjan

Randomize
Z = Int(Rnd * 5)
Y = Int(Rnd * 5)
X = Int(Rnd * 5)

' Nu blev talen (i teorin) :
'Z = 1
'Y = 2
'X = 3

If Z = 5 Then
GOTO borjan
Else
If Y = 6 Then
GOTO borjan
Else
If X = 4 Then
Response.Write "Det fungerar"

Else GOTO borjan

---
GOTO funktionen finns dock inte i verkligheten..

LarsGMedlem sedan dec. 200012 464 inlägg
#4

I ditt fall räcker det med en loop

randomize
do until false
Z = Int(Rnd * 5)
Y = Int(Rnd * 5)
X = Int(Rnd * 5)
If Z <> 5 and Y <> 6 and X = 4 then exit do
loop

Om du måste ha flera if så behöver du båda looparna.

------------------
essentitia preter non sans multiplicandum

oJonesMedlem sedan dec. 200154 inlägg
#5

Min kod var ett exempel =)

Vet inte riktigt hur jag ska peta in looparna o allting i den..

Ingen som har ngt förslag?

[Redigerat av oJones den 20 dec 2001]

139 ms totalt · 3 externa anrop · v20260731065814-full.fb544a5a
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
136 ms — hämta tråd, inlägg och bilagor (db)