Adsence

miércoles, 28 de diciembre de 2011

Registro-Estudiantil

Leave a Comment
[caption id="attachment_915" align="aligncenter" width="588"]Registro Estudiantil en Java Registro Estudiantil en Java[/caption]

En un curso de Verano de una Facultad de Tecnología existe en cada anio problemas con la administración de estudiantes que se inscriben en los diferentes cursos.
En este programa solo se deberá tomar en cuenta el curso determinado. Sobre cada estudiante se necesita conocer un código del estudiante, nombre, apellido, carrera y notas (Primer Parcial, Segundo Parcial y Exámen Final).

Consideremos estos aspectos:

  1. Inscribir a un estudiante en una materia específica, en cualquier momento, durante el curso. Se debe tomar en cuenta, que el curso máximo puede tener 180 alumnos.

  2. Retirar a un estudiante de la materia, en cualquier momento del curso.

  3. Se debe poder ingresar  las notas de los estudiantes (Primer Parcial,Segundo Parcial y Exámen Final (si es necesario)).

  4. Con las notas se debe sacar un listado de los estudiantes aprobados y reprobados. Estas listas deberán desplegar el código del estudiante, nombre, apellidos, y nota final del estudiante.




[java]

import java.util.Scanner;
public class Menu
{
public static Estudiante[] estudiante=new Estudiante[3];
public static int cant=0;
public static void main(String args[])
{

System.out.println("--******----********------*---*----------*---------******----**----*------******");
System.out.println("--*----*----*-------------*--*----------*-*--------*---*-----**----**-----*-----");
System.out.println("--*----*----*-------------*-*----------*---*-------*--*------**----*-*----*-----");
System.out.println("--*----*----********------**----------*-----*------*-*-------**----*--*---*-----");
System.out.println("--*----*-----------*------**---------*********-----**--------**----*---*--*-----");
System.out.println("--*----*-----------*------*-*-------*---------*----*-*-------**----*----*-*-----");
System.out.println("--*----*-----------*------*--*-----*-----------*---*--*------**----*-----**-----");
System.out.println("--******----********------*---*---*-------------*--*---*-----**----*------*-----");
System.out.println("\n----------------------------------------------------------\n");
int opcion=-1;
while(opcion!=5)
{
opcion=menu();
switch(opcion)
{
case 1: inscribir();
break;
case 2: retirar();
break;
case 3: ingresarNotas();
break;
case 4: listar();
break;
}
}
}
public static int menu()
{
Scanner umss=new Scanner(System.in);
System.out.println("\n========================MENU==========================\n");
System.out.println("1. Inscribir Alumno");
System.out.println("2. Retirar Alumno");
System.out.println("3. Ingresar Notas");
System.out.println("4. Mostrar Lista");
System.out.println("5. Salir");
int opcion=-1;
while((opcion< 1)||(opcion >5))
{
System.out.print("Favor ingresar una opción: ");
opcion=umss.nextInt();
if((opcion< 1)||(opcion >5))
{
System.out.println("ERROR. Opción Invalida.");
}
}
return opcion;
}
public static void inscribir()
{
if(cant< 3)
{
Scanner umss=new Scanner(System.in);
String nombre,apellido,carrera;
int cs;
System.out.print("Nombre: ");
nombre=umss.next();
System.out.print("Apellido: ");
apellido=umss.next();
System.out.print("Carrera: ");
carrera=umss.next();
System.out.print("Codigo Sis: ");
cs=umss.nextInt();
Estudiante es=new Estudiante(cs,nombre,apellido,carrera);
estudiante

[cant]=es;
cant++;
ordenar();
}
else
{
System.out.println("GRUPO LLENO");
}
}
public static void ordenar()
{
for(int c=0;c< cant-1;c++)
{
for(int k=c+1;k< cant;k++)
{
if(estudiante[c][/c]

.getCodSis() &gt;estudiante[k].getCodSis())
{
Estudiante aux=estudiante

[c][/c]

;
estudiante

[c][/c]

=estudiante[k];
estudiante[k]=aux;
}
}
}
}
public static void retirar()
{
Scanner umss=new Scanner(System.in);
if(cant==0)
{
System.out.println("Grupo Vacío. No hay estudiantes que eliminar...");
}
else
{
System.out.print("Ingrese Código SIS para poder retirar: ");
int cs=umss.nextInt();
int pos=buscar(cs);
if(pos==-1)
{
System.out.println("Alumno no existe y/o no fue registrado...");
}
else
{
for(int c=pos;c&lt; (cant-1);c++)
{
estudiante

[c][/c]

=estudiante

[c language="+1"][/c]

;
}
cant--;
estudiante

[cant]=null;
System.out.println("Estudiante Eliminado...");
}
}
}
public static int buscar(int cs)
{
int res=-1;
for(int c=0;c< cant;c++)
{
if(estudiante[c][/c]

.getCodSis()==cs)
{
res=c;
}
}
return res;
}
public static void ingresarNotas()
{
Scanner umss=new Scanner(System.in);
if(cant==0)
{
System.out.println("REGISTRO VACÍO...");
}
else
{
System.out.print("Ingrese Código Sis: ");
int cs=umss.nextInt();
int pos=buscar(cs);
if(pos&lt; 0)
{
System.out.println("Estudiante No existe...");
}
else
{
System.out.print("Primer Parcial: ");
double pp=umss.nextDouble();
System.out.print("Segundo Parcial: ");
double sp=umss.nextDouble();
String decision;
System.out.print("¿Desea ingresar usted la nota del examen final? (s/n)");
decision=umss.next();
if(decision.equals("s"))
{
System.out.print("Ingrese la nota del Examen Final: ");
double exf=umss.nextDouble();
estudiante[pos].mostrarNotas(pp,sp,exf);
}
else
{
estudiante[pos].mostrarNotas(pp,sp);
}
}
}
}
public static void listar()
{
System.out.println("\n********************LISTA DE ESTUDIANTES***********************");
for(int c=0;c&lt; cant;c++)
{
Estudiante est=estudiante

[c][/c]

;
System.out.println("Código Sis: "+est.getCodSis());
System.out.println("Nombre: "+est.getNombre());
System.out.println("Apellido: "+est.getApellido());
double notaF=est.getNotaF();
if(notaF==-1)
{
System.out.println("Sin notas...");
}
else
{
System.out.println("Nota Final: "+notaF);
}
System.out.println("----------------------------------------------------------");
}
}
}
/*
public class Notas
{
private double primerParcial;
private double segundoParcial;
private double examenF;

public Notas(double pp,double sp)
{
primerParcial=pp;
segundoParcial=sp;
examenF=0;
}
public Notas(double pp,double sp,double exFinal)
{
this(pp,sp);
examenF=exFinal;
}
public double obtenerNotaF()
{
double res,parciales;
parciales=(primerParcial+segundoParcial)/2;
if(parciales&lt; examenF)
{
res=examenF;
}
else
{
res=parciales;
}
return res;
}
public boolean aprobado()
{
boolean res;
if(obtenerNotaF() &gt;50.5)
{
res=true;
}
else
{
res=false;
}
return res;
}
}
*/
/*
public class Estudiante
{
private int codSis;
private String nombre;
private String apellido;
private String carrera;
private Notas notas;

public Estudiante(int codSis,String nombre,String apellido,String carrera)
{
this.codSis=codSis;
this.nombre=nombre;
this.apellido=apellido;
this.carrera=carrera;
}
public void sedCodsis(int cs)
{
codSis=cs;
}
public void setNombre(String n)
{
nombre=n;
}
public void setApellido(String a)
{
apellido=a;
}
public void setCarrera(String car)
{
carrera=car;
}
public String getNombre()
{
return nombre;
}
public String getApellido()
{
return apellido;
}
public String getCarrera()
{
return carrera;
}
public int getCodSis()
{
return codSis;
}
public void mostrarNotas(double pp,double sp)
{
notas=new Notas(pp,sp);
}
public void mostrarNotas(double pp,double sp,double exF)
{
notas=new Notas(pp,sp,exF);
}
public double getNotaF()
{
if(notas==null)
{
return -1;
}
else
{
return notas.obtenerNotaF();
}
}
public boolean estado()
{
return notas.aprobado();
}
}
*/

[/java]

0 comentarios :