编程定义名为Fraction的类,其中包含:
2个数据成员:代表分数的分子和分母的int型变量a、b
4个方法:
① 构造方法:Fraction(int x, int y)
② 分数加法:Fraction plus(Fraction r)
③ 分数乘法:Fraction mul(Fraction r)
④ 输出最简分数:void print()
⑤ main()方法:从键盘输入两个分数的分子和分母,分别输出两个分数值及它们的和、乘积值。程序运行界面参见如下格式:
class Fraction {
int a,b;
Fraction(int a,int b){//构造函数
this.a=a;
this.b=b;
}
void print() {//打印分数
int x = a,y = b,r;
if(a == b) {
System.out.println(1);
return;
}
while(y!=0) {
r = x%y;
x=y;
y=r;
}
a/=x;
b/=x;
System.out.println(a + "/" + b);
}
double toDouble() {//分数转化为double类型
return a/b;
}
Fraction plus(Fraction r) {//分数加法
Fraction result = new Fraction(0,0);
result.b=this.b*r.b;
result.a=this.a*r.b+r.a*this.b;
return result;
}
Fraction multiply(Fraction r) {//分数乘法
Fraction result=new Fraction(0,0);
result.a=this.a*r.a;
result.b=this.b*r.b;
return result;
}
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
Fraction a = new Fraction(in.nextInt(), in.nextInt());
Fraction b = new Fraction(in.nextInt(),in.nextInt());
a.print();
b.print();
a.plus(b).print();
a.multiply(b).plus(new Fraction(5,6)).print();
a.print();
b.print();
in.close();
}
}