例如,如果我们假设开始十进制数是2.0,所以下一个项目应该自动获得号码相应地说,2.01,2.02,2.03,.....,2.09,2.10,2.11 ..等等。但是起始号码是多少,那么接下来的顺序是什么:
是吗? 2.11,2.12,2.13,2.14,..... 2.19,2.20等...? 我是逻辑正确的吗?我很困惑。请帮忙。
解决方案完全取决于应用程序的需求。你需要数百位数吗?如果是这样,那么这些序列是有意义的。
为避免舍入错误,您可能需要存储初始值,增量数量和增量大小,如:
float start = 2.0; 浮动增量= 0.01; (int i = 0; i <10; i ++) { printf(%f,start + increment * i); }
Can anyone explain the best logic / method for incrementing floating, decimal numbers ?
For example, if we assume starting decimal number is 2.0, so the next items should automatically get number accordingly say, 2.01, 2.02, 2.03, ....., 2.09, 2.10, 2.11.. etc.
But what is the starting number is 2.1, so what would be the next sequence :
Is it ? 2.11, 2.12, 2.13, 2.14, ..... 2.19, 2.20 etc...?
I is logically correct? I am confused. Please help.
解决方案It depends entirely on what the application needs. Do you need to count by hundredths? If so, then those sequences make sense.
To avoid round-off error, you may want to store the initial value, the number of increments, and the increment size, as in:
float start = 2.0; float increment = 0.01; for (int i = 0; i < 10; i++) { printf("%f ", start + increment * i); }
更多推荐
递增小数点,浮点数
发布评论