Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > de.comp.lang.iso-c++ > #2107
| Path | csiph.com!eternal-september.org!feeder.eternal-september.org!reader01.eternal-september.org!.POSTED!not-for-mail |
|---|---|
| From | Thomas Dorner <td-dclic01@th-dorner.de> |
| Newsgroups | de.comp.lang.iso-c++ |
| Subject | Re: Runden zufällig? |
| Date | Wed, 25 Sep 2019 16:31:23 +0200 |
| Organization | solani.org |
| Lines | 40 |
| Sender | "Moderation de.comp.lang.iso-c++" <dclisocpp+mod@elaboris.de> |
| Approved | Markus Schaaf <dclisocpp+mod@elaboris.de> |
| Message-ID | <6etv904fd0.fsf@th-dorner.de> (permalink) |
| References | <qmfbu1$cho$1@news.albasani.net> |
| Reply-To | td-dclic01@th-dorner.de |
| Mime-Version | 1.0 |
| Content-Type | text/plain; charset=utf-8 |
| Content-Transfer-Encoding | 8bit |
| Injection-Info | reader02.eternal-september.org; posting-host="3a99b4319393fb705880e6d6957c7735"; logging-data="16680"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1+Sty1F5QyKdwAjDjts1WGW" |
| User-Agent | Gnus/5.13 (Gnus v5.13) Emacs/25.2 (gnu/linux) |
| Xref | csiph.com de.comp.lang.iso-c++:2107 |
Show key headers only | View raw
Hallo Markus!
> Ich habe festgestellt, dass das Runden bei der Ausgabe von
> Gleitkommazahlen zufällig zu sein scheint:
Scheint stimmt. :-)
> double x = 31371.185;
> std::cout << std::fixed
> << std::setprecision(3) << x << " ~ "
> << std::setprecision(2) << x
> << std::endl;
>
> double y = 36371.185;
> std::cout << std::fixed
> << std::setprecision(3) << y << " ~ "
> << std::setprecision(2) << y
> << std::endl;
>
> Ausgabe:
>
> 31371.185 ~ 31371.19
> 36371.185 ~ 36371.18
>
> Ich habe das mit mehreren C++-Compilern probiert, das Ergebnis ist
> immer das selbe.
Das liegt an der internen Repräsentation von Gleitkommazahlen,
vermutlich nach IEEE. Wenn Du Dir Deine Zahlen mal ganz genau
anschaust, siehst Du den Grund:
std::cout << std::setprecision(12) << x << "\n" << y << "\n";
31371.185000000001
36371.184999999998
Also alles ganz normal und korrekt. Siehe
https://de.wikipedia.org/wiki/Gleitkommazahl
Viele Grüße, Thomas
Back to de.comp.lang.iso-c++ | Previous | Next — Previous in thread | Next in thread | Find similar
Runden zufällig? Markus Donath <nntp@online.de> - 2019-09-25 11:27 +0200
Re: Runden zufällig? Thomas Dorner <td-dclic01@th-dorner.de> - 2019-09-25 16:31 +0200
Re: Runden zufällig? Markus Donath <nntp@online.de> - 2019-09-26 09:25 +0200
Re: Runden zufällig? Markus Schaaf <mschaaf@elaboris.de> - 2019-09-26 12:58 +0200
Re: Runden zufällig? Markus Donath <nntp@online.de> - 2019-09-26 15:08 +0200
Re: Runden zufällig? Markus Schaaf <mschaaf@elaboris.de> - 2019-09-27 09:31 +0200
Re: Runden zufällig? Hergen Lehmann <hlehmann.expires.5-11@snafu.de> - 2019-09-26 13:09 +0200
Re: Runden zufällig? Markus Donath <nntp@online.de> - 2019-09-27 08:47 +0200
Re: Runden zufällig? Markus Koßmann <markus.kossmann@gmx.de> - 2019-09-27 12:15 +0200
Re: Runden zufällig? Thomas Dorner <td-dclic01@th-dorner.de> - 2019-09-26 18:40 +0200
Re: Runden zufällig? Bonita Montero <Bonita.Montero@gmail.com> - 2019-09-25 16:06 +0200
Re: Runden zufällig? Stefan Reuther <stefan.news@arcor.de> - 2019-09-25 17:35 +0200
Re: Runden zufällig? Bonita Montero <Bonita.Montero@gmail.com> - 2019-09-27 08:40 +0200
csiph-web