Order by pair comparisons: Difference between revisions

Content added Content deleted
(→‎{{header|Raku}}: Added Raku solution)
Line 111: Line 111:
Sorted: ["orange", "red", "yellow", "blue", "indigo", "green", "violet"]. Total requests: 12.
Sorted: ["orange", "red", "yellow", "blue", "indigo", "green", "violet"]. Total requests: 12.
</pre>
</pre>

=={{header|Perl}}==
<lang perl>#!/usr/bin/perl

use strict; # https://rosettacode.org/wiki/Order_by_pair_comparisons
use warnings;

sub ask
{
while( 1 )
{
print "Compare $a to $b [<,=,>]: ";
<STDIN> =~ /[<=>]/ and return +{qw( < -1 = 0 > 1 )}->{$&};
}
}

my @sorted = sort ask qw( violet red green indigo blue yellow orange );
print "sorted: @sorted\n";</lang>
{{out}}
<pre>
Compare violet to red [<,=,>]: >
Compare green to indigo [<,=,>]: <
Compare blue to yellow [<,=,>]: >
Compare red to green [<,=,>]: <
Compare green to violet [<,=,>]: <
Compare violet to indigo [<,=,>]: ?
Compare violet to indigo [<,=,>]: >
Compare yellow to orange [<,=,>]: >
Compare red to orange [<,=,>]: <
Compare orange to green [<,=,>]: <
Compare green to yellow [<,=,>]: >
Compare green to blue [<,=,>]: <
Compare indigo to blue [<,=,>]: >
sorted: red orange yellow green blue indigo violet
</pre>



=={{header|Phix}}==
=={{header|Phix}}==