# 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 星期一 事件描述备注:保存/发布 中国 天津 [](如果不需要此记录可以手动删除,每次保存都会自动的追加记录)