Sorting algorithms/Gnome sort: Difference between revisions

Content deleted Content added
solved for maxscript
m →‎{{header|REXX}}: added/changed whitespace and comments, used a clearer separator line for output.
Line 1,797:
This REXX version used a one-based stemmed array (instead of a zero-based array).
<lang rexx>/*REXX program sorts a stemmed array using the gnome-sort algorithm.*/
itemscall = gen@() /*generate the @. array elements.*/
call show@ 'before sort' /*show "before" array elements.*/
call gnomeSort items# /*invoke the infamous gnome sort.*/
call show@ ' after sort' /*show "after" array elements.*/
exit /*stick a fork in it, we're done.*/
Line 1,811:
return
/*──────────────────────────────────GEN@ subroutine─────────────────────*/
gen@: !=... 'deadbeef'x ...; @.=! /*default none-value; allows null*/
@.1 = '---the seven virtues---' /* [↓] indent the seven virtues.*/
@.2 = '=======================' ; @.6 = 'Fortitude'
Line 1,817:
@.4 = 'Hope' ; @.8 = 'Prudence'
@.5 = 'Charity [Love]' ; @.9 = 'Temperance'
 
do items=1 while @.items\==!; end /*find the # of items in @ array.*/
return items-1 do #=1 while @.#\==!; end /*find the /*because# of theitems DO,in adjust@ ITEMSarray.*/
#=#-1 /*adjust the numer of items by 1.*/
return
/*──────────────────────────────────SHOW@ subroutine────────────────────*/
show@: w=length(items) do j=1 for # /*the maximum[↓] width ofdisplay all items anyfor item@. */
do #=1 for items say ' /*element' [↓] right(j,length(#)) display allarg(1)":" items for @. */j
say 'element' right(#,w) arg(1)":" @.# end /*alignj*/ /* [↑] right justify the itemJ numbersnum.*/
say end /*#*/ copies('■',60) /*show [↑]a separator item#line rightthat just.fits*/
say copies('─',60) /*show a separator line that fits*/
return</lang>
'''output'''
<pre>
element 1 before sort: ---the seven virtues---
element 2 before sort: =======================
element 3 before sort: Faith
element 4 before sort: Hope
element 5 before sort: Charity [Love]
element 6 before sort: Fortitude
element 7 before sort: Justice
element 8 before sort: Prudence
element 9 before sort: Temperance
■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
────────────────────────────────────────────────────────────
element 1 after sort: ---the seven virtues---
element 2 after sort: =======================
element 3 after sort: Charity [Love]
element 4 after sort: Faith
element 5 after sort: Fortitude
element 6 after sort: Hope
element 7 after sort: Justice
element 8 after sort: Prudence
element 9 after sort: Temperance
■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
────────────────────────────────────────────────────────────
</pre>