如何在 Substrate 运行时执行浮点数运算

8

我如何在Substrate运行时对浮点值进行数学运算。 以一个简单的例子为例,假设我想在去中心化金融中跟踪利率。

我可以通过将百分比作为整数来进行原型设计。

let rate = 2;
let dividend = capital * rate / 100;

但是如果我的利率是2.5%或2.4554%怎么办?

是否有标准的浮点运算方法?

1个回答

10

由于Substrate是用于区块链的框架,每个节点达成共识的结果应该是确定性的,因此这很重要。

由于浮点运算不是确定性的,因此在Substrate中不允许使用。

处理需要小数位数的算术运算的标准方法是使用内置的固定点算术类型之一。 固定点算术对于Substrate是安全的,因为它将所有有理数表示为分数,并始终解析为确定性结果。

用于处理固定点算术的两种类型是PermillPerbill类型。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接