这个程序应该适用于条件,至少我认为,但对于某些值它不工作应该。c#:尽管循环不作为工作
static void Main(string[] args)
{
double num, temp = 0;
double frac;
int j = 1;
num = 1034.264;
do
{
j = j * 10;
Console.WriteLine(j);
temp = num * j;
Console.WriteLine(temp);
}
while ((temp % 10)!=0);
}
对于价值1034.347,其做工精细 -
但对于价值1034.235 not working 1034.235 它会无限
我不明白为什么人们投下了这个问题 - 这是完全合理的,问得好。 – Scrobi
我同意,它写得很好,有预期的和实际的结果记录(虽然做内联会更好)。虽然它很有吸引力,但我觉得它应该有一个简短的答案,并且与“规范”浮点问题有关。 – Bathsheba
[为什么模数运算符不能在double中工作?](https://stackoverflow.com/questions/906564/why-is-modulus-operator-not-working-for-double-in-c) – mjwills