RosettaCodeData/Task/Order-two-numerical-lists/Aime/order-two-numerical-lists.aime

29 lines
500 B
Text
Raw Permalink Normal View History

2019-09-12 10:33:56 -07:00
ordl(list a, b)
2018-06-22 20:57:24 +00:00
{
integer i, l, o;
l = min(~a, ~b);
i = 0;
while (i < l) {
if (a[i] != b[i]) {
o = a[i] < b[i];
break;
}
i += 1;
}
2019-09-12 10:33:56 -07:00
i < l ? o : ~a <= ~b;
2018-06-22 20:57:24 +00:00
}
main(void)
{
o_(ordl(list(1, 2), list(1, 2)), "\n");
o_(ordl(list(1e2, 2), list(1e2, 2, 3)), "\n");
o_(ordl(list(1, 2, 3), list(1, 2)), "\n");
o_(ordl(list(.5, 4), list(.5, 2)), "\n");
o_(ordl(list(1, 4, 2, 3), list(1, 4, 2.1, 3)), "\n");
2019-09-12 10:33:56 -07:00
0;
2018-06-22 20:57:24 +00:00
}