arreglos y metodos ejemplo proyectos

advertisement
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
de
alumnos
alumno 1
alumno 2
alumno 3
alumno 4
alumno 5
5
5
9
8
4
10
Promedio general
del grupo
Numero de alumnos
aprobados
Numero de alumnos
reprobados
Porcentaje de
alumnos
aprobados
Porcentaje de
alumnos
reprobados
Numero de alumnos con
calificación mayor o
igual a cero
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
de
alumnos
alumno 1
alumno 2
alumno 3
alumno 4
alumno 5
alumno 6
6
8
7
6
10
9
5
Promedio
general del
grupo
Numero
de
alumnos
aprobados
Numero
de
alumnos
reprobados
Porcentaje
de alumnos
aprobados
Porcentaje
de alumnos
reprobados
Numero
de
alumnos
con
calificación
mayor o igual a
cero
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
}
}
Descargar