object Rational extends Serializable
The Rational
companion object defines the origin (zero), one and minus one
as well as some utility functions.
- Alphabetic
- By Inheritance
- Rational
- Serializable
- Serializable
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
val
_0: Rational
Zero (0) as a Rational number
-
val
_1: Rational
One (1) as a Rational number
-
val
_1_big: BigDecimal
One in
BigDecimal
-
val
_1n: Rational
Negative one (-1) as a Rational number
-
def
abs(x: Rational): Rational
Return the absolute value of that rational number.
Return the absolute value of that rational number.
- x
that rational number
-
def
apply(qs: String): Rational
Create a rational number from its primary string representation "a/b".
Create a rational number from its primary string representation "a/b". Examples: "2/3", "2".
- qs
the string form of a rational number
-
def
apply(qt: (Long, Long)): Rational
Create a rational number from a pair (Tuple2) of Longs.
Create a rational number from a pair (Tuple2) of Longs.
- qt
the tuple form of a rational number
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
clone(): AnyRef
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
def
create(qs: String): Rational
Create a rational number from its secondary string representation "(a, b)".
Create a rational number from its secondary string representation "(a, b)". Examples: "(2, 3)", "(2, 1)".
- qs
the string form of a rational number
-
implicit
def
double2Rational(d: Double): Rational
Implicit conversion from 'Double' to 'Rational'.
Implicit conversion from 'Double' to 'Rational'.
- d
the Double parameter to convert
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
finalize(): Unit
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
-
def
fromBigDecimal(y: BigDecimal): Rational
Create a rational number from a
BigDecimal
number.Create a rational number from a
BigDecimal
number.- y
the
BigDecimal
used to create the rational number
-
def
fromDouble(y: Double): Rational
Create a rational number from a
Double
.Create a rational number from a
Double
.- y
the double used to create the rational number
-
def
fromDouble2(y: Double, md: Long = maxDen): Rational
Create a rational number from a
Double
.Create a rational number from a
Double
. FIX: if den not a power of 2, it goes to 'md'.- y
the double used to create the rational number.
- md
the maximum denominator
- See also
http://rosettacode.org/wiki/Convert_decimal_number_to_rational
-
def
fromFloat(y: Float): Rational
Create a rational number from a
Float
.Create a rational number from a
Float
.- y
the float used to create the rational number.
-
def
fromInt(n: Int): Rational
Create a rational number from an
Int
.Create a rational number from an
Int
.- n
the integer used to create the rational number.
-
def
fromLong(n: Long): Rational
Create a rational number from a
Long
.Create a rational number from a
Long
.- n
the long used to create the rational number.
-
def
from_BigDecimal(y: BigDecimal, md: Long = Long.MaxValue): (Long, Long)
Determine the numerator and denonimator of the closest rational number to the given
BigDecimal
number.Determine the numerator and denonimator of the closest rational number to the given
BigDecimal
number.- y
the
BigDecimal
used to create the rational number- md
the maximum denominator
-
def
from_Double(y: Double, md: Long = maxDen): (Long, Long)
Determine the numerator and denonimator of the closest rational number to the given
BigDecimal
number.Determine the numerator and denonimator of the closest rational number to the given
BigDecimal
number.- y
the double used to create the rational number
- md
the maximum denominator
- See also
http://stackoverflow.com/questions/5124743/algorithm-for-simplifying- decimal-to-fractions/5128558#5128558
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
-
def
hashCode(): Int
- Definition Classes
- AnyRef → Any
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
def
make(s: String): Rational
Make a rational number from a String of the form "12.3E+7".
Make a rational number from a String of the form "12.3E+7".
- s
the given String representation of a number
- See also
http://docs.oracle.com/javase/1.5.0/docs/api/java/math/BigDecimal.html #BigDecimal%28java.lang.String%29
-
def
max(q: Rational, p: Rational): Rational
Return the maximum of two rational numbers, q and p.
Return the maximum of two rational numbers, q and p.
- q
the first rational number to compare
- p
the second rational number to compare
-
val
maxDen: Long
Denominator (2 ~^ 54) big enough to capture largest Double significand (53 bits)
-
def
min(q: Rational, p: Rational): Rational
Return the minimum of two rational numbers, q and p.
Return the minimum of two rational numbers, q and p.
- q
the first rational number to compare
- p
the second rational number to compare
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
-
implicit
val
num: Rational
Implicit numeric value for establishing type
-
implicit
val
ord: Ordering[Rational]
Ordering for rational numbers
-
def
signum(r: Rational): Rational
Return the signum (sgn) of a rational number.
Return the signum (sgn) of a rational number. The values may be -1, 0, or 1.
- r
the rational number to obtain the sigum of
-
def
sqrt(x: Rational): Rational
Return the square root of that rational number.
Return the square root of that rational number.
- x
that rational number
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
toString(): String
- Definition Classes
- AnyRef → Any
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )