Créez une classe Rationnel contenant un numérateur et un
dénominateur tous deux de type
long. Instanciez deux rationnels a
et b et initialisez-les aux valeurs respectives
1/2 et 4/3. Affichez
ensuite les valeurs de ces champs.
Ajoutez à la classe
Rationnel les méthodes suivantes :
public String toString(), retourne une représentation
du rationnel courant
sous forme de chaîne de caractères.
public static Rationnel create(long numerateur, long denominateur),
retourne le rationnel numerateur/denominateur.
public Rationnel copy(), retourne une copie du
rationnel courant.
public Rationnel opposite(), retourne l’opposé du
rationnel courant.
public Rationnel inverse(), retourne l’inverse du
rationnel courant.
public void reduce(), met le rationnel sous forme de
fraction irréductible. Vous utiliserez l’algorithme d’Euclide
calculant le plus grand commun diviseur.
public bool isPositive(), retourne
true
si et seulement si le rationnel courant est strictement
positif.
public Rationnel add(Rationnel other), retourne la
somme du rationnel courant et du rationnel
other.
public void addTo(Rationnel other), additionne le
rationnel
other au rationnel courant.
public Rationnel sub(Rationnel other), retourne la
soustraction du rationnel courant et du rationnel
other.
public Rationnel multiply(Rationnel other), retourne
le produit du rationnel courant avec le
rationnel
others.
public Rationnel divide(Rationnel other), retourne
le quotient du rationnel courant avec le
rationnel
others.
public bool equals(Rationnel other), retourne
vrai si et seulement si
this
et
others sont égaux. Attention, 1/2 est égal à
2/4.
public int compareTo(Rationnel other), retourne
0 si le rationnel courant est égal au
rationnel
other, −1 si le rationnel courant est
inférieur à
other, 1 dans le cas contraire.