Range modifications: Difference between revisions

Content added Content deleted
m (→‎{{header|Phix}}: 2..len -> more logical 1..len-1)
Line 57: Line 57:


function consolidate(sequence ranges)
function consolidate(sequence ranges)
for i=2 to length(ranges) do
for i=1 to length(ranges)-1 do
integer {lo,hi} = ranges[i-1],
integer {lo,hi} = ranges[i],
{nl,nh} = ranges[i]
{nl,nh} = ranges[i+1]
if hi+1>=nl then
if hi+1>=nl then
ranges[i-1..i] = {{lo,nh}}
ranges[i..i+1] = {{lo,nh}}
exit
exit
end if
end if