Você está na página 1de 7

LECCIN 9 Y 10

ESTRUCTURAS PRINCIPALES DEL LENGUAJE VI

OTROS CLCULOS NUMRICOS. CLASE MATH I Y II. REFUNDICIONES

Todo programa java debe estar compuesto al menos por una clase. En java podemos
tener clases propias y clases predefinidas.

CLASES PROPIAS: Estas son las clases que creamos nosotros mismos. Como por
ejemplo las clases que se muestran en la imagen que son las que hemos venido
creando:

CLASES PREDEFINIDAS: Estas son las clases que estn ya construidas dentro del
lenguaje de programacin java. En la siguiente imagen se muestran por ejemplo 4
clases predefinidas de java:
En java existen muchas clases, y cada clase puede tener muchos mtodos. Por lo
cual tratar de memorizar todo esto no es nada fcil.

API JAVA: Es una biblioteca donde vienen todas las clases del lenguaje de
programacin java.

CLASE MATH: Esta clase se utiliza para efectuar clculos matemticos.

ALGUNOS MTODOS DE LA CLASE MATH:

CONSTANTES PREDEFINIDAS O CONSTANTES DE CLASES:

Anteriormente aprendimos a crear nuestras propias constantes. Tambin en java


existen constantes predefinidas que vienen incluidas en las clases java las cuales no
se pueden modificar. Como ejemplo de estas constantes tenemos al nmero PI ().

EJEMPLOS UTILIZANDO LA CLASE MATH

Para ello empezamos creando la siguiente clase:

RAIZ CUADRADA DE UN NMERO. MTODO Math.sqrt();

Este mtodo de la clase math nos permite obtener la raz cuadrada de un nmero. Es
importante mencionar que este mtodo solo admite datos tipo double y tambin
devuelve datos tipo double.
En este ejemplo se ha declarado una variable a la cual llamamos raiz la cual
almacena un dato tipo double. ojo la variable raiz debe almacenar estrictamente un
dato tipo double ya que dicha variable almacenar nuestro resultado y el mtodo
Math.sqrt(); solo devuelve como resultado un dato tipo double.
Como se dijo
anteriormente el mtodo
Math.sqrt(); solo admite
datos tipo double. Y
aunque como argumento
hemos colocado un dato
entero (el nmero 2) el
mtodo Math.sqrt(); lo
considera como un
double igual a (2.0)

Como podemos observar al ejecutar el programa se nos muestra en la consola de


comandos de eclipse el resultado.

PROBANDO CON OTRO NMERO

En este caso se ha colocado como argumento el nmero 9. Ya sabemos que este es


un entero y no un double, pero tambin sabemos que el mtodo Math.sqrt(); lo
considera como un double (9.0)

De la misma manera sabemos que la raiz cuadrada del nmero 9 es un entero (el
nmero 3). Pero tambin sabemos que el mtodo Math.sqrt(); devuelve solo datos tipo
double. Por tal razn nos aparece como resultado el decimal (3.0)
REDONDEO DE UN NMERO. MTODO Math.round();

Para redondear un nmero se debe utilizar el mtodo Math.round();

Existen 2 tipos de mtodos tipo Math.round();

El primero solo recibe datos tipo float y devuelve datos tipo int.

El segundo solo recibe datos tipo double y devuelve datos tipo long.

EJEMPLO 1: (REDONDEO DE 5.5 A 6)

RECORDAR QUE
LOS DATOS TIPO
FLOAT LLEVAN EL
SUFIJO F AL FINAL.

EJEMPLO 1: (REDONDEO DE 5.49 A 5)


SITUACIONES O PROBLEMAS COMUNES EN LA PROGRAMACIN

(USO DE LAS REFUNDICIONES)

Para explicar el tema de las refundiciones consideremos el siguiente ejemplo.

Supongamos que tenemos un dato tipo double igual a 6.88

Y supongamos que queremos redondearlo a 7.

Este redondeo podemos realizarlo sin problemas utilizando .

Este redondeo nos dara como resultado un dato tipo long con valor igual a 7.

Pero supongamos tambin que en vez de que se nos arroje un dato tipo long
queremos obtener obligatoriamente un dato tipo int.
En la lnea 6 se ha declarado
En este caso debemos realizar la siguiente refundicin: otra variable la cual es tipo
int y se le dio como nombre
En la lnea 5 se ha declarado una variable tipo double con el nombre redondeo. Tambin en la
numero1 y se ha iniciado dndole como valor el dato tipo double igual a 6.88 misma lnea se ha iniciado la
variable aplicando el
mtodo Math.round(); a la
variable numero1.

Como bien se sabe el


resultado que devuelve el
mtodo Math.round();
cuando admite datos tipo
double, es un dato tipo long.

Por tal razn para evitar que


se produzca un error al
tratar de almacenarse un
resultado tipo long en una
variable que fue declarada
como int se hace una
refundicin colocando
(int) antes del mtodo
Math.round();

De esta manera el resultado


que devuelve el mtodo
math.round(); es
transformado de long a int y
se puede almacenar sin
Observamos el resultado: problemas en la variable
redondeo.
ELEVACIN DE UN NMERO A UNA POTENCIA. MTODO Math.pow();

Para trabajar con las potenciaciones se utiliza el mtodo Math.pow();

El dato correspondiente a la base debe ser definido como un double.

El dato correspondiente al exponente tambin debe ser definido como un double.

El resultado que nos devuelve el mtodo es un double.

EJEMPLO 1 ELEVACIN DE 23

Podemos cambiar la variable resultado de double a byte y almacenar sin problemas


el resultado que nos arroje Math.round(); haciendo una refundicin de double a byte.

Você também pode gostar