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);
}
}