00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023 #if defined (__GNUG__) && defined (USE_PRAGMA_INTERFACE_IMPLEMENTATION)
00024 #pragma implementation
00025 #endif
00026
00027 #ifdef HAVE_CONFIG_H
00028 #include <config.h>
00029 #endif
00030
00031 #include <cfloat>
00032 #include <cmath>
00033
00034 #include "dbleDET.h"
00035
00036 int
00037 DET::value_will_overflow (void) const
00038 {
00039 return det[1] + 1 > log10 (DBL_MAX) ? 1 : 0;
00040 }
00041
00042 int
00043 DET::value_will_underflow (void) const
00044 {
00045 return det[1] - 1 < log10 (DBL_MIN) ? 1 : 0;
00046 }
00047
00048 double
00049 DET::coefficient (void) const
00050 {
00051 return det[0];
00052 }
00053
00054 int
00055 DET::exponent (void) const
00056 {
00057 return (int) det[1];
00058 }
00059
00060 double
00061 DET::value (void) const
00062 {
00063 return det[0] * pow (10.0, det[1]);
00064 }
00065
00066
00067
00068
00069
00070