RosettaCodeData/Task/Gapful-numbers/AWK/gapful-numbers.awk
2023-07-01 13:44:08 -04:00

26 lines
540 B
Awk

# syntax: GAWK -f GAPFUL_NUMBERS.AWK
# converted from C++
BEGIN {
show_gapful(100,30)
show_gapful(1000000,15)
show_gapful(1000000000,10)
show_gapful(7123,25)
exit(0)
}
function is_gapful(n, m) {
m = n
while (m >= 10) {
m = int(m / 10)
}
return(n % ((n % 10) + 10 * (m % 10)) == 0)
}
function show_gapful(n, count,i) {
printf("first %d gapful numbers >= %d:",count,n)
for (i=0; i<count; n++) {
if (is_gapful(n)) {
printf(" %d",n)
i++
}
}
printf("\n")
}