RosettaCodeData/Task/Mutual-recursion/AWK/mutual-recursion.awk

21 lines
325 B
Awk
Raw Permalink Normal View History

2016-12-05 22:15:40 +01:00
cat mutual_recursion.awk:
#!/usr/local/bin/gawk -f
# User defined functions
2013-04-10 21:29:02 -07:00
function F(n)
2016-12-05 22:15:40 +01:00
{ return n == 0 ? 1 : n - M(F(n-1)) }
2013-04-10 21:29:02 -07:00
function M(n)
2016-12-05 22:15:40 +01:00
{ return n == 0 ? 0 : n - F(M(n-1)) }
2013-04-10 21:29:02 -07:00
BEGIN {
2016-12-05 22:15:40 +01:00
for(i=0; i <= 20; i++) {
2013-04-10 21:29:02 -07:00
printf "%3d ", F(i)
}
print ""
2016-12-05 22:15:40 +01:00
for(i=0; i <= 20; i++) {
2013-04-10 21:29:02 -07:00
printf "%3d ", M(i)
}
print ""
}