N-Body simulation student discussions

September 17th, 2014

N-Body simulation student discussions

Screen Shot 2014-09-15 at 8.43.34 PM

An immutable data type has the property that the value of an object never changes once constructed.

An assertion is a boolean expression that you are affirming is true at that point in the program.

Next assignment:
Rational numbers. Implement an immutable data type Rational for rational
numbers that supports addition, subtraction, multiplication, and division.

public class Rational

Rational(int numerator. int denominator)

Rational plus(Rational b)    sum of this number and b

Rational minus(Rational b)   difference of this number and b

Rational times(Rational b)   product of this number and b

Rational divides(Rational b) quotient of this number and b

boolean equals(Rational b)   is this number equal to that ?

String toString()            string representation

You do not have to worry about testing for overflow, but use as instance variables two long values that represent the numerator and denominator to limit the possibility of overflow. Use Euclid’s algorithm discussed earlier to ensure that the numerator and denominator never have any common factors. Include a test client that exercises all of your methods.

Rational v2: Robust implementation of rational numbers. Use assertions to develop an implementation of Rational that is immune to overflow.

 

 

 

 

Algorithms, 4th Edition by Robert Sedgewick and Kevin Wayne, Addison-Wesley Professional, 2011, ISBN 0-321-57351-X