Last list item: Difference between revisions

Content added Content deleted
(Place "with sorting" before "without sorting".)
(added AWK)
Line 113: Line 113:
List: 243 378; two smallest: 243 @ 1 and 378 @ 2; sum = 621
List: 243 378; two smallest: 243 @ 1 and 378 @ 2; sum = 621
Last item is 621.
Last item is 621.
</pre>
=={{header|AWK}}==
<lang AWK>
# syntax: GAWK -f LAST_LIST_ITEM.AWK
BEGIN {
split("6,81,243,14,25,49,123,69,11",arr1,",")
PROCINFO["sorted_in"] = "@val_num_asc"
while (length(arr1) > 1) {
for (i in arr1) { printf("%s ",arr1[i]) } # show sorted list
j = 0
delete arr2
for (i in arr1) { arr2[++j] = arr1[i] } # copy arr1 into arr2
sum = arr2[1] + arr2[2]
printf(": %s+%s=%s\n",arr2[1],arr2[2],sum)
delete arr2[2]
arr2[1] = sum
delete arr1
for (i in arr2) { arr1[i] = arr2[i] } # copy arr2 into arr1
}
printf("sum=%d\n",sum)
exit(0)
}
</lang>
{{out}}
<pre>
6 11 14 25 49 69 81 123 243 : 6+11=17
14 17 25 49 69 81 123 243 : 14+17=31
25 31 49 69 81 123 243 : 25+31=56
49 56 69 81 123 243 : 49+56=105
69 81 105 123 243 : 69+81=150
105 123 150 243 : 105+123=228
150 228 243 : 150+228=378
243 378 : 243+378=621
sum=621
</pre>
</pre>