"Jesper Stocholm" <spam@stocholm.dk> skrev i en meddelelse
news:Xns91447CE657206spamstocholmdk@192.38.208.81...
> Jeg har en telefonkæde, der er datamæssigt struktureret som et binært
træ -
> dvs. således at hver deltager skal ringe til max to andre deltagere:
<SNIP>
> men hvordan får jeg udskrevet disse data, så det kommer til at fremstå som
>
> 1
> 2 3
> 4 5 6 7
> 7 8 10 11
Så vidt jeg kan se (idet jeg retter din slåfejl, så tredje række starter med
ID=8) skal du beregne første ID i hver linje efter nedenstående formel.
Samtidig kan antallet af deltagere i hver række også beregnes efter samme
formel, hvilket du får brug for, hvis du vil formattere kæden op i kolonner
i en tabel
ID = 2 ^ (rækkenummer - 1) = antal deltagere i rækken
Du burde så v.hj. af et loop, der løber dit recordset igennem, og en
integreret tæller kunne udskrive din telefonkæde. Måske lidt a la følgende
(utestet):
<%
raekke = 0
do while not rs.eof
raekke = raekke + 1
startID = 2 ^ (række - 1)
' sidste deltager, der skal skrives i den aktuelle række, er den, der står
umiddelbart før den første i næste række
slutID = (2 ^ række) - 1
for taeller = startID to slutID
if rs.eof then
exit for
else response.write(rs(taeller) & " ")
rs.movenext
end if
next
response.write("<BR>")
loop
%>
Jeg vil gerne høre, om det virker...
Med venlig hilsen
Thomas Rathcke