18. september 2005 - 19:58Der er
14 kommentarer og 1 løsning
rekursiv funktion
hej!
hvorfor kan jeg ikke få denne til at kalde rekursivt
function GetValue(t) if t(0) > 600 OR t(1) > 600 then if t(0) > 600 then t(0) = t(0) / 2 t(1) = t(1) / 2 GetValue(t) else t(0) = t(0) / 2 t(1) = t(1) / 2 GetValue(t) end if end if end function
Den bliver kun kaldt en gang. dvs at hvis jeg har nogle tal som hedder 1500 og 1300, så bliver resultate kun 750 og 650
Kommunerne har digitaliseret indgangen for borgerne. Men bag skærmen håndteres mange arbejdsgange stadig manuelt mellem systemer, mails og organisatoriske siloer.
Prøv at sætte ByRef på, og så skal det desuden være en Sub i stedet for en Function eftersom den ikke har et retur-resultat:
sub GetValue(ByRef t) if t(0) > 600 OR t(1) > 600 then if t(0) > 600 then t(0) = t(0) / 2 t(1) = t(1) / 2 GetValue(t) else t(0) = t(0) / 2 t(1) = t(1) / 2 GetValue(t) end if end if end sub
BTW. Du er vel klar over adt de to blokke i den indre if-then-else begge to gør det samme...
if t(0) > 600 OR t(1) > 600 then if t(0) > 600 then t(0) = t(0) / 2 t(1) = t(1) / 2 GetValue(t) else t(0) = t(0) / 2 t(1) = t(1) / 2 GetValue(t) end if end if end sub
if t(0) > 600 OR t(1) > 600 then if t(0) > 600 then t(0) = t(0) / 2 t(1) = t(1) / 2 GetValue(t) else t(0) = t(0) / 2 t(1) = t(1) / 2 GetValue(t) end if end if end sub
if t(0) > 600 OR t(1) > 600 then if t(0) > 600 then t(0) = t(0) / 2 t(1) = t(1) / 2 GetValue(t) else t(0) = t(0) / 2 t(1) = t(1) / 2 GetValue(t) end if end if
Response.Write "DEBUG #3: t0=" & t(0) & ", t1=" & t(1) & "<br>" end sub
if t(0) > 600 OR t(1) > 600 then if t(0) > 600 then t(0) = t(0) / 2 t(1) = t(1) / 2 Call GetValue(t) else t(0) = t(0) / 2 t(1) = t(1) / 2 Call GetValue(t) end if end if end sub
Mange takker, men så har jeg jo lært noget nyt, at man skal skrive call foran kald til Subs!
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.