Order by pair comparisons: Difference between revisions
Content added Content deleted
Drkameleon (talk | contribs) (Added Arturo implementation) |
|||
Line 28: | Line 28: | ||
* A routine that does not ask the user "too many" comparison questions should be used. |
* A routine that does not ask the user "too many" comparison questions should be used. |
||
<br><br> |
<br><br> |
||
=={{header|Arturo}}== |
|||
<lang rebol>lst: ["violet" "red" "green" "indigo" "blue" "yellow" "orange"] |
|||
count: 0 |
|||
findSpot: function [l,e][ |
|||
if empty? l -> return 0 |
|||
loop.with:'i l 'item [ |
|||
answer: input ~"Is |item| greater than |e| [y/n]? " |
|||
if answer="y" -> return i |
|||
] |
|||
return dec size l |
|||
] |
|||
sortedLst: new [] |
|||
loop lst 'element -> |
|||
insert 'sortedLst findSpot sortedLst element element |
|||
print "" |
|||
print ["sorted =>" sortedLst]</lang> |
|||
{{out}} |
|||
<pre>Is violet greater than red [y/n]? y |
|||
Is red greater than green [y/n]? y |
|||
Is green greater than indigo [y/n]? y |
|||
Is indigo greater than blue [y/n]? n |
|||
Is green greater than blue [y/n]? n |
|||
Is red greater than blue [y/n]? y |
|||
Is indigo greater than yellow [y/n]? n |
|||
Is green greater than yellow [y/n]? y |
|||
Is indigo greater than orange [y/n]? n |
|||
Is yellow greater than orange [y/n]? y |
|||
sorted => [indigo orange yellow green blue red violet]</pre> |
|||
=={{header|C}}== |
=={{header|C}}== |