métodos y funciones
TRANSCRIPT
-
8/8/2019 Mtodos y funciones
1/12
MTODOS Y
FUNCIONESAyudante: Esteban Rodrguez
-
8/8/2019 Mtodos y funciones
2/12
Qu es una funcin o un mtodo?
Un mtodo es lo mismo que una funcin.
Un mtodo es un bloque de cdigo que posee un nombre
Recibe parmetros o argumentos (opcionalmente)
Contiene sentencias o instrucciones ( opcionalmente)
Devuelve un valor de un tipo conocido ( opcionalmente)
Cuando crebamos un programa ocupbamos la funcin principal llamada main.
(Al escribir public static void main (String [] args) nos referamos a la funcin principal)
Cmo se crea un mtodo?
Al momento de crear un mtodo nos encontramos con 2 casos
Devuelve un valor NO devuelve un valor
-
8/8/2019 Mtodos y funciones
3/12
Creando un mtodo que devuelve un valor
Public static Tipo_de_valor_devuelto nombre_funcin ( lista_argumentos){
SENTENCIA1
SENTENCIA2
}
Tipo_de_valor_devuelto, se refiere al tipo, ya sea int, String, char, del valor que se
retornar hacia la funcion principal.
Nombre_funcin es el nombre con la cual se llamar a la funcin desde el main.
La lista de argumentos se expresa declarando el tipo y nombre de los mismos (comoen las declaraciones de variables). Si hay ms de uno se separan por comas.
-
8/8/2019 Mtodos y funciones
4/12
Creando un mtodo que NO devuelve un valor
Public static void nombre_funcin ( lista_argumentos){
SENTENCIA1
SENTENCIA2
}
Void , se refiere al tipo, ya sea int, String, char, del valor que se retornar hacia la
funcion principal.
Nombre_funcin es el nombre con la cual se llamar a la funcin desde el main.
La lista de argumentos se expresa declarando el tipo y nombre de los mismos (comoen las declaraciones de variables). Si hay ms de uno se separan por comas.
Si no devuelve nada, la clausura return(); no va!
Las matrices se trabajan siempre con void!
-
8/8/2019 Mtodos y funciones
5/12
Los mtodos se ubican antes o despus del main siempre dentro de la misma clase
public class metodos_despues{
public static void main (String [] args){
SENTENCIA 1.
SENTENCIA 2.
}// main
FUNCION 1.
FUNCION 2.
} // class
public class metodos_antes{
FUNCION 1.FUNCION 2.
public static void main (String [] args){
SENTENCIA 1.
SENTENCIA 2.
}// main
} // class
-
8/8/2019 Mtodos y funciones
6/12
Confuso?... Vamos a un ejemplo.
Supongamos que queremos hacer un programa que sume dos numeros. Para ello,
tenemos 2 opciones, realizar todas las operaciones dentro del main o crear una
funcin que haga lo que estoy buscando.
Primero lo realizaremos de forma bsica como lo hacamos antes.
public static SumaNumeros{
public static void main (String [] args){
int numero1,numero2,resultado;
StdOut.print( Ingrese el primer numero);
numero1= StdIn.readInt();
StdOut.print( Ingrese el segundo numero);numero2= StdIn.readInt();
resultado= (numero1+numero2);
StdOut.print( El resultado es + resultado)
}
}
-
8/8/2019 Mtodos y funciones
7/12
Fcil no?... Ahora lo haremos de otra forma, utilizando 2 funciones,
una para agregar los nmeros y otra para realizar la suma.public class SumaNumeros{
Public static double numero1,numero2; // se declaran variables globales ( las reconocen todas las
funciones)
Public static void AgregarNumeros (){
StdOut.print( Ingrese el primer numero);numero1=StdIn.readInt();
StdOut.print( Ingrese el segundo numero);
numero2=StdIn.readInt();
} // termina funcin AgregarNumeros
public static double SumarNumeros ( int a, int b){
Int resultado= a+b;
return ( resultado);}
public static void main (String [] args){
int Resultado;
AgregarNumeros();
Resultado = SumarNumeros( numero1, numero2 );
StdOut.print(Resultado);
}
}
-
8/8/2019 Mtodos y funciones
8/12
Muy difcil?, analicemos por partes, partamos por el main.
public static void main (String [] args){
int Resultado;
AgregarNumeros();
Resultado = SumarNumeros( numero1, numero2 );
StdOut.print(Resultado);
}
Lo primero que se hace es declarar una variable int para mostrar el resultado
En la tercera lnea, notamos una operacin llamada AgregarNumeros(); lo que hace es llamar una funcin
fuera del main llamada AgregarNumeros la cual realizar lo que esta indique, en este caso llama a la
funcin que se muestra a continuacin:
Public static void AgregarNumeros (){StdOut.print( Ingrese el primer numero);numero1=StdIn.readInt();StdOut.print( Ingrese el segundo numero);numero2=StdIn.readInt();}
Lo que hace es darle valores a las variables globales numero1 y numero2 de las cuales, sus
valores son reconocidos por todas las funciones dentro del class.
-
8/8/2019 Mtodos y funciones
9/12
public static void main (String [] args){
int Resultado;
AgregarNumeros();
Resultado = SumarNumeros( numero1, numero2 );
StdOut.print(Resultado);
}
Luego de haber asignado valores a las variables numero 1 y numero 2, a la variable Resultado ya
declarada como double le asignamos un valor que depende de una funcin ya creada llamada
SumarNumeros que recibe dos enteros a y b para funcionar.
public static double SumarNumeros ( int a, int b){double resultado= a+b;return ( resultado);
}
En esta funcin, se declara una variable llamada resultado la cual suma los numeros a y b, que
corresponden a los valores de numero1 y numero2. y por ltimo, retorna el valor asignndolo a
la variable Resultado.
Volviendo al main:
-
8/8/2019 Mtodos y funciones
10/12
Con eso termina el programa y se muestra por pantalla la variable Resultado.
Lo mas difcil de esto es la funcin que recibe parmetros, revismosla nuevamente.
La funcin esta declarada de esta manera:
public static int SumarNumeros ( int a, int b)
O sea, es una funcin que retorna una variable de tipo double ( no lleva void) y que
recibe como parmetros dos enteros que dentro de la funcin se les llamarn a y b.
Como los recibe , tiene que haber algo que se los de, es por esto, que en el main la
funcin se le llama asi:
Resultado = SumarNumeros( numero1, numero2 );
En la sentencia anterior, les estamos enviando dos valores con los cuales yo deseo
que mi funcin trabaje, le envo dos nmeros enteros llamado numero1 y numero2,
los cuales tendran de apodo a y b respectivamente, dentro de la funcin.
-
8/8/2019 Mtodos y funciones
11/12
Por ltimo, revisemos el comando return(variable);
public static double SumarNumeros ( int a, int b){
double resultado= a+b;return ( resultado);
}
La funcion que reciba parametros y retornaba un valor era la siguiente:
Dentro del main, llamamos la funcion asi:
Resultado = SumarNumeros( numero1, numero2 );
Podemos notar que en la funcin, retornamos la variable resultado que equivale a la
suma de a+b. Que pasa con esto?
Le estamos diciendo a la variable Resultado que su valor sea la funcin SumarNumero
con los parmetros numero1 y numero2 por lo tanto el valor retornado de la funcin
corresponder al valor que la variable Resultado adquiera
-
8/8/2019 Mtodos y funciones
12/12
ESPERO QUE ENTIENDAN ESTAMATERIA, NO ES NADA
COMPLICADA, ESPERO QUE
ESTUDIEN PARA QUE LLEGENCON DUDAS!
SALUDOS
teban