swift - 快速四舍五入到最接近的小数点 0.5
问题描述
我有一个看起来像这样的功能
bits = bits * 1.5
因此,如果位为 1,它将返回 1.5,但如果再次运行该函数,它将返回 2.25,但是我更愿意将其四舍五入到 2.5,这可能吗?
解决方案
你可以这样做...
round(x * 3) * 0.5
所以乘以 3。然后将其四舍五入到最接近的 int。然后除以 2。
所以你仍然乘以 1.5 但它会四舍五入到最接近的 0.5
1.5 * 3 = 4.5
四舍五入 = 5
5 / 2 = 2.5
这就是你想要的
编辑:如果您想始终达到最接近的 0.5,请使用ceiling
而不是round
.
推荐阅读
- java - onLocationResult 没有被调用
- android - 如何获取特定地址的经度和纬度而不是当前地址
- java - 为什么使用 TCP 使用一个不能总是精确的基本计时器,而 Java 中的计时器总是精确的?
- spring-boot - 如何使用 EmbeddedKafkaRule/EmbeddedKafka 设置 Spring Kafka 测试以修复 TopicExistsException 间歇性错误?
- svelte - Sapper 默认模板的汇总配置
- scaling - 为什么我们只在缩放问题的训练数据中使用 fit() 方法?
- python - 如何在同一图上正确绘制个别年份的月度数据
- performance - 带递归的while循环的时间复杂度
- react-native - React Native Firebase Storage - 尝试使用 .putFile() 保存图像时出错
- google-api - Google Calendar API - 如何保存/使用 StoredCredentials?