Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > de.comp.lang.php > #4434
| From | "Christoph M. Becker" <cmbecker69@arcor.de> |
|---|---|
| Newsgroups | de.comp.lang.php |
| Subject | Re: var_dump(8.7 <= 8.7) / false? |
| Date | 2018-11-15 14:51 +0100 |
| Organization | solani.org |
| Message-ID | <psjtkk$rud$1@solani.org> (permalink) |
| References | <61959674.20181115012304@gmx.net> <g54o42FdnvgU1@mid.individual.net> <g54o8cFdnvgU2@mid.individual.net> <06371490.20181115143113@gmx.net> |
Am 15.11.2018 um 14:31 schrieb Stefan Mayer:
> Wie löse ich den nun den Vergleich der Werte? Durch das einbauen der "kleinen
> Unterscheidung" in meine Funktion?
>
> Das sähe so aus. Und funktioniert scheinbar.
>
> ```
> function f($min, $max, $step)
> {
> $values = [];
> $value = $min;
> while ($value <= $max || (abs(($value-$max)/$max) < 0.00001)) {
> $values[] = $value;
> $value+=$step;
> }
> return $values;
> }
> print_r(f(8.3, 8.7, .4));
> print_r(f(10.3, 10.7, .4));
> ```
>
> Gibt es daran etwas auszusetzen?
Siehe <https://floating-point-gui.de/errors/comparison/>.
> Alternative?
Wenn es wirklich genau sein muss, und die Performance sekundär ist,
würde ich das unter Umständen per BCMath[1] lösen. Kommt aber natürlich
darauf an, was du später mit diesen Werten tun willst.
[1] <http://php.net/manual/de/book.bc.php>
--
Christoph M. Becker
Back to de.comp.lang.php | Previous | Next — Previous in thread | Next in thread | Find similar
var_dump(8.7 <= 8.7) / false? Stefan Mayer <meniskus@gmx.net> - 2018-11-15 01:23 +0100
Re: var_dump(8.7 <= 8.7) / false? Arno Welzel <usenet@arnowelzel.de> - 2018-11-15 09:12 +0100
Re: var_dump(8.7 <= 8.7) / false? Arno Welzel <usenet@arnowelzel.de> - 2018-11-15 09:15 +0100
Re: var_dump(8.7 <= 8.7) / false? Stefan Mayer <meniskus@gmx.net> - 2018-11-15 14:31 +0100
Re: var_dump(8.7 <= 8.7) / false? "Christoph M. Becker" <cmbecker69@arcor.de> - 2018-11-15 14:51 +0100
Re: var_dump(8.7 <= 8.7) / false? Stefan Mayer <meniskus@gmx.net> - 2018-11-15 15:52 +0100
Re: var_dump(8.7 <= 8.7) / false? "Christoph M. Becker" <cmbecker69@arcor.de> - 2018-11-15 17:36 +0100
Re: var_dump(8.7 <= 8.7) / false? Stefan Mayer <meniskus@gmx.net> - 2018-11-15 18:02 +0100
Re: var_dump(8.7 <= 8.7) / false? Stefan Mayer <meniskus@gmx.net> - 2018-11-15 21:24 +0100
Re: var_dump(8.7 <= 8.7) / false? "Christoph M. Becker" <cmbecker69@arcor.de> - 2018-11-16 14:43 +0100
Re: var_dump(8.7 <= 8.7) / false? Stefan Mayer <meniskus@gmx.net> - 2018-11-16 21:26 +0100
Re: var_dump(8.7 <= 8.7) / false? "Christoph M. Becker" <cmbecker69@arcor.de> - 2018-11-17 23:49 +0100
Re: var_dump(8.7 <= 8.7) / false? Stefan Mayer <meniskus@gmx.net> - 2018-11-19 21:15 +0100
Re: var_dump(8.7 <= 8.7) / false? Claus Reibenstein <4spamersonly@kabelmail.de> - 2018-11-15 19:34 +0100
Re: var_dump(8.7 <= 8.7) / false? Stefan Mayer <meniskus@gmx.net> - 2018-11-15 21:06 +0100
Re: var_dump(8.7 <= 8.7) / false? Stefan Mayer <meniskus@gmx.net> - 2018-11-15 09:13 +0100
Re: var_dump(8.7 <= 8.7) / false? "Christoph M. Becker" <cmbecker69@arcor.de> - 2018-11-15 12:22 +0100
Re: var_dump(8.7 <= 8.7) / false? "Peter J. Holzer" <hjp-usenet3@hjp.at> - 2018-11-17 20:55 +0100
Re: var_dump(8.7 <= 8.7) / false? Stefan Mayer <meniskus@gmx.net> - 2018-11-19 20:52 +0100
csiph-web