summaryrefslogtreecommitdiffstats
path: root/contrib/awk/test/addcomma.awk
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/awk/test/addcomma.awk')
-rw-r--r--contrib/awk/test/addcomma.awk15
1 files changed, 15 insertions, 0 deletions
diff --git a/contrib/awk/test/addcomma.awk b/contrib/awk/test/addcomma.awk
new file mode 100644
index 0000000..8f52f36
--- /dev/null
+++ b/contrib/awk/test/addcomma.awk
@@ -0,0 +1,15 @@
+# addcomma - put commas in numbers
+# input: a number per line
+# output: the input number followed by
+# the number with commas and two decimal places
+
+{ printf("%-12s %20s\n", $0, addcomma($0)) }
+
+function addcomma(x, num) {
+ if (x < 0)
+ return "-" addcomma(-x)
+ num = sprintf("%.2f", x) # num is dddddd.dd
+ while (num ~ /[0-9][0-9][0-9][0-9]/)
+ sub(/[0-9][0-9][0-9][,.]/, ",&", num)
+ return num
+}
OpenPOWER on IntegriCloud