javascript - n+Math.random() 是否总是小于 n+1?
问题描述
我知道 Math.random() 小于 1,但问题是,Math.random() 生成浮点数,浮点加法可能有舍入误差。
所以我的问题是,是否有任何可能的 n 值,其中 n+Math.random() < n+1 为假?
解决方案
最大的随机结果是严格小于 1.0 的最大双精度数。向它添加一个得到的实数结果正好是 2.0 和小于 2.0 的最大双精度数之间的一半。舍入到最近会将其舍入到 2.0,因为它是平局,而 2.0 是偶数。
由于四舍五入,您需要允许 n+Math.random() < n+1 为假。
推荐阅读
- sql-server - SQL Server 2016 中的慢查询
- angular - ngbPopover 与从函数返回的 html
- amazon-web-services - TFLite 对象检测模型的 Sagemaker Neo 编译失败
- javascript - 使用最新时间戳和 EmailID 过滤 DynamoDB 表中的值
- javascript - 如何验证 2 个 JavaScript 对象是否具有相同的键
- java - 如何在每次绘制到 UI 之前获取 ImageView 的高度和宽度(在片段中)
- css - 离子自定义按钮动画在所有按钮上触发
- javascript - Rails 6 看不到 JS
- java - 如何使用 JNI 在 Java 中调用 c++ 应用程序
- teradata - 如何从字符串中取出一个数字并将其加 1