home *** CD-ROM | disk | FTP | other *** search
/ PC World Komputer 1995 November / PCWK1195.iso / inne / win95 / sieciowe / hotja32.lzh / hotjava / classsrc / java / lang / math.java < prev    next >
Text File  |  1995-08-11  |  3KB  |  114 lines

  1. /*
  2.  * @(#)Math.java    1.9 95/02/09  
  3.  *
  4.  * Copyright (c) 1994 Sun Microsystems, Inc. All Rights Reserved.
  5.  *
  6.  * Permission to use, copy, modify, and distribute this software
  7.  * and its documentation for NON-COMMERCIAL purposes and without
  8.  * fee is hereby granted provided that this copyright notice
  9.  * appears in all copies. Please refer to the file "copyright.html"
  10.  * for further important copyright and licensing information.
  11.  *
  12.  * SUN MAKES NO REPRESENTATIONS OR WARRANTIES ABOUT THE SUITABILITY OF
  13.  * THE SOFTWARE, EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED
  14.  * TO THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
  15.  * PARTICULAR PURPOSE, OR NON-INFRINGEMENT. SUN SHALL NOT BE LIABLE FOR
  16.  * ANY DAMAGES SUFFERED BY LICENSEE AS A RESULT OF USING, MODIFYING OR
  17.  * DISTRIBUTING THIS SOFTWARE OR ITS DERIVATIVES.
  18.  */
  19.  
  20. package java.lang;
  21.  
  22. /**
  23.  * Math library.
  24.  * @version     1.9, 09 Feb 1995
  25.  */
  26. public final
  27. class Math {
  28.     /**
  29.      * Don't let anyone instanciate this class
  30.      */
  31.     private Math() {}
  32.  
  33.     public static native double sin(double a);
  34.     public static native double cos(double a);
  35.     public static native double tan(double a);
  36.     public static native double asin(double a);
  37.     public static native double acos(double a);
  38.     public static native double atan(double a);
  39.     public static native double exp(double a);
  40.     public static native double log(double a);
  41.     public static native double sqrt(double a);
  42.     public static native double ceil(double a);
  43.     public static native double floor(double a);
  44.     public static native double rint(double a);
  45.     public static native double atan2(double a, double b);
  46.     public static native double annuity(double a, double b);
  47.     public static native double pow(double a, double b);
  48.  
  49.     public static int round(float a) {
  50.     return (int)floor(a + 0.5);
  51.     }
  52.     public static int round(double a) {
  53.     return (int)floor(a + (double)0.5);
  54.     }
  55.  
  56.     /**
  57.      * Set the seed of the random generator.
  58.      */
  59.     public static native void srandom(int seed);
  60.  
  61.     /**
  62.      * Generate a random number between 0.0 and 1.0.
  63.      * @return a number between 0.0 and 1.0.
  64.      */
  65.     public static native double random();
  66.  
  67.     public static int abs(int a) {
  68.     return (a < 0) ? -a : a;
  69.     }
  70.     public static long abs(long a) {
  71.     return (a < 0) ? -a : a;
  72.     }
  73.     public static float abs(float a) {
  74.     return (a < 0) ? -a : a;
  75.     }
  76.     public static double abs(double a) {
  77.     return (a < 0) ? -a : a;
  78.     }
  79.  
  80.     public static int max(int a, int b) {
  81.     return (a >= b) ? a : b;
  82.     }
  83.     public static long max(long a, long b) {
  84.     return (a >= b) ? a : b;
  85.     }
  86.     public static float max(float a, float b) {
  87.     return (a >= b) ? a : b;
  88.     }
  89.     public static double max(double a, double b) {
  90.     return (a >= b) ? a : b;
  91.     }
  92.  
  93.     public static int min(int a, int b) {
  94.     return (a <= b) ? a : b;
  95.     }
  96.     public static long min(long a, long b) {
  97.     return (a <= b) ? a : b;
  98.     }
  99.     public static float min(float a, float b) {
  100.     return (a <= b) ? a : b;
  101.     }
  102.     public static double min(double a, double b) {
  103.     return (a <= b) ? a : b;
  104.     }
  105.  
  106. }
  107.  
  108.  
  109.  
  110.  
  111.  
  112.  
  113.  
  114.