Class BigFraction
java.lang.Object
BigFraction
public class BigFraction
extends java.lang.Object
This is a class for the creation of immutible objects that
represent fractions. Fractions are maintained in their reduced
form with any negative in the numerator.
-
Field Summary
Fields Modifier and Type Field Description static BigFraction
HALF
This is the BigFraction 1/2.static BigFraction
ONE
This is the BigFraction 1/1.static BigFraction
TWO
This is the BigFraction 2/1.static BigFraction
ZERO
This is the BigFraction 0/1. -
Constructor Summary
Constructors Constructor Description BigFraction(java.lang.String num, java.lang.String denom)
This creates a BigFraction with the specified numerator and denominatorBigFraction(java.math.BigInteger num, java.math.BigInteger denom)
This creates a BigFraction with the specified numerator and denominator -
Method Summary
Modifier and Type Method Description BigFraction
add(BigFraction that)
This computes this + that.int
compareTo(BigFraction that)
This compares this to that.BigFraction
divide(BigFraction that)
This computes this / that.boolean
equals(java.lang.Object o)
This checks for equality.BigFraction
fractionalPart()
This finds the fractional part of this BigFractionstatic void
main(java.lang.String[] args)
BigFraction
multiply(BigFraction that)
This computes this * that.BigFraction
pow(int n)
This raises this BigFraction to the nth powerBigFraction
subtract(BigFraction that)
This computes this - that.java.lang.String
toString()
This gives a string representation for this BigFraction of the form num/denom.static BigFraction
valueOf(long num, long denom)
This static factory method creates a BigFraction from two specified longs.
-
Field Details
-
Constructor Details
-
BigFraction
public BigFraction(java.math.BigInteger num, java.math.BigInteger denom)This creates a BigFraction with the specified numerator and denominator- Parameters:
num
- The numerator we are giving this BigFractiondenom
- The denominator we are giving this BigFraction.- Throws:
java.lang.IllegalArgumentException
- if a zero denominator is used.
-
BigFraction
public BigFraction(java.lang.String num, java.lang.String denom)This creates a BigFraction with the specified numerator and denominator- Parameters:
num
- The numerator we are giving this BigFraction represented as a numerical stringdenom
- The denominator we are giving this BigFraction represented asa numerical string.- Throws:
java.lang.IllegalArgumentException
- if a zero denominator is used.
-
-
Method Details
-
toString
public java.lang.String toString()This gives a string representation for this BigFraction of the form num/denom.- Overrides:
toString
in classjava.lang.Object
- Returns:
- a string containing num/denom
-
equals
public boolean equals(java.lang.Object o)This checks for equality.- Overrides:
equals
in classjava.lang.Object
- Parameters:
o
- an objec we are comapring this BigFraction to- Returns:
- false if o is not a BigFraction, true if o is numerically equal to this BigFraction, and false otherwise.
-
add
This computes this + that.- Parameters:
that
- the BigFraction we are adding to this BigFraction.- Returns:
- this + that
-
subtract
This computes this - that.- Parameters:
that
- the BigFraction we are adding to this BigFraction.- Returns:
- this - that
-
multiply
This computes this * that.- Parameters:
that
- the BigFraction we are adding to this BigFraction.- Returns:
- this * that
-
divide
This computes this / that.- Parameters:
that
- the BigFraction we are adding to this BigFraction.- Returns:
- this / that
-
pow
This raises this BigFraction to the nth power- Parameters:
n
- an integer- Returns:
- thisn
-
fractionalPart
This finds the fractional part of this BigFraction- Returns:
- the fractional part of this BigFraction
-
valueOf
This static factory method creates a BigFraction from two specified longs.- Parameters:
num
- the numerator of this BigFractiondenom
- the denominator of this BigFraction
-
compareTo
This compares this to that.- Parameters:
that
- a BigFraction we are comparing this BigFraction to.- Returns:
- a positive integer if this > that, a negative integer if this < that, and 0 if this and that have the same numerical value.
-
main
public static void main(java.lang.String[] args)
-