gpt4 book ai didi

objective-c - 将我的十进制 float 四舍五入到最接近的一半或整数?

转载 作者:太空狗 更新时间:2023-10-30 04:00:37 25 4
gpt4 key购买 nike

好的,我在我的应用程序中的计算有问题,我很确定这是因为小数点太长了。这是无论如何都需要完成的事情,因为它将大大缩短我需要的代码量。

下面是我目前如何拥有这部分代码...

float ab1 = [abdomen1Input.text floatValue];
float ab2 = [abdomen2Input.text floatValue];
float ab3 = [abdomen3Input.text floatValue];
float hip1 = [hips1Input.text floatValue];
float hip2 = [hips2Input.text floatValue];
float hip3 = [hips3Input.text floatValue];
float neck1 = [neck1Input.text floatValue];
float neck2 = [neck2Input.text floatValue];
float neck3 = [neck3Input.text floatValue];
float height1 = [heightInput.text floatValue];
float neckAvg;
float abHipAvg;
float cirVal;

(abHipAvg = (((ab1+ab2+ab3)/3)+((hip1+hip2+hip3)/3)));

(neckAvg = ((neck1+neck2+neck3)/3));

(cirVal = (abHipAvg - neckAvg));

我需要做的是将“abHipAvg”和“neckAvg”四舍五入到最接近的 .5 或 .0。用户只会输入 .25、.5 或 .75 但一旦我将它们除以 3 我需要将该答案向上或向下舍入到最接近的一半,以便我的其余计算正常工作。我已经尝试通过此处的一些问题来找到解决方案,因为在我不记得在搜索中输入的位置或输入的内容之前,我已经看到了一个与此类似的问题。如果有人能指出我正确的方向,我将不胜感激。

最佳答案

最简单的方法是取你的最终数字,乘以 2 和四舍五入。然后除以 2。

(abHipAvg = (((ab1+ab2+ab3)/3)+((hip1+hip2+hip3)/3)));
abHipAvg = roundf(abHipAvg * 2.0f) / 2.0f;

与 neckAvg 相同。

关于objective-c - 将我的十进制 float 四舍五入到最接近的一半或整数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5550844/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com