我正在为一个化学公式制作一个应用程序,并且已经制作好了它可以返回双倍系数。

例如,C6H12O6 + O2 = CO2 + H2O返回0.166666667、1.0、1.0和1.0。我想编写代码,使其为1、6、6和6(整数)。同样,对于另一个方程式,例如Ca(OH)2 + H3PO4 = Ca3(PO4)2 + H2O,返回值为.5,.333333333,.166666667和1.0。它应该是3、2、1和6。在Java中,是否可以将它们转换为整数系数?

最佳答案

使用分数库(例如this one by apache)进行计算。它将计算结果保留为分数。然后,您可以使用Fraction.getDenominator()来找到常用的一个,并将其余系数乘以它。

关于java - Java中的化学平衡器,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4562614/

10-09 00:58
查看更多