JAVA 分數類
阿新 • • 發佈:2019-02-11
import java.*;
import java.util.Scanner;
class Fenshu {
private long molecular;// 分子
private long denominator;// 分母
public long getMolecular() {
return molecular;
}
public long getDenominator() {
return denominator;
}
public Fenshu(long molecular, long denominator) {
this.molecular = molecular;
if (denominator == 0) {
System.out.print("分母不能為零");
} else {
this.denominator = denominator;
}
gaibian();
}
private Fenshu gaibian() {
long gcd = this.gYueShu(this.molecular, this.denominator);
this.molecular /= gcd;
this.denominator /= gcd;
return this;
}
private static long gYueShu(long a, long b) {
while (b != 0) {
long temp = a % b;
a = b;
b = temp;
}
long gyueshu = a;
return gyueshu;
}
public Fenshu ADD(Fenshu fenShu) {
return new Fenshu(this.molecular * fenShu.denominator + fenShu.molecular * this.denominator, this.denominator * fenShu.denominator);
}
import java.util.Scanner;
class Fenshu {
private long molecular;// 分子
private long denominator;// 分母
public long getMolecular() {
return molecular;
}
public long getDenominator() {
return denominator;
}
public Fenshu(long molecular, long denominator) {
this.molecular = molecular;
if (denominator == 0) {
System.out.print("分母不能為零");
} else {
this.denominator = denominator;
}
gaibian();
}
private Fenshu gaibian() {
long gcd = this.gYueShu(this.molecular, this.denominator);
this.molecular /= gcd;
this.denominator /= gcd;
return this;
}
private static long gYueShu(long a, long b) {
while (b != 0) {
long temp = a % b;
a = b;
b = temp;
}
long gyueshu = a;
return gyueshu;
}
public Fenshu ADD(Fenshu fenShu) {
return new Fenshu(this.molecular * fenShu.denominator + fenShu.molecular * this.denominator, this.denominator * fenShu.denominator);
}