Java >> Tutoriel Java >  >> Tag >> class

Implémentation des méthodes de la classe mathématique en Java

Les différentes méthodes dont nous parlerons dans l'article suivant sont :

1) Signum :

Si le nombre dont nous parlons est supérieur à zéro que la fonction signum renvoie 1, de même, elle renvoie -1 si le nombre est inférieur à zéro et renvoie zéro si le nombre dont nous parlons est également zéro.

En terme de programmation si le paramètre que l'on passe dans la méthode signum n'est pas un nombre alors cette méthode renvoie "NaN" qui signifie Pas un numéro.

La syntaxe de la méthode Signum est :

public static double signum(double d)
OR
public static float signum(float f)

Renvoie la fonction signum de l'argument ; zéro si l'argument est zéro, 1.0 si l'argument est supérieur à zéro, -1.0 si l'argument est inférieur à zéro.

Paramètres :
d ,f - la valeur à virgule flottante dont le signe doit être renvoyé

Retours :
la fonction signum de l'argument

2) rond :

Cette méthode est utilisée pour arrondir les nombres décimaux à la valeur la plus proche.

La syntaxe de la méthode Round est :

public static long round(double a)

Renvoie la longueur la plus proche de l'argument, avec des liens arrondis à l'infini positif.

Cas particuliers :

  1. Si l'argument est NaN, le résultat est 0.
  2. Si l'argument est l'infini négatif ou toute valeur inférieure ou égale à la valeur de Long.MIN_VALUE, le résultat est égal à la valeur de Long.MIN_VALUE.
  3. Si l'argument est l'infini positif ou toute valeur supérieure ou égale à la valeur de Long.MAX_VALUE, le résultat est égal à la valeur de Long.MAX_VALUE.

Paramètres :
a - une valeur à virgule flottante à arrondir à un long.

Retours :
la valeur de l'argument arrondie à la valeur longue la plus proche.

Publicité

3) maximum :

Cette méthode est utilisée pour retourner le maximum entre deux nombres.

La syntaxe de la méthode max est :

public static double max(double x,double y)

Renvoie la plus grande de deux valeurs doubles. Autrement dit, le résultat est l'argument le plus proche de l'infini positif. Si les arguments ont la même valeur, le résultat est cette même valeur. Si l'une ou l'autre des valeurs est NaN, le résultat est NaN. Contrairement aux opérateurs de comparaison numérique, cette méthode considère que le zéro négatif est strictement inférieur au zéro positif. Si un argument est un zéro positif et l'autre un zéro négatif, le résultat est un zéro positif.

Paramètres :
x - un argument, y - un autre argument.

Retours :
le plus grand de x et y.

4) min :

Cette méthode est utilisée pour retourner le minimum entre deux nombres.

La syntaxe de la méthode min est :

public static double min(double a, double b)

Renvoie la plus petite de deux valeurs doubles. Autrement dit, le résultat est la valeur la plus proche de moins l'infini. Si les arguments ont la même valeur, le résultat est cette même valeur. Si l'une ou l'autre des valeurs est NaN, le résultat est NaN. Contrairement aux opérateurs de comparaison numérique, cette méthode considère que le zéro négatif est strictement inférieur au zéro positif. Si un argument est un zéro positif et l'autre un zéro négatif, le résultat est un zéro négatif.

Paramètres :
a - un argument, b - un autre argument.

Retours :
le plus petit de a et b.

5) abdos :

Cette méthode est utilisée pour convertir n'importe quel nombre en sa valeur absolue; c'est la même fonction module que nous avons étudiée en mathématiques.

La syntaxe de la méthode abs est :

public static double abs(double a)

Renvoie la valeur absolue d'une valeur double. Si l'argument n'est pas négatif, l'argument est renvoyé. Si l'argument est négatif, la négation de l'argument est renvoyée. Cas particuliers :

  • Si l'argument est un zéro positif ou un zéro négatif, le résultat est un zéro positif.
  • Si l'argument est infini, le résultat est l'infini positif.
  • Si l'argument est NaN, le résultat est NaN.

En d'autres termes, le résultat est identique à la valeur de l'expression :

Double.longBitsToDouble((Double.doubleToLongBits(a)<<1)>>>1)

Paramètres :
a - l'argument dont la valeur absolue doit être déterminée.

Retours :
la valeur absolue de l'argument.

Publicité

6) cbrt :

Cette méthode est utilisée pour connaître la racine cubique de n'importe quel nombre.

La syntaxe de la méthode cbrt est :

public static double cbrt(double a)

Renvoie la racine cubique d'une valeur double. Pour x fini positif, cbrt(-x) ==-cbrt(x); c'est-à-dire que la racine cubique d'une valeur négative est le négatif de la racine cubique de l'amplitude de cette valeur. Cas particuliers :

  • Si l'argument est NaN, alors le résultat est NaN.
  • Si l'argument est infini, alors le résultat est un infini avec le même signe que l'argument.
  • Si l'argument est zéro, alors le résultat est un zéro avec le même signe que l'argument.

Le résultat calculé doit être à moins de 1 ulp du résultat exact.

Paramètres :
a - une valeur.

Retours :
la racine cubique de a.

7) pow :

Cette méthode est utilisée pour connaître la valeur lorsqu'un nombre est élevé à un autre nombre.

La syntaxe de la méthode pow est :

public static double pow(double a, double b)

Renvoie la valeur du premier argument élevée à la puissance du second argument.

Paramètres :
a - la base, b - l'exposant.

Retours :
la valeur a b .

8) exp :

Cette méthode permet de connaître la valeur en élevant le nombre à la base e.

La syntaxe de la méthode exp est :

public static double exp(double a)

Renvoie le nombre d'Euler e élevé à la puissance d'une valeur double. Cas particuliers :

  • Si l'argument est NaN, le résultat est NaN.
  • Si l'argument est l'infini positif, alors le résultat est l'infini positif.
  • Si l'argument est l'infini négatif, alors le résultat est zéro positif.

Le résultat calculé doit être à moins de 1 ulp du résultat exact. Les résultats doivent être semi-monotones.

Paramètres :
a - l'exposant auquel élever e.

Retours :
la valeur e a , où e est la base des logarithmes naturels.

9) journal :

Cette méthode est utilisée pour connaître la valeur logarithmique de n'importe quel nombre, REMARQUE cette valeur logarithmique des valeurs négatives n'est pas définie et donc cette méthode renvoie NaN dans ce cas.

La syntaxe de la méthode de journalisation est :

public static double log(double a)

Renvoie le logarithme naturel (base e) d'une valeur double. Cas particuliers :

  • Si l'argument est NaN ou inférieur à zéro, le résultat est NaN.
  • Si l'argument est l'infini positif, alors le résultat est l'infini positif.
  • Si l'argument est zéro positif ou zéro négatif, le résultat est l'infini négatif.

Le résultat calculé doit être à moins de 1 ulp du résultat exact. Les résultats doivent être semi-monotones.

Paramètres :
a - une valeur.

Retours :
la valeur de a, le logarithme népérien de a.

10) log10 :

Cette méthode permet de connaître la valeur logarithmique d'un nombre lorsque la base est 10, elle renverra également NaN si le nombre dont on parle est négatif.

La syntaxe de la méthode log10 est :

public static double log10(double a)

Renvoie le logarithme en base 10 d'une valeur double. Cas particuliers :

  • Si l'argument est NaN ou inférieur à zéro, le résultat est NaN.
  • Si l'argument est l'infini positif, alors le résultat est l'infini positif.
  • Si l'argument est zéro positif ou zéro négatif, le résultat est l'infini négatif.
  • Si l'argument est égal à 10 n pour l'entier n, alors le résultat est n.

Le résultat calculé doit être à moins de 1 ulp du résultat exact. Les résultats doivent être semi-monotones.

Paramètres :
a - une valeur.

Retours :
le logarithme en base 10 de a.

Publicité

Source de la syntaxe : https://docs.oracle.com/javase/8/docs/api/java/lang/Math.html#log-double-

Considérez le programme pour illustrer les différentes méthodes de la classe java.lang.Math :

import java.util.Scanner;
import java.lang.*;

class Mathematical
{
	public static void main(String args[])
	{
		double x;
		double y;
		Scanner KB=new Scanner(System.in);
		System.out.println("Enter First Number:");
		x=KB.nextDouble();
		System.out.println("Enter Second Number");
		y=KB.nextDouble();

		//Signum Method

		int r1=(int)Math.signum(x);
		int r2=(int)Math.signum(y);
		System.out.println("Signum of "+x+" is "+r1);
		System.out.println("Signum of "+y+" is "+r2);

		//Round method 

		double round1=Math.round(x);
		double round2=Math.round(y);
		System.out.println("Rounding of "+x+" to nearest decimal place "+round1);
		System.out.println("Rounding of "+y+" to nearest decimal place "+round2);

		//Finding Maximum between two numbers

		double max=Math.max(x,y);
		System.out.println("Maximum of Two Numbers "+x+" & "+y+" is "+max);

		//Finding Minimum between two numbers

		double min=Math.min(x,y);
		System.out.println("Minimum of Two Numbers "+x+" & "+y+" is "+min);

		//Finding out the Absoute Values 

		double abs1=Math.abs(x);
		double abs2=Math.abs(y);
		System.out.println("Absoute Value of "+x+" is "+abs1);
		System.out.println("Absoute Value of "+y+" is "+abs2);

		//Finding the Cube Roots of the given Numbers

		double c1=Math.cbrt(x);
		double c2=Math.cbrt(y);
		System.out.println("Cube Root of "+x+" is "+c1);
		System.out.println("Cube Root of "+y+" is "+c2);

		//Using Power Function in Java 

		double pow1=Math.pow(x,2);
		double pow2=Math.pow(y,3);
		System.out.println("Number "+x+" when raised to the power of 2, the result is "+pow1);
		System.out.println("Number "+y+" when raised to the power of 3, the result is "+pow2);

		//Using Exponent(exp) Method , the result is of the form that 
		//e(2.71) raised to the power of any other value

		double exp1=Math.exp(x);
		double exp2=Math.exp(y);
		System.out.println("e raised to the power "+x+" is "+exp1);
		System.out.println("e raised to the power "+y+" is "+exp2);

		//Using Logarithm Method in Java when base is e

		double log1=Math.log(x);
		double log2=Math.log(y);
		System.out.println("Logarithm of "+x+" is "+log1);
		System.out.println("Logarithm of "+y+" is "+log2);

		//Using Logarithm Method in Java when base is 10
		double logof1=Math.log10(x);
		double logof2=Math.log10(y);
		System.out.println("Logarithm with base 10 of "+x+" is "+log1);
		System.out.println("Logarithm with base 10 of "+y+" is "+log2);

	}
}

Sortie

Enter First Number:
64.25458
Enter Second Number
-64.2659
Signum of 64.25458 is 1
Signum of -64.2659 is -1
Rounding of 64.25458 to nearest decimal place 64.0
Rounding of -64.2659 to nearest decimal place -64.0
Maximum of Two Numbers 64.25458 & -64.2659 is 64.25458
Minimum of Two Numbers 64.25458 & -64.2659 is -64.2659
Absoute Value of 64.25458 is 64.25458
Absoute Value of -64.2659 is 64.2659
Cube Root of 64.25458 is 4.005296733058854
Cube Root of -64.2659 is -4.005531929246174
Number 64.25458 when raised to the power of 2, the result is 4128.6510509764
Number -64.2659 when raised to the power of 3, the result is -265424.9729393972
e raised to the power 64.25458 is 8.042841886138147E27
e raised to the power -64.2659 is 1.2293463481170128E-28
Logarithm of 64.25458 is 4.162853005281435
Logarithm of -64.2659 is NaN
Logarithm with base 10 of 64.25458 is 4.162853005281435
Logarithm with base 10 of -64.2659 is NaN

Balise Java