aboutsummaryrefslogtreecommitdiffstats
path: root/awklib/eg/lib
diff options
context:
space:
mode:
Diffstat (limited to 'awklib/eg/lib')
-rw-r--r--awklib/eg/lib/have_mpfr.awk9
-rw-r--r--awklib/eg/lib/intdiv.awk20
2 files changed, 29 insertions, 0 deletions
diff --git a/awklib/eg/lib/have_mpfr.awk b/awklib/eg/lib/have_mpfr.awk
new file mode 100644
index 00000000..90bd523b
--- /dev/null
+++ b/awklib/eg/lib/have_mpfr.awk
@@ -0,0 +1,9 @@
+# adequate_math_precision --- return true if we have enough bits
+#
+# Andrew Schorr, aschorr@telemetry-investments.com, Public Domain
+# May 2017
+
+function adequate_math_precision(n)
+{
+ return (1 != (1+(1/(2^(n-1)))))
+}
diff --git a/awklib/eg/lib/intdiv.awk b/awklib/eg/lib/intdiv.awk
new file mode 100644
index 00000000..dbc553b0
--- /dev/null
+++ b/awklib/eg/lib/intdiv.awk
@@ -0,0 +1,20 @@
+# intdiv --- do integer division
+
+#
+# Arnold Robbins, arnold@skeeve.com, Public Domain
+# July, 2014
+#
+# Name changed from div() to intdiv()
+# April, 2015
+
+function intdiv(numerator, denominator, result)
+{
+ split("", result)
+
+ numerator = int(numerator)
+ denominator = int(denominator)
+ result["quotient"] = int(numerator / denominator)
+ result["remainder"] = int(numerator % denominator)
+
+ return 0.0
+}