gnu.java.math

Class Fixed


public final class Fixed
extends Object

Utility methods for fixed point arithmetics.

Method Summary

static int
ceil(int n, int a)
Returns the ceiling value of a fixed point value a with the n digits.
static int
div(int n, int a, int b)
Divides two fixed point values with n digits.
static double
doubleValue(int n, int a)
Returns the fixed point value a with n digits as double.
static int
fixedValue(int n, double a)
Returns the fixed point value that corresponds to the specified double value a with n digits.
static int
fixedValue(int n, float a)
Returns the fixed point value that corresponds to the specified float value a with n digits.
static float
floatValue(int n, int a)
Returns the fixed point value a with n digits as float.
static int
floor(int n, int a)
Returns the floor value of a fixed point value a with n digits.
static int
intValue(int n, int a)
Returns the integer value of the specified fixed point value a.
static int
mul(int n, int a, int b)
Multiplies two fixed point values with n digits.
static int
round(int n, int a)
Returns the round value of a fixed point value a with the n digits.
static int
roundIntValue(int n, int a)
Returns a fixed point decimal as rounded integer value.
static int
trunc(int n, int a)
Truncates the number so that only the digits after the point are left.

Methods inherited from class java.lang.Object

clone, equals, extends Object> getClass, finalize, hashCode, notify, notifyAll, toString, wait, wait, wait

Method Details

ceil

public static int ceil(int n,
                       int a)
Returns the ceiling value of a fixed point value a with the n digits.
Parameters:
n - the number of digits
a - the fixed point value
Returns:
ceil(a) as fixed point value

div

public static int div(int n,
                      int a,
                      int b)
Divides two fixed point values with n digits.
Parameters:
n - the number of digits
a - the first operand as fixed point value
b - the second operand as fixed point value
Returns:
a / b as fixed point value

doubleValue

public static double doubleValue(int n,
                                 int a)
Returns the fixed point value a with n digits as double.
Parameters:
n - the number of digits
a - the fixed point value
Returns:
the double value of a

fixedValue

public static int fixedValue(int n,
                             double a)
Returns the fixed point value that corresponds to the specified double value a with n digits.
Parameters:
n - the number of digits
a - the double value
Returns:
the fixed point value

fixedValue

public static int fixedValue(int n,
                             float a)
Returns the fixed point value that corresponds to the specified float value a with n digits.
Parameters:
n - the number of digits
a - the float value
Returns:
the fixed point value

floatValue

public static float floatValue(int n,
                               int a)
Returns the fixed point value a with n digits as float.
Parameters:
n - the number of digits
a - the fixed point value
Returns:
the float value of a

floor

public static int floor(int n,
                        int a)
Returns the floor value of a fixed point value a with n digits.
Parameters:
n - the number of digits
a - the fixed point value
Returns:
floor(a) as fixed point value

intValue

public static int intValue(int n,
                           int a)
Returns the integer value of the specified fixed point value a. This simply cuts of the digits (== floor(a)).
Parameters:
n - the number of digits
a - the fixed point value
Returns:
the integer value

mul

public static int mul(int n,
                      int a,
                      int b)
Multiplies two fixed point values with n digits.
Parameters:
n - the number of digits
a - the first operand as fixed point value
b - the second operand as fixed point value
Returns:
a * b as fixed point value

round

public static int round(int n,
                        int a)
Returns the round value of a fixed point value a with the n digits.
Parameters:
n - the number of digits
a - the fixed point value
Returns:
round(a) as fixed point value

roundIntValue

public static int roundIntValue(int n,
                                int a)
Returns a fixed point decimal as rounded integer value.
Parameters:
n - the number of digits
a - the fixed point number
Returns:
the fixed point decimal as rounded integer value

trunc

public static int trunc(int n,
                        int a)
Truncates the number so that only the digits after the point are left.
Parameters:
n - the number of digits
a - the fixed point value
Returns:
the truncated value

Fixed.java -- Utility methods for fixed point arithmetics Copyright (C) 2006 Free Software Foundation, Inc. This file is part of GNU Classpath. GNU Classpath is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Classpath is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Classpath; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. Linking this library statically or dynamically with other modules is making a combined work based on this library. Thus, the terms and conditions of the GNU General Public License cover the whole combination. As a special exception, the copyright holders of this library give you permission to link this library with independent modules to produce an executable, regardless of the license terms of these independent modules, and to copy and distribute the resulting executable under terms of your choice, provided that you also meet, for each linked independent module, the terms and conditions of the license of that module. An independent module is a module which is not derived from or based on this library. If you modify this library, you may extend this exception to your version of the library, but you are not obligated to do so. If you do not wish to do so, delete this exception statement from your version.