Funciones Predefinidas

En el lenguaje Java se pueden calcular las funciones matemáticas típicas que vienen en una calculadora. Por ejemplo para calcular el lado de un cuadrado a partir de su área se puede usar la función que calcula la raíz cuadrada:

    double lado= sqrt(area);
En esta instrucción, sqrt(area) es una llamada a una función. Una llamada a función es una forma de expresión aritmética. Su sintaxis general es:

``función''( ``argumentos'')

En donde ``argumentos'' son una o más expresiones separadas por coma. Una llamada a una función se puede colocar en cualquier parte en donde sea válido colocar una expresión.

Una función puede ser por ejemplo:

(Obs. a los profesores: vean sólo algunas de estas funciones. La idea es mostrar la sintaxis.)

Función Significado Ejemplo Valor
sqrt(x) raíz cuadrada sqrt(4.0) 2.0
abs(x) valor absoluto abs(-3.0) 3.0
pow(x,y) x elevado a y pow(2.0, 3.0) 8.0
exp(x) e a la x exp(1.0) 2.71...
log(x) logaritmo natural log(E) 1.0

O puede ser una función trigonométrica:

Función Significado Ejemplo Valor
sin(x) seno sin(PI/2) 1.0
cos(x) coseno sin(PI) -1.0
tan(x) tangente tan(PI/4) 1.0
asin(x) arco seno asin(1.0) PI/2
acos(x) arco coseno asin(-1.0) PI
atan(x) arco tangente atan(1.0) PI/4

O puede ser una función de conversión:

Función Significado Ejemplo Valor
round(x) redondea round(1.5) 2.0
round(1.4) 1.0
floor(x) piso floor(3.9) 3.0
floor(-5.2) -6.0
ceil(x) techo ceil(3.9) 4.0
ceil(-5.2) -5.0

O puede ser una función para calcular el máximo o mínimo:

Función Significado Ejemplo Valor
max(x) máximo max(3.5, 5.2) 5.2
min(x) mínimo min(3.5, 5.2) 3.5

Todas las funciones anteriores operan con números reales (double). La siguiente función toma un número real y devuelve un entero:

Función Significado Ejemplo Valor
trunc(x) convierte trunc(3.9) 3
a entero trunc(-5.2) -5

Ejercicio: Calcular el máximo de 3 números.

    Primer número ? 2.1
    Segundo número ? 8.6
    Tercer número ? -2.0
    El máximo es : 8.6
Solución:

    // Leer datos
    print("Primer número ? ");
    double a= readDouble();
    print("Segundo número ? ");
    double b= readDouble();
    print("Tercer número ? ");
    double c= readDouble();
    // Calcular el máximo
    print("El máximo es : ");
    print(max(max(a,b),c);
Los argumentos de una llamada a una función pueden ser el resultado de otra llamada a función.