General FizzBuzz: Difference between revisions

Content added Content deleted
m (→‎{{header|REXX}}: reinstituted deleted text again.)
m (→‎{{header|AWK}}: Print() to redirect status-messages to stderr)
Line 66: Line 66:
<lang awk># usage: awk -f fizzbuzzGen.awk > fizzbuzzCustom.awk
<lang awk># usage: awk -f fizzbuzzGen.awk > fizzbuzzCustom.awk
#
#
function Print(s) {
BEGIN { print "# Generate:"
print s > "/dev/stderr"
}
BEGIN { Print( "# FizzBuzz-Generate:" )
q2 = "\""
q2 = "\""
fN = "numbers.txt"
fN = "numbers.txt"
Line 72: Line 75:
}
}


NF==1 { print "#", $1, "Numbers:"
NF==1 { Print( "# " $1 " Numbers:" )
for( i=1; i <= $1; i++ )
for( i=1; i <= $1; i++ )
print( i ) > fN # (!!)
print( i ) > fN # (!!) write to file not allowed in sandbox at ideone.com


print "# Custom program:"
Print( "# Custom program:" )
print "BEGIN {print " q2 "# CustomFizzBuzz:" q2 "}"
print "BEGIN {print " q2 "# CustomFizzBuzz:" q2 "} \n"
next
next
}
}


NF==2 { #print "#", $1 "-->" $2 ##
NF==2 { Print( "# " $1 "-->" $2 ) ##
print "$1 % "$1" == 0 {x = x "q2 $2 q2 "}"
print "$1 % "$1" == 0 {x = x "q2 $2 q2 "}"
next
next
}
}


END {
END { print ""
print "!x {print $1; next}"
print "!x {print $1; next}"
print " {print " q2 " " q2 ", x; x=" q2 q2 "}"
print " {print " q2 " " q2 ", x; x=" q2 q2 "}"


print "END {print "q2"# Done."q2"}"
print " \nEND {print " q2 "# Done." q2 "}"
print "# Done."
Print( "# Done." )
}</lang>
}</lang>