无法弄清楚如何保持我的双倍……双倍

Posted

技术标签:

【中文标题】无法弄清楚如何保持我的双倍……双倍【英文标题】:can not figure out how to keep my double...a double 【发布时间】:2017-08-10 16:56:01 【问题描述】:
if ((double) (points / tries) > hiScore) 
                        hiScore = (double) points / tries;
                        hiPoints = points;
                        hiTries = tries;

我不明白为什么 hiScore,甚至点数/尝试,总是保持 = 0(点和尝试都是整数,与 hiPoints 和 hiTries 相同)

【问题讨论】:

我忘了说 hiScore 是双倍 【参考方案1】:

试试这个

if ( ((double) points / tries) > hiScore) 
                    hiScore = (double) points / tries;
                    hiPoints = points;
                    hiTries = tries;

甚至这个(不应该是必要的,因为优先转换操作超过了除法):

if ( (((double) points) / tries) > hiScore) 
                    hiScore = ((double) points) / tries;
                    hiPoints = points;
                    hiTries = tries;

你需要在除法运算之前转换你的整数变量。

【讨论】:

很高兴为您提供帮助,欢迎来到 Stack Overflow。如果此答案解决了您的问题,请将其标记为已接受。

以上是关于无法弄清楚如何保持我的双倍……双倍的主要内容,如果未能解决你的问题,请参考以下文章

ARC下双倍免费

如何保持浮点/双精度算术确定性?

浮动到双倍(IEEE754)转换

方法覆盖返回 null

Java中的双倍与双倍[重复]

如何在 OpenCV 中将图像读取为双倍?