Collect and sort square numbers in ascending order from three lists: Difference between revisions

added AWK
m (Add -> Collect, ReXX -> REXX)
(added AWK)
Line 66:
<pre>
4 9 16 25 36 36 49 81 121 144 169
</pre>
=={{header|AWK}}==
<lang AWK>
# syntax: GAWK -f COLLECT_AND_SORT_SQUARE_NUMBERS_IN_ASCENDING_ORDER_FROM_THREE_LISTS.AWK
BEGIN {
list[1] = "3,4,34,25,9,12,36,56,36"
list[2] = "2,8,81,169,34,55,76,49,7"
list[3] = "75,121,75,144,35,16,46,35"
for (i=1; i<=length(list); i++) {
n = split(list[i],list_arr,",")
for (j=1; j<=n; j++) {
if (is_square(list_arr[j])) {
sq_arr[i,j] = list_arr[j]
}
}
}
PROCINFO["sorted_in"] = "@val_num_asc"
for (i in sq_arr) {
printf("%d ",sq_arr[i])
}
printf("\n")
exit(0)
}
function is_square(n) {
return (int(sqrt(n))^2 == n)
}
</lang>
{{out}}
<pre>
4 9 16 25 36 36 49 81 121 144 169
</pre>
 
477

edits