C ++,否则会出现for循环增量问题

时间:2018-11-01 16:18:34

标签: c++ loops for-loop if-statement

我正在尝试使此代码正常工作,因此我基本上想在x上添加0.01并在每个循环中相应地显示它,但是不知何故它永远不会显示x = 2,因此“ if(x == 2)”没有执行。同样,当使用条件“ x <3”时,它实际上加起来为3,而“ x <2”时只加起来为1.99。

谢谢

#include <iostream>
#include <cstdlib>
#include <iomanip>
using namespace std;

int main()
{   
    for (double x = 1.0; x < 2;x+=0.01) 
    {   
        if ( x == 2 )
            cout << " x(" << setfill('0') << fixed << left << setw(14) << setprecision(14) << x << ") = 2" << "\n";

        else if (x < 2)
            cout << " x(" << setfill('0') << left << setw(14) << setprecision(14) << x << ") < 2" << "\n";

        else 
            cout << " x(" << setfill('0') << left << setw(14) << setprecision(14) << x << ") > 2" << "\n";
    }   

    return EXIT_SUCCESS;
}

0 个答案:

没有答案