jueves, 30 de junio de 2011

Métodos

Es una estructura de programación que permite agrupar a un bloque de código  e invocarlo a través de un nombre, y evita la redundancia de código. Además, el mantenimiento del sistema (cambios) es mucho más sencillo.


Aqui un ejemplo visual:



Existen dos tipos
Método sin retorno
void metodo(tipo1 param1, tipo2 param2,…){
}
Ejemplo:
Imprimir la suma de dos números
Creación del metodo
void suma(int a, int b){
      int  suma = a +b;
       txtS.setText(“La suma es : ” + suma);
}

Invocación
suma(15, 27);   à La suma es 42
suma(5,6); à La suma es  11

Método con retorno
tipo_salida metodo(tipo1 param1, tipo2 param2,…){
                tipo_salida valor;
}
Creación del metodo
Int  suma(int a, int b){
      int  suma = a +b;
    return suma;
 }

Invocación
int salida1 = suma(15, 27);   à salida1 será 42
int salida2 = suma(5,6); à salida2 será 11

Ejemplo01
Elabore un método que reciba  tres notas y  retorne el promedio de las notas
double calculaPromedio(double  a , double  b, double  c){
                double salida = (a + b + c)/3.0;
                return salida;
}

Invocación
double p1 = calculaPromedio(9,11,15); àp1 tomara 11.6
Ejemplo02
Elabore un método que reciba   el tipo y la cantidad. Luego,  calcule y retorne el importe de compra
Tipo - precio
0         -  25.5
1         – 16.3
2         – 14.5

doublé calculaImportecompra (int tipo, int cantidad){
          doublé salida;
                    swithc(tipo){
                                case 0:
salida = cantidad*25.5; break;
                                case 1:
salida = cantidad*16.3;break;
                                case 2:
salida = cantidad*14.4; break;
}
return salida;
}

double importCompra = 0.0;
void  calculaImportecompra (int tipo, int cantidad){
                    swithc(tipo){
                                case 0:
importCompra = cantidad*25.5; break;
                                case 1:
importCompra = cantidad*16.3;break;
                                case 2:
importCompra = cantidad*14.4; break;
}
}



Ejemplo03
Determine que se imprime al ejecutar el método procesar correspondiente a un botón de un programa:
void procesar(){
metodo1(20, 15);
metodo4(10);
}
void metodo1(int p, int q){
metodo2(2*p);
metodo3(2*q);
}
void metodo2(int n){
txtS.append(n + "\n");
}
void metodo3(int m){
txtS.append(m + "\n");
}
void metodo4(int r){
int aux = r*r*r;
txtS.append(aux + "\n");
}
40
30
1000
Ejemplo04

Determine que se imprime al ejecutar el método procesar correspondiente a un botón de un programa:

void procesar(){
int a = 135, b = 267;
metodo1(a, b);
metodo2(b);
}
void metodo1(int n, int m){
int r;
r = n%10 + m%10;
txtS.append(r + "\n");
}
void metodo2(int c){
txtS.append(c + "\n");
}
            12
           267



Ejemplo05

Determine que se imprime al ejecutar el método procesar correspondiente al botón Procesar de un programa:
void procesar(){
int a, b, c, d;
a = metodo1();
b = metodo2();
c = metodo3(a, b);
d = metodo3(12, 7);
txtS.append(a + "\n");
txtS.append(b + "\n");
txtS.append(c + "\n");
txtS.append(d + "\n");
}
int metodo1(){
return 20;
}
int metodo2(){
return 30;
}
int metodo3(int p, int q){
int r = p+q;
if(r%2 == 0)
return 1;
else
return 2;
}
20
30
1
2

No hay comentarios:

Publicar un comentario