Clase 3 - Diseño Descendente
Clase 3 - Diseño Descendente
Clase 3 - Diseño Descendente
Diseño descendente
Diseño descendente
Ventajas de dividir el problema en subproblemas
● La implementación de un subproblema se puede ejecutar más
de una vez ahorrando tiempo de programación y cantidad de
código.
● La división de un problema en subproblemas facilita la división
de tareas dentro de un grupo de trabajo.
● La resolución de cada subproblema se puede comprobar
individualmente.
● La división de problemas en subproblemas hace al programa
más legible y modificable
Diseño descendente
Cocinar
Un método es una porción de código que lo puede llamar el main o cualquier otro
método. Ej: calcular(); sumar(a,b);mostrar();
Si retorna un valor, el tipo debe coincidir con el tipo declarado en la cabecera del
método. Se dice que es una función. Ej: public static int sumar(int a, int b)
Declaración formal de métodos
Consola
public class Clase_3_Ejemplo_3 { Tabla de multiplicar del 5
public static void main (String [] args){
2 System.out.println(“Tabla de multiplicar del 5”);
imprimirTabla5(); //declaración local
}
Consola
public class Clase_3_Ejemplo_3 { Tabla de multiplicar del 5
public static void main (String [] args){
System.out.println(“Tabla de multiplicar del 5”);
3 imprimirTabla5(); //declaración local
}
Consola
public class Clase_3_Ejemplo_3 { Tabla de multiplicar del 5
public static void main (String [] args){
System.out.println(“Tabla de multiplicar del 5”);
imprimirTabla5(); //declaración local
}
Consola
public class Clase_3_Ejemplo_3 { Tabla de multiplicar del 5
public static void main (String [] args){
System.out.println(“Tabla de multiplicar del 5”);
imprimirTabla5(); //declaración local
}
Consola
public class Clase_3_Ejemplo_3 { Tabla de multiplicar del 5
public static void main (String [] args){ 5
System.out.println(“Tabla de multiplicar del 5”);
imprimirTabla5(); //declaración local
}
6 }
System.out.println(5*i);
}
}
¿Cómo se ejecuta?
Consola
public class Clase_3_Ejemplo_3 { Tabla de multiplicar del 5
public static void main (String [] args){ 5
System.out.println(“Tabla de multiplicar del 5”); 10
imprimirTabla5(); //declaración local 15
} 20
25
public static void imprimirTabla5(){ //declaración formal 30
for (int i = 1 ; i <= 10; i++) { 35
7..15 }
System.out.println(5*i); 40
45
} 50
}
¿Cómo se ejecuta?
Consola
public class Clase_3_Ejemplo_3 { Tabla de multiplicar del 5
public static void main (String [] args){ 5
System.out.println(“Tabla de multiplicar del 5”); 10
imprimirTabla5(); //declaración local 15
} 20
25
public static void imprimirTabla5(){ //declaración formal 30
for (int i = 1 ; i <= 10; i++) { 35
System.out.println(5*i); 40
16 }
} 45
50
}
¿Cómo se ejecuta?
Consola
public class Clase_3_Ejemplo_3 { Tabla de multiplicar del 5
public static void main (String [] args){ 5
System.out.println(“Tabla de multiplicar del 5”); 10
imprimirTabla5(); //declaración local 15
} 20
25
public static void imprimirTabla5(){ //declaración formal 30
for (int i = 1 ; i <= 10; i++) { 35
System.out.println(5*i); 40
} 45
50
17 }
}
¿Cómo se ejecuta?
Consola
public class Clase_3_Ejemplo_3 { Tabla de multiplicar del 5
public static void main (String [] args){ 5
System.out.println(“Tabla de multiplicar del 5”); 10
imprimirTabla5(); //declaración local 15
}
18 20
25
public static void imprimirTabla5(){ //declaración formal 30
for (int i = 1 ; i <= 10; i++) { 35
System.out.println(5*i); 40
} 45
} 50
}
¿Cómo se ejecuta?
Consola
public class Clase_3_Ejemplo_3 { Tabla de multiplicar del 5
public static void main (String [] args){ 5
System.out.println(“Tabla de multiplicar del 5”); 10
imprimirTabla5(); //declaración local 15
} 20
25
public static void imprimirTabla5(){ //declaración formal 30
for (int i = 1 ; i <= 10; i++) { 35
System.out.println(5*i); 40
} 45
} 50
19 }
FIN
Uso del return en funciones (métodos que retornan algo)
Ahora vamos a desarrollar la parte que nos faltaba para obtener el número por teclado pero con una función.
● Pseudocódigo
● Diseño descendente con métodos: procedimientos y funciones
● Ámbito de una variable: local y global
● Parámetros
Errores comunes en métodos
…
public static boolean esPositivo(int x) {
if (x<0)
return false;
if (x>0)
return true;
return true;
}
Flujos de retorno