Try this out...

<cfset thelist = "0,8,16">
<!---Seed the list with values, by default the first element is the last 
value in the list, and all of the others are the first value in the 
list, could also be set manually--->
<cfset p1 = listlast(thelist)>
<cfloop index="lp" from="2" to="#listlen(thelist)#">
        <cfset "p#lp#" = listfirst(thelist)>
</cfloop>


<cfset y = -1><!---The direction we are starting in in the list--->
<cfset x = 2><!---The position we are starting at--->


<cfoutput>
<cfset l = listfind(thelist,variables["p#x#"])>
<cfloop index="lp" from="1" 
to="#listlen(thelist)#">#variables["p#lp#"]#.</cfloop><BR>
<cfloop index="n" from="1" to="50"><!---however many times you want to 
iterate--->
        <cfset c = 1>
                <cfloop condition="((y LT 0 AND l IS 1) OR (y GT 0 AND l IS 
listlen(thelist)))">
                        <cfset c = c + 1><cfif c GT len(thelist)>We are 
looping, no more 
changes seem possible.<cfabort></cfif>
                        <cfset y = y * -1>
                        <cfif x IS 1><cfset x = listlen(thelist)><cfelse><cfset 
x = x - 1></cfif>
                        <cfset l = listfind(thelist,variables["p#x#"])>
                </cfloop>
        <cfset l = l + y>
        <cfset "p#x#" = listgetat(thelist,l)>
        <cfloop index="lp" from="1" 
to="#listlen(thelist)#">#variables["p#lp#"]#.</cfloop><BR>
</cfloop>
</cfoutput>

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~|
Introducing the Fusion Authority Quarterly Update. 80 pages of hard-hitting,
up-to-date ColdFusion information by your peers, delivered to your door four 
times a year.
http://www.fusionauthority.com/quarterly

Archive: 
http://www.houseoffusion.com/groups/CF-Talk/message.cfm/messageid:261810
Subscription: http://www.houseoffusion.com/groups/CF-Talk/subscribe.cfm
Unsubscribe: 
http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=11502.10531.4

Reply via email to