diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2014-02-12 14:19:53 -0800 |
---|---|---|
committer | Dirk Hohndel <dirk@hohndel.org> | 2014-02-12 17:41:49 -0800 |
commit | 23baf20f569f1f34ab4efa68996f24c3ad49fe05 (patch) | |
tree | dc10775b82b6f0e69d36bafeec54430bdec8126b /divelist.c | |
parent | 7ae05b4f710fc0d03a2198397e7dd779f477fd79 (diff) | |
download | subsurface-23baf20f569f1f34ab4efa68996f24c3ad49fe05.tar.gz |
Use "rint()" instead of rounding manually with "+ 0.5"
rint() is "round to nearest integer", and does a better job than +0.5
(followed by the implicit truncation inherent in integer casting). We
already used 'rint()' for values that could be negative (where +0.5 is
actively wrong), let's just make it consistent.
Of course, as is usual for the messy C math functions, it depends on the
current rounding mode. But the default round-to-nearest is what we want
and use, and the functions that explicitly always round to nearest
aren't standard enough to worry about.
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
Diffstat (limited to 'divelist.c')
-rw-r--r-- | divelist.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/divelist.c b/divelist.c index a9a2b451c..9dc4b9438 100644 --- a/divelist.c +++ b/divelist.c @@ -226,7 +226,7 @@ static int calculate_otu(struct dive *dive) if (po2 >= 500) otu += pow((po2 - 500) / 1000.0, 0.83) * t / 30.0; } - return otu + 0.5; + return rint(otu); } /* calculate CNS for a dive - this only takes the first divecomputer into account */ int const cns_table[][3] = { |