Download apuntes de funciones
Document related concepts
no text concepts found
Transcript
Programación Java - Ingeniería de Sistemas - UATF 1 Ing. Limber Ruíz Molina FUNCIONES (METODOS) En Java una función es un módulo de un programa separado del cuerpo principal, que realiza una tarea específica y que puede regresar un valor a la parte principal del programa u otra función o procedimiento que la invoque. Las funciones en java tienen el siguiente formato: Parámetros que recibe la función Nombre de la función Tipo de dato que devuelve la función int suma ( int A, int B) { int C=A+B; return (C); Dato que devuelve la función } La anterior función tiene como nombre suma, esta función recibe dos parámetros de tipo entero y retorna (devuelve) un valor de tipo entero (int) La función anterior se puede utilizar en un programa en java de la siguiente manera: class funciones1 { public static void main(String args[]) { int num1=4; int num2=20; int num3=suma(num1,num2); System.out.println(num3); } static int suma(int A,int B) { int C=A+B; return (C); } } Función principal (main) La función principal llama a la función suma Función suma Programación Java - Ingeniería de Sistemas - UATF 2 Ing. Limber Ruíz Molina En java las funciones deben declararse static (se analizará más adelante). Las funciones pueden estar antes o después de la función principal (main). Cómo se ve en el siguiente ejemplo: class funciones1 { static int suma(int A,int B) { int C=A+B; return (C); } public static void main(String args[]) { int num1=4; int num2=20; int num3=suma(num1,num2); System.out.println(num3); } } A continuación veremos algunos ejemplos con funciones: 1. Función que calcula el promedio de tres números. Ej si A=3.0 B=7.0 C=4.0 El promedio será: 4.6666666666 Como el resultado puede ser un número real la función debe devolver un dato de tipo real (float o double) class Funciones2 { static float promedio(float A,float B,float C) { float prom=(A+B+C)/3; return (prom); } public static void main(String args[]) Programación Java - Ingeniería de Sistemas - UATF 3 Ing. Limber Ruíz Molina { float num1=3; float num2=7; float num3=4; float resultado=promedio(num1,num2,num3); System.out.println(resultado); } } 2. Función para calcular f ( x) x 1 x class funcion3 { public static void main(String args[]) { double B=f1(4); System.out.println(B); } static double f1(int x) { double resul=(Math.sqrt(x)/(1-x)); return(resul); } } 3. Función “fibo(x)” que reciba un número entero como parámetro y devuelva su correspondiente de la serie Fibonacci. la serie fibonacci es la siguiente: entonces la fibo de 2 será la fibo de 4 será la fibo de 7 será 1 , 1 , 2 , 3 , 5 , 8 , 13 , 21 , 34 , 55 , ………………… fibo(2) = 1 fibo(4) = 3 fibo(7) = 13 etc. Programación Java - Ingeniería de Sistemas - UATF 4 Ing. Limber Ruíz Molina class Ejemplo3 { public static void main(String args[]) { int A=fibo(6); System.out.println(A); } static int fibo(int x) { int fib=0,a=1,b=0; for(int i=1;i<=x;i++) { fib=a+b; a=b; b=fib; } return(fib); } } 4. Función que recibe como parámetro un vector de enteros y devuelve la sumatoria de sus datos class Ejemplo4 { public static void main(String[] args) { int v[]={3,5,7,4}; int s=sumatoriaVector(v); System.out.print(s); } static int sumatoriaVector(int A[]) { int sum=0; int tam=A.length; for(int i=0;i<tam;i++) sum=sum+A[i]; return sum; } } Programación Java - Ingeniería de Sistemas - UATF 5 Ing. Limber Ruíz Molina 5. Función que recibe como parámetro una cadena y devuelve la misma pero en forma invertida class Ejemplo5 { static String invertir(String cad) { String S=""; int tam=cad.length(); for(int i=tam-1;i>=0;i--) S=S+cad.charAt(i); return S; } public static void main(String[] args) { String A="Alexander"; String B=invertir(A); System.out.print(B); } }