Adopt Nick's suggestion for useful default arguments.
Clean-up floating point issues by adding true division and float constants.
diff --git a/Doc/library/random.rst b/Doc/library/random.rst
index 505cc81..a064ac4 100644
--- a/Doc/library/random.rst
+++ b/Doc/library/random.rst
@@ -193,7 +193,12 @@
 .. function:: triangular(low, high, mode)
 
    Return a random floating point number *N* such that ``low <= N < high``
-   and with the specified *mode* between those bounds.  
+   and with the specified *mode* between those bounds.
+
+   If *mode* is not specified or is ``None``, it defaults to the midpoint
+   between the upper and lower bounds, producing a symmetric distribution.
+
+   The default values for *low* and *high* are zero and one.
 
 .. function:: betavariate(alpha, beta)