Está en la página 1de 6

RECONOCEDOR DE BUCLES

Especifique, disee e implemente: Una herramienta automtica


que reconozca los bucles y los clasifique.
Enva tu archivo a travs de este medio.

Partimos por el ejemplo: Ingresar una serie de nmero enteros y mostrar la


sumatoria de los pares y la sumatoria de los impares. La cantidad de nmeros
debe ser controlada.
Anlisis: Este proceso debe decidir primero que ha de realizarse en cada
iteracin. Dejamos de lado el bucle por un momento, suponiendo que el
proceso se va repetir una sola vez. Cul es el proceso que se va a repetir?,
examinamos el ejemplo, y vemos que el proceso que se repite es la suma, para
ambos casos.
Luego de determinar las operaciones bsicas a ejecutarse en el bucle debemos
determinar las partes del proceso que son necesarios para el bucle, en el
ejemplo tendremos que inicializar las variables, necesitaremos, SUMAPAR,
SUMAIMPAR, y CONTADOR, las operaciones de suma deben estar
inicializados en cero, y el contador, determinad la cantidad de vueltas del bucle,
para este caso inicializaremos en uno, lo cual se incrementar en cada bucle.
En el bucle, daremos una condicin, este permitir ejecutar el proceso de la
suma de pares e impares, repetidamente hasta el lmite de la condicin, lo cual
se evaluara en cada vuelta, hasta el trmino del mismo. Finalmente cuando se
haya cumplido toda la condicin del bucle, SUMAPAR, y SUMAIMPAR, se
habrn incrementado en cada vuelta, y entonces podremos ver el resultado
final.
DISEO: Es cuando hacemos el diseo del requerimiento en un algoritmo, e
inicialmente como un pseudocdigo o diagrama de flujo. Luego del ejemplo en
el algoritmo ser lo siguiente:

{
Escribir Ingrese la cantidad de elementos de la serie
Leer CANTIDAD

CONTADOR = 1;
SUMAPAR = 0;
SUMAIMPAR = 0;

Mientras (CONTADOR <= CANTIDAD)


{
Escribir Ingrese un nmero entero
Leer NMERO
Si (NUMERO%2==0)
SUMAPAR = SUMAPAR + NUMERO
Sino
SUMAIMPAR = SUMAIMPAR + NUMERO
CONTADOR = CONTADOR + 1
}
Escribir La sumatoria de los nmeros pares es:, SUMAPAR
Escribir La sumatoria de los nmeros impares es:, SUMAIMPAR
}

Y el diagrama de flujo elaborado con el programa DFD sera lo siguiente:

Implementacin: Dado el visto bueno al programa podremos hacer


la implementacin del algoritmo en un lenguaje de programacin, lo
cual sera ya la parte funcional del requerimiento, veamos este
algoritmo implementado en Java.

package bucles;
import java.util.Scanner;
/**
*
* @author DAVID
*/
public class BUCLES {
public void sumas(){
//Definir cantidad de numeros a ingresar
Scanner ner = new Scanner(System.in);
System.out.println("Ingrese cantidad de datos a sumar");
int cantidad = ner.nextInt();
System.out.println("");
//Inicializamos variables
int contador = 1;
int sumapar = 0;
int sumaimpar = 0;
//Empezamos el BUCLE, mientras que contador sea menor o igual
//a la cantidad ingresada.
while(contador<=cantidad){
//Pedimos el numero entero, este se repetira hasta terminar con
//la condicion
System.out.println("Ingresa el numero entero");
int numero = ner.nextInt();
//Utilizamos un if, para determinar si es par, y adems hara la
suma

if(numero%2==0)
sumapar = sumapar + numero;
//De lo contrario sumara impar
else
sumaimpar = sumaimpar + numero;
//Este contador aumenta con cada vuelta del bucle
contador = contador + 1;
}
//Cuando termina el bucle, se muestra el resultado de la suma
System.out.println("\nLa suma de numeros pares es: "+sumapar);
System.out.println("La suma de numeros impares es: "+sumaimpar);
}
public static void main(String[] args) {
//Finalmente instanciamos el objeto de la clase y utilizamos el
mtodo.
BUCLES b = new BUCLES();
b.sumas();
}
}
PRUEBAS:
Se compila el programa para probar que funcione correctamente y detectar errores, en
caso de los TEST de pruebas, que buscamos reas del cdigo fuente y del programa
los posibles errores, que vamos corrigindolos segn se detecten y a la vez mejorando
el rendimiento, posiblemente con una mejor implementacin de cdigo.

Para este ejemplo hemos utilizado la estructura de control utilizando bucles, que
hemos aplicado en un ejemplo. La utilidad es los bucles es grande, sobre todo en
problemas que requieren de una secuencia de control, y nosotros podemos facilitar la
solucin con estos bucles, que bien interpreta la computadora.