Hallo,
nun ganz einfach manche Dezimalzahlen lassen sich
al bin"arzahlen nicht als exakt darstellen, was z. B. hier
bei h->1.29 h->1.71 passiert. Da dank Schrittweite 0.01
mit Maschinen-Zahlen gerechnet wird, kann es also sein, das
beim K"urzen auch mal 1.9999999999998` rauskommt. Und
Floor[] davon ist nun mal 1.
Man sieht es mit
Table[{h, FullForm[N[h/dh /. dh -> 0.5*h]]}, {h, 0, 2, 0.01}]
Schon
Table[{h, h/dh /. dh -> 0.5*h}, {h, 0, 2, 1/100}]
stellt das ab.
Gruss
Jens
> Klamser@XXXXXXX.de wrote:
>
> Hallo,
>
> eine ganz einfach Funktion:
>
> f[h_, dh_] = Floor[N[h/dh]]
>
> Wenn ich z.B. f[h, h 0.5 ] eingebe sagt MMA (4.1) mit dass da 2
> rauskommt. Sehr guuut!.
>
> Eigentlich müsste immer 2 rauskommen :-)
>
> Der Test
>
> Table[f[h, h 0.5 ], {h, 0, 2, 0.01}]
>
> ergibt aber:
>
> {Indeterminate, 2, 2, 2, 2, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2, 2, 2, 2, 1,
> 2, 2, \
> 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2, 2, 2,
> 2, 2, 2, \
> 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1,
> 2, 2, 1, \
> 1, 2, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2, 2, 2, 1, 2, 2, 2, 1, 2, 2, 2, 2,
> 2, 2, 2, \
> 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
> 2, 2, 2, \
> 2, 2, 1, 2, 1, 2, 2, 2, 2, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2, 1, 2, 1, 2,
> 2, 2, 2, \
> 2, 2, 2, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2, 1, 2, 2,
> 1, 2, 2, \
> 2, 2, 2, 2, 2, 1, 1, 2, 1, 2, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 2, 1,
> 2}
>
> Ich beschwere mich nicht über das Indeterminate (da 0/0).
>
> Aber warum kommt da 1 raus?
>
> Gruß, Peter Klamser