C Fehler - Bugs - Probleme

Aus Physik
Zur Navigation springen Zur Suche springen

Probleme mit fmod()

in folgendem Code sollte fmod() eigentlich bei jedem zweiten t eine 0 ausspucken:

  for (double t=0; t<=1; t+=0.05)
    cout << t << "   " << t/0.05 << "   " << fmod(t/0.05,2) << endl;

Es kommt aber folgendes:

0       0   0
0.05    1   1
0.1     2   0
0.15    3   1
0.2     4   0
0.25    5   1
0.3     6   2
0.35    7   1
0.4     8   2
0.45    9   1
0.5    10   2
0.55   11   1
0.6    12   2
0.65   13   1
0.7    14   0
0.75   15   1
0.8    16   3.55271e-15
0.85   17   1
0.9    18   3.55271e-15
0.95   19   1

Also 6 mod 2 = 2 ?????