我陷入了无限循环,试图将浮点数与零进行比较

时间:2017-02-14 14:15:08

标签: c++ infinite-loop

我正在写一个应该是一个简单的程序,用于找到理想的分配变量,以硬币的数量来衡量。我的解决方案是使用一个while循环来持续检查硬币并从客户变化中减去它们,直到变化等于0.但是,我陷入无限循环并且完全难以理解为什么。

这是我的代码:

while (change > 0.0) {

    for (int i = 0; i < numberOfCoins; i++) {

        if ((change - coins[i]) >= 0.0) {
            change = change - coins[i];
            coinsTally[i] = coinsTally[i] + 1;
            break;
        }
    }
}

change是从0.00.99numberOfCoins = 6

的任何值

coins[numberOfCoins] = { 0.5, 0.2, 0.1, 0.05, 0.02, 0.01}

0 个答案:

没有答案