webForumDet fria alternativet
Logga in / Bli medlem

Avancerad loop?

ASP

6 svar · 217 visningar · startad av saw

Medlem sedan mars 20011 880 inlägg
Trådstart#1

Bara mest för skoj skull, så försöker jag att skriva ut ascii-tabellen. Nu är det ju så, att den gör många hop i numrena. Den går ifrån :
33 - 383
402
416 - 417
431 - 432
461 - 476
osv alltså en massa hop.
Om jag skriver som vanligt:
For i = 33 TO 500 så får jag ju åxå med dom tomma luckerna (som bara skriver ut fyrkant.
Kan man på något sätt komma förbi detta problem?

Medlem sedan dec. 19998 577 inlägg
#2

Bara att ändra värdet av i där det blir en lucka:

For i = 33 To 476
'gör dina saker här
If i = 383 Then i = 401
If i = 402 Then i = 415
If i = 417 Then i = 430
If i = 412 Then i = 460
'OSV
Next

Mvh, Vide

Medlem sedan mars 20011 880 inlägg
#3

Jo jag kom så lång åxå, men TO-värdet?
Om jag försöker med att ändra det i if-satsen så för jag fel!!

Medlem sedan dec. 200012 464 inlägg
#4
i = cint(33)
while i <= 476
'gör dina saker här
If i = 383 Then 
   i = 401
elseif i = 402 Then 
   i = 415
elseif i = 417 Then 
   i = 430
elseif i = 412 Then 
   i = 460
else
   i = i + 1
end if
wend
Medlem sedan dec. 19998 577 inlägg
#5

Eller varför inte: ;)

For i = 33 To 476
'gör dina saker här
Select Case i
Case 383
i = 401
Case 402
i = 415
Case 417
i = 430
Case 412
i = 460
End Select
Next

To värdet kan du inte ändra i efterhand, men du kan när som helt anrop "Exit For" för att hoppa ur loopen... t.ex om värdet överstiger 500:

For i = 33 To 476
'gör dina saker här
Select Case i
Case 383
i = 401
Case 402
i = 415
Case 417
i = 430
Case 412
i = 460
Case 500
Exit For
End Select
Next
Medlem sedan mars 20011 880 inlägg
#6

Jag har försökt så här, men det lyckas inte alls:

Dim i,j,k

iNr=33
j=33
k=383

response.write "<table border=1><tr><td>"

For i = j TO k
If i = 383 THEN
j = 402
k = 403
ElseIf i = 403 THEN
j = 416
k = 417
ElseIf i = 417 THEN
j = 431
k = 432
ElseIf i = 432 THEN
j = 461
k = 476
End If

iNr=iNr+1
Response.Write "<TD><FONT SIZE=2>" & i & " = " & "&#" & i &";" & "</FONT></td>"

If iNr=53 Then
response.write "</td></tr><tr><TD>"
iNr=33
End If
Next
response.write "</FONT></tr></td></table>"
Den stanar efter första if-satsen, varför? :q

Medlem sedan dec. 19998 577 inlägg
#7

därför att To-värdet är satt till det värdet... och så slutar satsen... du får sätta k-värdet till det högsta AscII-värdet...

265 ms totalt · 4 externa anrop · v20260731065814-full.51f67c91
121 ms — deklarationer (db)
0 ms — hämta statistik (cache)
139 ms — hämta tråd, inlägg och bilagor (db)
124 ms — ändringar (db)