Está en la página 1de 6

ESTE EJEMPLO ESTA YA COMPLETO CON ARREGLOS Y CON UN METODO

Además incluyo la prueba de escritorio que también se deberá de entregar impresa:


Corrida numero 1

Numero Calificación Calificación Calificación Calificación Calificación Promedio general Numero de alumnos Numero de alumnos Porcentaje de Porcentaje de Numero de alumnos con
del grupo aprobados reprobados alumnos alumnos calificación mayor o
aprobados reprobados igual a cero
de alumno 1 alumno 2 alumno 3 alumno 4 alumno 5
alumnos

5 5 9 8 4 10 7.2 3 2 60 40 3
Corrida numero 2

Numero Mensaje

de
alumnos

11 El numero de alumnos que ingreso es incorrecto


Corrida numero 3

Numero Calificación Calificación Calificación Calificación Calificación Calificación Promedio Numero de Numero de Porcentaje Porcentaje Numero de
general del alumnos alumnos de alumnos de alumnos alumnos con
grupo aprobados reprobados aprobados reprobados calificación
de alumno 1 alumno 2 alumno 3 alumno 4 alumno 5 alumno 6
mayor o igual a
alumnos
cero

6 8 7 6 10 9 5 7.5 5 1 83.33 16.33 3


Corrida numero 4

Numero Mensaje

de
alumnos

-3 El número de alumnos que ingreso es incorrecto

REQUISITOS DEL PROYECTO

1. Deberá de estar desarrollado con arreglos, por lo menos un método, y con un while o dowhile para que pueda
regresarle el programa y volver a ejecutarlo
2. Utilizar algunas sentencias como if, case, según sea el caso de cada problema
3. En el CD o DVD solo se entregara el programa en JAVA por favor verifiquen que este este grabado correctamente
ya que recuerden el ultimo dia que ire a la universidad es el martes 6 de diciembre y ya no habrá aclaraciones de
calificaciones posteriores a esa fecha.
4. Entregar documentación impresa: Diagrama entrada-proceso-salida, algoritmo, diagrama de flujo y prueba de
escritorio.
5. No se recibirán proyectos en otra fecha diferente a la ya asignada a cada grupo.

Problema.

En un arreglo unidimensional se almacenan las calificaciones de N alumnos.


Diseñar un programa que permita calcular e imprimir lo siguiente:
El promedio general del grupo
Número de alumnos aprobados y número de alumnos reprobados (Si el alumno obtuvo una calificación menor o igual a
6 se le considera reprobado).
Porcentaje de alumnos aprobados y reprobados
Número de alumnos cuya calificación fue mayor a 8

DIAGRAMA ENTRADA – PROCESO -SALIDA

Entrada

Número de alumnos: n
Calificación del alumno: alumno[i]

Proceso

Realizar la condición donde n este comprendida entre 1 y 10


Si n>=1 y n>=10 Entonces
Ingresar las calificaciones de los alumnos
"Ingrese la calificación del alumno" alumno[i];
Recorrer las calificaicones ingresadas anteriormente
Realizar la condición en donde la calificaicon del alumno se amayor o igual a 6
Si (alumno[i] >=6) Entonces
Contar el numero de alumnos aprobados
taluma<-taluma + 1;
Sino
Contar el numero de alumnos reprobados
talumr<-talumr + 1;
FinSi
Realizar la condición en donde la calificación del alumno sea mayor o igual a 8
Si (alumno[i] >=8) Entonces
Contar el numero de alumnos con calificaicones mayor o igual a 8
cal8<-cal8 + 1;
FinSi
Obtener la suma de las calificaciones de los alumnos
prom<-prom + alumno[i];
Se calcual el promedio del grupo
prom<-prom/n;
Se calcula el porcentaje de alumnos aprobados
porca<-(taluma*100)/n;
Se calcula el porcentaje de alumnos reprobados
porcr<-(talumr*100)/n;

Salida

Mostrar "El promedio general del grupo es:", prom;


Mostrar "Total de alumnos aprobados" , taluma;
Mostrar "Total de alumnos reprobados" , talumr;
Mostrar "Porcentaje de alumnos aprobados" , porca;
Mostrar "Porcentaje de alumnos reprobados" , porcr;
Mostrar "Numero de alumnos con calificación mayor o igual a 8" , cal8;

ALGORITMO

1. Inicio
2. Ingrese número de alumnos: n
3. Realizar condición
3.1 Si n>=1 y n>=10 Entonces
3.2 Ingresar las calificaciones del alumno: alumno[i]
4. Recorrer las calificaciones del alumnos y realizar una condición para evaluar aquellos en donde su calificación es
mayor o igual a seis
4.1 Si (alumno[i] >=6) Entonces
4.2 Realizar el conteo de los alumnos aprobados
taluma<-taluma + 1
4.3 Si no se cumple la condición anterior (4.1)
4.4 Realizar el contero de los alumnos reprobados
4.5 talumr<-talumr + 1
5. Realizar una condición para saber el número de alumnos con calificación mayor o igual a 8
5.1 Si (alumno[i] >=8) Entonces
5.2 Realizar el conteo de alumnos con calificación mayor o igual a 8
5.3 cal8<-cal8 + 1
6. realizar a suma de las calificaciones
6.1 prom<-prom + alumno[i]
7. Calcular el promedio de las calificaciones
7.1 prom<-prom/n
8. Mandar llamar a un método o modulo llamado Mostrar para calcular el porcentaje de alumnos aprobados,
reprobados y los datos de salida.
9. Fin

Modulo Mostrar datos


1. Inicio
2. Calcular el porcentaje de alumnos aprobados
2.1 porca<-(taluma*100)/n;
3. Calcular el porcentaje de alumnos aprobados
3.1 porcr<-(talumr*100)/n;
4. Mostrar en pantalla: "El promedio general del grupo es:" prom;
5. Mostrar en pantalla: "Total de alumnos aprobados" taluma;
6. Mostrar en pantalla: "Total de alumnos reprobados" talumr;
7. Mostrar en pantalla: "Porcentaje de alumnos aprobados" porca;
8. Mostrar en pantalla: "Porcentaje de alumnos reprobados" porcr;
9. Mostrar en pantalla: "Numero de alumnos con calificacion mayor o igual a 8" cal8;
10. Fin

DIAGRAMA DE FLUJO
Mostrar
(n,prom,taluma,talumr,cal8)

CODIGO JAVA

//Autor: Fernandez Cardenas Yadira Karina


//Fecha: 28 de Noviembre de 2011
//Este programa esta diseñado con arreglos y con un metodo
package arreglos;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner leer = new Scanner (System.in); //Libreria para leer datosequivalente a Leer de PSEInt
String regresar = "si"; //Variable de tipo cadena de caracteresllamada regresary esta inicializada con la cadena si
while(regresar.equals("si")|| regresar.equals("SI")){ //Mientrasla variable regresarsea igual a si o SI realizara todas
las insrucciones que estan dentro de las llaves del while
//Se declaran variables globales
int i, n, taluma=0, talumr=0,cal8=0; //Se declaran variable de tipo entero
// i recorre el arreglo (variable indice)
// n variable que guarda el numero de alumnos
// taluma = 0 variable que guardara el total de alumnos aprobados, es una variable tipo contador por tal motivo esta
inicializada en 0
// talumr = 0 variable que guardara el total de alumnos reprobados, es una variable tipo contador por tal motivo
esta inicializada en 0
// cal8 = 0 variable que guardara el total de alumnos que su calificacion sea mayor o igual a 8, es una variable tipo
contador por tal motivo esta inicializada en 0
double prom=0; //Se declaran variable de tipo double (pues aceptan punto decimal)
// prom=0 variable que muestra el promedio general de las calificaicones de los alumnos, es una variable que
muetsra el resulado de una operacion y por lo tanto esta inicializada en 0 ademas de ser una variable tipo acumulador
double [] alumno = new double [10]; // Se declara un arreglo de tipo entero unidimensional dinamico de hasta 10
posiciones llamado alumnos
System.out.println("Ingese numero de alumnos"); //Muestra un mensaje en pantalla pidiendoel numero de
alumnos
n = leer.nextInt(); //Se lee el numero de alumnos yse queda en la variable n
//ingresar();
if( n >=1 && n<=10) //Si n es mayoro igual a 1 y n menor o igual a 10 (ya que 10 es el numero limite de elementos)
{
for(i=1; i<=n; i++)//con este ciclo for pide valores para el arreglo alumno en el cual se ingresara la calificaicon del
mismo
{
System.out.println("Ingese calificación del alumno:" + i); //Muestra un mensaje en pantalla
alumno[i] = leer.nextInt(); //Lee la calificaicon del alumno y la guarda en cada posicion del arreglo alumno[i]
}
}
else // si no se cumple la condicion en donde n>=1 y n>=10 que indica el rango del arreglo de 1 a 10
{
System.out.println("El numero de alumnos qeu ingreso es incorrecto"); //Muestra este mensaje
continue; //Esta isntruccion se utiliza para decirle que continue con la ejecucion del programa
}

for(i=1; i<=n; i++) //Este ciclo for recorre los elmentos del arreglo alumno[i], es decirlos valoreque se leyeron en el
for anterior
{
if(alumno[i] >= 6) //Si el elemento del arreglo alumno[i] es mayor o igual a seis entonces
{
taluma = taluma + 1; //se comienza a realizar el conteo del numero de alumnos en donde su calificacion sea
mayor o igual a seis en la variable taluma
}
else //Si no se cumple la condicon anteriordel if(alumno[i] >= 6)
{
talumr = talumr + 1; //se comienza a realizar el conteo del numero de alumnos en donde su calificacion sea
menor a seis en la variable talumr
}
if(alumno[i] >=8) //Si el elemento del arreglo es mayor o igual a 8 entonces
{
cal8 = cal8 + 1;// se comienza a realizar el conteo de los elementos del arreglo en donde dicho elemento sea
mayor o igual a ocho
}
prom = prom + alumno[i]; //Se obtiene la suma de las calificaciones del arreglo alumno[i] en la variable prom qeu
es un acumulador
}
prom = prom /n; //la suma de los elmentos del arreglo se divide entre el numero de elementos (variable n) y se
obtiene asi el promedio de las calificaciones
mostrar(n,prom,taluma,talumr,cal8); //Se manda llamar al metodo mostrar con los parametros de las variables
n,prom,taluma,talumr y cal8
System.out.println("\n \n"); //Se dejan dos lineas en blanco
System.out.println("Desea ingresar nuevamente al sistema (si/SI)?"); //Pregunta si suiere ingresar nuevamente al
sistema
regresar=leer.next(); //Se leee la respuesta que ingresa el usuario si escribe si o SI regresa hastga el while y si escribe
algo diferente se sale del programa
System.out.println("\n \n"); //Se dejan dos espacios en blanco
}

}
public static void mostrar(int n,double prom, int taluma, int talumr, int cal8) //Se declaro un metodo llamado mostrar
de tipo vacio el cual trae como parametros las variables especificadas
{
float porca=0; float porcr=0; //Variables locales declaradas dentro de este metodo de tipo flotante e inicializadas en
cero pues son el resulatdo de una operacion
System.out.println("El promedio general del grupo es:" + prom); //Se imprime el promedio
System.out.println("Total de alumnos aprobados:" + taluma); //Se imprime el total de alumnos aprobados
System.out.println("Total de alumnos reprobados:" + talumr); //Se imprime el total de alumnos reprobados
porca=(taluma*100)/n; //Se calcula el porcentaje de alumnos aprobados
porcr=(talumr*100)/n; //Se calcula el porcentaje de alumnos reprobados
System.out.println("Porcentaje de alumnos aprobados: " + porca + " %"); //Se imprime el porcentaje de alumnos
aprobados
System.out.println("Porcentaje de alumnos reprobados:" + porcr + " %"); //Se imprime el porcentaje de alumnos
reprobados
System.out.println("Numero de alumnos con calificacion mayor o igual a 8: " + cal8); //Se imprime el numero de
alumnos en donde su calificacion sea mayor o igual a 8
}
}

También podría gustarte