Java tiene muchas aplicaciones de alta gama que incluyen trabajar con cálculos complejos en física, diseño de arquitectura / estructura, trabajar con mapas y las latitudes / distancias correspondientes, etc.
En este tutorial, aprenderá:
Todas estas aplicaciones requieren el uso de cálculos / ecuaciones complejas que son limpias y ordenadas a mano. Programable sería logaritmo, trigonometría, ecuaciones exponenciales, etc. Tales cálculos implican.
Ahora, no todas las tablas de registro o triangulación se pueden codificar en algún lugar de su aplicación o datos. Los datos serían muy grandes y complejos de mantener.
Java proporciona una clase muy útil para este propósito. Es la clase Java Math (java.lang.Math).
Esta clase también proporciona métodos para realizar operaciones tales como ecuaciones exponenciales, logaritmos, raíz y trigonométricas.
Echemos un vistazo a los métodos proporcionados por la clase Java Math.
Las dos características más básicas en matemáticas son la ‘e’ (parte inferior del logaritmo natural) y ‘pi’ (la relación de la circunferencia de un círculo a su diámetro). Ambas donaciones a menudo se requieren en los cálculos / operaciones anteriores.
Por lo tanto, la clase Java de matemáticas proporciona estos dos dones como dobles.
Math.E – tener valor como 2.718281828459045
Math.PI – tener un valor como 3.141592653589793
A) Veamos la siguiente tabla que nos muestra el Metodos basicos y su descripción
Método | Suelte | Argumentos |
abdominales | Devuelve el valor completo del argumento. | Doble, flotante, int, largo |
preciso | Devuelve cerrado o largo (según argumento) | doble o flotante |
hacer techo | Devuelve el número entero más pequeño que es mayor o igual que el argumento. | Doble |
suelo | Devuelve el entero más grande que es menor o igual que el argumento. | Doble |
min | Devuelve el menor de los dos argumentos. | Doble, flotante, int, largo |
uas | Devuelve el mayor de los dos argumentos. | Doble, flotante, int, largo |
La implementación del código de los métodos anteriores es la siguiente:
Nota: java.lang.Math no necesita ser importado explícitamente ya que se importa implícitamente. Todos sus métodos son estáticos.
Entero variable
int i1 = 27; int i2 = -45;
Variables dobles (decimal)
double d1 = 84.6; double d2 = 0.45;
Math.abs
public class Guru99 { public static void main(String args[]) { int i1 = 27; int i2 = -45; double d1 = 84.6; double d2 = 0.45; System.out.println("Absolute value of i1: " + Math.abs(i1)); System.out.println("Absolute value of i2: " + Math.abs(i2)); System.out.println("Absolute value of d1: " + Math.abs(d1)); System.out.println("Absolute value of d2: " + Math.abs(d2)); } }
Producción:
Absolute value of i1: 27 Absolute value of i2: 45 Absolute value of d1: 84.6 Absolute value of d2: 0.45
Math.round
public class Guru99 { public static void main(String args[]) { double d1 = 84.6; double d2 = 0.45; System.out.println("Round off for d1: " + Math.round(d1)); System.out.println("Round off for d2: " + Math.round(d2)); } }
Producción:
Round off for d1: 85 Round off for d2: 0
Math.ceil & Math.floor
public class Guru99 { public static void main(String args[]) { double d1 = 84.6; double d2 = 0.45; System.out.println("Ceiling of '" + d1 + "' = " + Math.ceil(d1)); System.out.println("Floor of '" + d1 + "' = " + Math.floor(d1)); System.out.println("Ceiling of '" + d2 + "' = " + Math.ceil(d2)); System.out.println("Floor of '" + d2 + "' = " + Math.floor(d2)); } }
Producción:
Ceiling of '84.6' = 85.0 Floor of '84.6' = 84.0 Ceiling of '0.45' = 1.0 Floor of '0.45' = 0.0
Math.min
public class Guru99 { public static void main(String args[]) { int i1 = 27; int i2 = -45; double d1 = 84.6; double d2 = 0.45; System.out.println("Minimum out of '" + i1 + "' and '" + i2 + "' = " + Math.min(i1, i2)); System.out.println("Maximum out of '" + i1 + "' and '" + i2 + "' = " + Math.max(i1, i2)); System.out.println("Minimum out of '" + d1 + "' and '" + d2 + "' = " + Math.min(d1, d2)); System.out.println("Maximum out of '" + d1 + "' and '" + d2 + "' = " + Math.max(d1, d2)); } }
Producción:
Minimum out of '27' and '-45' = -45 Maximum out of '27' and '-45' = 27 Minimum out of '84.6' and '0.45' = 0.45 Maximum out of '84.6' and '0.45' = 84.6
B) Veamos la siguiente tabla que nos muestra el Métodos exponenciales y logarítmicos y su descripción-
Método | Suelte | Argumentos |
Exp | Devuelve la base del logaritmo natural (e) al poder del argumento | Doble |
Acceso | Devuelve el hueco natural del argumento. | doble |
Pow | Toma 2 argumentos como entrada y devuelve el valor del primer argumento elevado a la potencia del segundo argumento | Doble |
suelo | Devuelve el entero más grande que es menor o igual que el argumento. | Doble |
Sqrt | Devuelve la raíz cuadrada del argumento. | Doble |
La implementación del código de los métodos anteriores es la siguiente: (Se utilizan las mismas variables que las anteriores)
public class Guru99 { public static void main(String args[]) { double d1 = 84.6; double d2 = 0.45; System.out.println("exp(" + d2 + ") = " + Math.exp(d2)); System.out.println("log(" + d2 + ") = " + Math.log(d2)); System.out.println("pow(5, 3) = " + Math.pow(5.0, 3.0)); System.out.println("sqrt(16) = " + Math.sqrt(16)); } }
Producción:
exp(0.45) = 1.568312185490169 log(0.45) = -0.7985076962177716 pow(5, 3) = 125.0 sqrt(16) = 4.0
C) Veamos la siguiente tabla que nos muestra el Métodos triangulares y su descripción-
Método | Suelte | Argumentos |
Pecado | Sine regresa del argumento especificado | Doble |
Porque | Coseno devuelve el argumento especificado | doble |
Broncearse | Tangente devuelve el argumento especificado | Doble |
A las 2 | Convierte coordenadas rectangulares (x, y) a polares (r, theta) y vuelve a theta | Doble |
toDegrees | Convierte los argumentos en pasos | Doble |
Sqrt | Devuelve la raíz cuadrada del argumento. | Doble |
toRadians | Convierte radicalmente los argumentos | Doble |
Hay argumentos predeterminados en radianes
La implementación del código es la siguiente:
public class Guru99 { public static void main(String args[]) { double angle_30 = 30.0; double radian_30 = Math.toRadians(angle_30); System.out.println("sin(30) = " + Math.sin(radian_30)); System.out.println("cos(30) = " + Math.cos(radian_30)); System.out.println("tan(30) = " + Math.tan(radian_30)); System.out.println("Theta = " + Math.atan2(4, 2)); } }
Producción:
sin(30) = 0.49999999999999994 cos(30) = 0.8660254037844387 tan(30) = 0.5773502691896257 Theta = 1.1071487177940904
Ahora, con lo anterior, puede diseñar su propia calculadora científica en Java.