0 Star 0 Fork 0

璨灿/JavaLearn

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
Rational.java 2.27 KB
一键复制 编辑 原始数据 按行查看 历史
璨灿 提交于 8年前 . 第三周作业
package PTA;
import java.util.Scanner;
//201621123040林俊伟
public class Rational {
private int v1;
private int v2;
//无参构造函数
public Rational(){
}
//有参构造函数
public Rational(int v1, int v2){
this.v1 = v1;
this.v2 = v2;
}
public int getV1() {
return v1;
}
public void setV1(int v1) {
this.v1 = v1;
}
public int getV2() {
return v2;
}
public void setV2(int v2) {
this.v2 = v2;
}
//约分
public int Simplify(int m,int n){
int t;
while(m%n!=0)
{
t=n;
n=m%n;
m=t;
}
return n;
}
//加法
public String Add(Rational a1,Rational a2){
int t;
Rational R = new Rational();
R.v2 = a1.v2*a2.v2;
R.v1 = a1.v1*a2.v2+a2.v1*a1.v2;
t=R.Simplify(R.v1, R.v2);
R.v2/=t;
R.v1/=t;
return R.v1+"/"+R.v2;
}
//乘法
public String Multiply(Rational a1,Rational a2){
Rational R = new Rational();
R.v2 = a1.v2*a2.v2;
R.v1 = a1.v1*a2.v1;
int t = R.Simplify(R.v1, R.v2);
R.v2/=t;
R.v1/=t;
return R.v1+"/"+R.v2;
}
//减法
public String Subtract(Rational a1,Rational a2){
int t;
Rational R = new Rational();
R.v2 = a1.v2*a2.v2;
R.v1 = a1.v1*a2.v2-a2.v1*a1.v2;
t=R.Simplify(R.v1, R.v2);
R.v2/=t;
R.v1/=t;
return R.v1+"/"+R.v2;
}
//除法
public String Divide(Rational a1,Rational a2){
Rational R = new Rational();
R.v2 = a1.v2*a2.v1;
R.v1 = a1.v1*a2.v2;
int t = R.Simplify(R.v1, R.v2);
R.v2/=t;
R.v1/=t;
return R.v1+"/"+R.v2;
}
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner in = new Scanner(System.in);
Rational a = new Rational();
Rational a1 = new Rational(in.nextInt(),in.nextInt());
Rational a2 = new Rational(in.nextInt(),in.nextInt());
String S = in.next();
switch (S) {
case "1"://加法
System.out.println(a.Add(a1, a2));
S = in.next();
break;
case "2"://减法
System.out.println(a.Subtract(a1, a2));
S = in.next();
break;
case "3"://乘法
System.out.println(a.Multiply(a1, a2));
S = in.next();
break;
case "4"://除法
System.out.println(a.Divide(a1, a2));
S = in.next();
break;
default:
System.out.println("exit");
break;
}
}
}
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/JueWei/JavaLearn.git
git@gitee.com:JueWei/JavaLearn.git
JueWei
JavaLearn
JavaLearn
master

搜索帮助