18. La clase Math

Esta clase es como una biblioteca de metodos estaticos que nos permite realizar operaciones matematicas.

Los metodos de los que te hablo son los siguientes:

    abs( double a );

    round( double a );    Devuelve el entero mas cercano a un numero suministrado

    min( int a, int b );     Devuelve el menor de los dos numeros suministrados

    max(int a, int b );     Devuelve el mayor de los dos numeros suministrados

    floor( double a );

    ceil( double a );

    random( );       Devuelve un numero aleatorio entre el 0 y el numero asignado

Nosotros, como es un curso basico, vamos a ver solo los que estan coloreados. Vamos primero con el metodo round().

Bien, como esto son bibliotecas, hay que importarlas a la clase y esto se escribe antes de la clase, de esta forma:

 

import java.lang.Math.*;        // Importamos la biblioteca Math. El asterisco significa, importar todos los paquetes dentro de Math

public class Ejemplo{

    public static void main(String[ ]args){

        

    }

}

 

Intenta suministrarle un numero decimal, ejecuta y mira el resultado en la consola, por ejemplo yo te voy a poner este:

 

import java.lang.Math.*;    

public class Ejemplo{

    public static void main(String[ ]args){

        System.out.println( Math.round(3.8) );

    }

}

 

El resultado en la consola sera 4.

Lo que hace es redondear el numero decimal al numero mas cercano, como es 3.8 el mas cercano es 4. Si fuese 3.2 el resultado seria 3.

Recuerda tambien que los decimales no se separan con comas, sino con puntos, al estilo americano.

Pasamos ahora al metodo max() y min(). intenta hacer el siguiente ejemplo:

 

import java.lang.Math.*;       

public class Ejemplo{

    public static void main(String[ ]args){

        System.out.println( Math.min(8,3) );

        System.out.println( Math.max(8,3) );

    }

}

 

El resultado para min() sera 3, y el resultado para max() sera 8. Los numeros se pueden sustituir por variables.

Ahora vamos a ver el metodo random(). 

 

import java.lang.Math.*;       

public class Ejemplo{

    public static void main(String[ ]args){

        System.out.println( Math.round(Math.random() * 30) );

    }

}

 

Aqui, lo que le hemos indicado es que nos muestre por consola un numero aleatorio comprendido entre el 0 y el 30. Cada vez que ejecutaras el programa, te mostrara un numero diferente comprendido entre los numeros 0 y el 30.

Primero aplicamos un metodo "round()" y dentro de sus parametros, aplicamos el metodo "random()". ¿Por que aplicamos primero un metodo "round()"?. Pues, para que el numero que seleccione al azar, que no sea decimal y lo redondee.

 

Nota: cuando queremos crear un numero aleatorio y guardarlo en una variable, al numero aleatorio deberemos indicarle de que tipo es, aqui el ejemplo:

 

int azar = (int) Math.round(Math.random()*30);