Range expansion: Difference between revisions

no edit summary
(added MiniScript example)
No edit summary
Line 2,732:
{-6,-3,-2,-1,3,4,5,7,8,9,10,11,14,15,17,18,19,20}
</pre>
 
=={{header|Phixmonti}}==
Require Phixmonti 1.1
<lang Phixmonti>0 tolist var r
 
def append
r swap 0 put var r
enddef
 
"-6,-3--1,3-5,7-11,14,15,17-20" "," " " subst split
 
len for
get dup tonum dup
nan == if
drop
dup len 1 - 2 swap slice
"-" find dup 2 + rot drop
rot rot 1 swap slice tonum
rot rot len rot swap over - 1 + slice tonum
nip rot drop
2 tolist for append endfor
else
append drop
endif
endfor
r
pstack</lang>
 
Other solution
<lang Phixmonti>0 tolist var r
 
def append
r swap 0 put var r
enddef
 
"-6,-3--1,3-5,7-11,14,15,17-20" "," " " subst split
 
len for
get dup tonum dup
nan == if
drop
dup 32 1 set
"-" find nip
swap over 1 - 1 swap slice tonum
rot rot len rot swap over - swap 1 + swap slice tonum
nip 2 tolist for append endfor
else
append drop
endif
endfor
r
pstack</lang>
 
=={{header|PHP}}==
672

edits