# AlgorithmStar 实现 分数 计算
*AlgorithmStar*
本文中将会演示通过 AS 机器学习库 实现 分数计算
## 目录
[TOC]

## 创建分数
针对分数对象,我们知道其是一个具有分子与分母的操作数,也是除法的另一种表达方式,在这里我们将创建一个分数对象。
### 仅指定分子
```
package com.zhao;
import zhao.algorithmMagic.core.AlgorithmStar;
import zhao.algorithmMagic.core.FractionFactory;
import zhao.algorithmMagic.operands.fraction.Fraction;
public class MAIN {
public static void main(String[] args) {
// 创建一个分数对象
final FractionFactory fractionFactory = AlgorithmStar.fractionFactory();
// 获取到分数对象
final Fraction parse = fractionFactory.parse(2);
// 打印出分数对象
System.out.println(parse);
}
}
```
下面就是运行结果
```
(2.0/1.0)
进程已结束,退出代码0
```
### 指定分子与分母
```
package com.zhao;
import zhao.algorithmMagic.core.AlgorithmStar;
import zhao.algorithmMagic.core.FractionFactory;
import zhao.algorithmMagic.operands.fraction.Fraction;
public class MAIN {
public static void main(String[] args) {
// 创建一个分数对象
final FractionFactory fractionFactory = AlgorithmStar.fractionFactory();
// 获取到分数对象
final Fraction parse = fractionFactory.parse(2, 4);
// 打印出分数对象
System.out.println(parse);
}
}
```
下面就是运行结果
```
(2.0/4.0)
进程已结束,退出代码0
```
### 使用字符串解析分数
```
package com.zhao;
import zhao.algorithmMagic.core.AlgorithmStar;
import zhao.algorithmMagic.core.FractionFactory;
import zhao.algorithmMagic.operands.fraction.Fraction;
public class MAIN {
public static void main(String[] args) {
// 创建一个分数对象
final FractionFactory fractionFactory = AlgorithmStar.fractionFactory();
// 获取到分数对象
final Fraction parse = fractionFactory.parse("2 / 4");
// 打印出分数对象
System.out.println(parse);
}
}
```
下面就是运行结果
```
(2.0/4.0)
进程已结束,退出代码0
```
## 分数计算
对于分数而言,有一些其独特的计算操作,接下来我们将针对这样的计算操作进行演示。
### 分数基本运算
#### 分数与分数或实数之间的加法
```
package com.zhao;
import zhao.algorithmMagic.core.AlgorithmStar;
import zhao.algorithmMagic.core.FractionFactory;
import zhao.algorithmMagic.operands.fraction.Fraction;
public class MAIN {
public static void main(String[] args) {
// 创建一个分数对象
final FractionFactory fractionFactory = AlgorithmStar.fractionFactory();
// 获取到分数对象
final Fraction parse1 = fractionFactory.parse("2 / 4");
final Fraction parse2 = fractionFactory.parse("2 / 8");
// 打印出分数对象求和的结果
System.out.println(parse1.add(parse2));
// 打印除分数对象 + 2 的结果
System.out.println(parse1.add(2));
}
}
```
下面是运行结果
```
(3.0/4.0)
(10.0/4.0)
进程已结束,退出代码0
```
#### 分数与分数或实数之间的减法
```
package com.zhao;
import zhao.algorithmMagic.core.AlgorithmStar;
import zhao.algorithmMagic.core.FractionFactory;
import zhao.algorithmMagic.operands.fraction.Fraction;
public class MAIN {
public static void main(String[] args) {
// 创建一个分数对象
final FractionFactory fractionFactory = AlgorithmStar.fractionFactory();
// 获取到分数对象
final Fraction parse1 = fractionFactory.parse("2 / 4");
final Fraction parse2 = fractionFactory.parse("2 / 8");
// 打印出分数对象求差的结果
System.out.println(parse1.diff(parse2));
// 打印除分数对象 - 2 的结果
System.out.println(parse1.diff(2));
}
}
```
下面是运行结果
```
(1.0/4.0)
(-6.0/4.0)
进程已结束,退出代码0
```
#### 分数与分数或实数之间的乘法
```
package com.zhao;
import zhao.algorithmMagic.core.AlgorithmStar;
import zhao.algorithmMagic.core.FractionFactory;
import zhao.algorithmMagic.operands.fraction.Fraction;
public class MAIN {
public static void main(String[] args) {
// 创建一个分数对象
final FractionFactory fractionFactory = AlgorithmStar.fractionFactory();
// 获取到分数对象
final Fraction parse1 = fractionFactory.parse("2 / 4");
final Fraction parse2 = fractionFactory.parse("2 / 8");
// 打印出分数对象求积的结果
System.out.println(parse1.multiply(parse2));
}
}
```
下面是运行结果
```
(4.0/32.0)
进程已结束,退出代码0
```
#### 分数与分数或实数之间的除法
```
package com.zhao;
import zhao.algorithmMagic.core.AlgorithmStar;
import zhao.algorithmMagic.core.FractionFactory;
import zhao.algorithmMagic.operands.fraction.Fraction;
public class MAIN {
public static void main(String[] args) {
// 创建一个分数对象
final FractionFactory fractionFactory = AlgorithmStar.fractionFactory();
// 获取到分数对象
final Fraction parse1 = fractionFactory.parse("2 / 4");
final Fraction parse2 = fractionFactory.parse("2 / 8");
// 打印出分数对象求积的结果
System.out.println(parse1.divide(parse2));
}
}
```
下面是运行结果
```
(16.0/8.0)
进程已结束,退出代码0
```
### 分数转换操作
分数的转换操作,更多的是做为计算操作中的某一部分,请阅读下面的举例。学习相关知识
#### 约分
```
package com.zhao;
import zhao.algorithmMagic.core.AlgorithmStar;
import zhao.algorithmMagic.core.FractionFactory;
import zhao.algorithmMagic.operands.fraction.Fraction;
public class MAIN {
public static void main(String[] args) {
// 创建一个分数对象
final FractionFactory fractionFactory = AlgorithmStar.fractionFactory();
// 获取到分数对象
final Fraction parse1 = fractionFactory.parse("2 / 4");
final Fraction parse2 = fractionFactory.parse("2 / 8");
// 打印出分数对象求积的结果
System.out.println(parse1.divide(parse2));
// 打印出分数对象求积并约分的结果
System.out.println(parse1.divide(parse2).simplify());
}
}
```
下面是计算结果
```
(16.0/8.0)
(2.0/1.0)
进程已结束,退出代码0
```
#### 通分
```
package com.zhao;
import zhao.algorithmMagic.core.AlgorithmStar;
import zhao.algorithmMagic.core.FractionFactory;
import zhao.algorithmMagic.operands.fraction.Fraction;
public class MAIN {
public static void main(String[] args) {
// 创建一个分数对象
final FractionFactory fractionFactory = AlgorithmStar.fractionFactory();
// 获取到分数对象
final Fraction parse1 = fractionFactory.parse("1 / 2");
// 将分数中的分母通分为 10
System.out.println(parse1.cf(10));
}
}
```
下面就是计算结果
```
(5.0/10.0)
进程已结束,退出代码0
```
#### 取倒数
```
package com.zhao;
import zhao.algorithmMagic.core.AlgorithmStar;
import zhao.algorithmMagic.core.FractionFactory;
import zhao.algorithmMagic.operands.fraction.Fraction;
public class MAIN {
public static void main(String[] args) {
// 创建一个分数对象
final FractionFactory fractionFactory = AlgorithmStar.fractionFactory();
// 获取到分数对象
final Fraction parse1 = fractionFactory.parse("1 / 2");
// 将分数取倒数
System.out.println(parse1.reversal());
}
}
```
下面就是计算结果
```
(2.0/1.0)
进程已结束,退出代码0
```
------
***操作记录***
作者:[algorithmStar](http://www.lingyuzhao.top//index.html?search=23 "algorithmStar")
操作时间:2024-01-22 19:02:15 星期一
事件描述备注:保存/发布
中国 天津
[](如果不需要此记录可以手动删除,每次保存都会自动的追加记录)