solidity - 有没有办法在 Solidity 中使用浮点数?我需要他们来写一份我正在写的小合同。如果浮动是不可能的,我可以用什么代替?
问题描述
我需要做一些基于浮点数的算术,但我在 Solidity 中找不到对这种基本功能的任何支持。有没有办法解决?
我试着到处寻找方法来做到这一点。真的很感激一些指示。也很抱歉我不能真正分享代码。非常感谢这方面的帮助
pragma solidity ^0.5.9;
contract test {
//float result;
uint8 a = 10;
uint8 b = 4;
function divide() public returns(float) { // I know this isn't possible
result = a / b;
}
}
我得到一个编译错误。我寻找了很长时间来寻找如何做这样的事情。也许这里有人对此有所了解
解决方案
在不了解您的用例的情况下,我很难提供更多帮助:
您可以简单地将每个值乘以 100,然后进行除法,并让值的使用者进行转换。伪代码如下:
contract test {
//float result;
uint8 a = 10;
uint8 b = 4;
function divide() public returns(integer) {
result = (a * 100) / (b * 100);
}
}
推荐阅读
- spring-boot - POJO类中可能使用注释的条件运算符?
- c - 测试所有数组元素是否为零的快速方法
- python-3.x - 从节点 red mqtt 节点到 python3 客户端的 Traduce
- string - 删除谷歌应用程序脚本中字符串中的尾随空格
- regex - 正则表达式替换为结尾和开头没有空格的字符串
- c# - 如何从 Excel / C# 获取宏数据?
- azure-devops - Azure Devops 构建完成通知未触发
- python - 如何在熊猫数据框中附加具有默认值的额外列?
- java - 在 JPanels 限制内移动 JLabel(认为这是一个数学问题)JAVA
- python - Jupyter Notebook 导出到带有居中元素的 HTML