martes, 13 de septiembre de 2011

REGISTRO DE ALUMNOS


C L A S E  C A L U M N O

 public class cAlumno{
    private int codigo;
    private String nombres;
    private Double practica;
    private Double exparcial;
    private Double exfinal;

    public Double calcular_promedio(){
        return ((practica*0.2)+(exparcial*0.4)+(exfinal*0.4));
    }

    public int getCodigo(){return codigo;}
    public void setCodigo(int codigo){this.codigo = codigo;}
    public Double getExfinal(){return exfinal;}
    public void setExfinal(Double exfinal){this.exfinal = exfinal;}
    public Double getExparcial(){return exparcial;}
    public void setExparcial(Double exparcial){this.exparcial = exparcial;}
    public String getNombres(){return nombres;}
    public void setNombres(String nombres){this.nombres = nombres;}
    public Double getPractica(){return practica;}
    public void setPractica(Double practica){this.practica = practica;}
}


C L A S E  C R E G I S T R O

public class cRegistro {
    //atributos
    private cAlumno objAlumno[];
    private int contador;
    //constructor
    public cRegistro(int n) {
        objAlumno=new cAlumno[n];
        //
        objAlumno[0]=new cAlumno();
        objAlumno[0].setCodigo(6);
        objAlumno[0].setNombres("CARLOS");
        objAlumno[0].setPractica(18.0);
        objAlumno[0].setExparcial(15.5);
        objAlumno[0].setExfinal(12.0);

        objAlumno[1]=new cAlumno();
        objAlumno[1].setCodigo(3);
        objAlumno[1].setNombres("CARMEN");
        objAlumno[1].setPractica(15.0);
        objAlumno[1].setExparcial(15.0);
        objAlumno[1].setExfinal(12.0);
        //
        contador=2;
    }
    //operaciones
    public void agregar_alumno(int codigo,String nombres,Double practica,Double exparcial,Double exfinal){
        int flag=0;
        for(int i=0;i<contador;i++){
            if(codigo==objAlumno[i].getCodigo()){
                flag=1;
            }
        }
        if(flag==0){
            if(contador<objAlumno.length){
                objAlumno[contador]=new cAlumno();
                objAlumno[contador].setCodigo(codigo);
                objAlumno[contador].setNombres(nombres);
                objAlumno[contador].setPractica(practica);
                objAlumno[contador].setExparcial(exparcial);
                objAlumno[contador].setExfinal(exfinal);
                contador++;
            }
            else{
                System.out.println("NO SE PUEDE AGREGAR ALUMNO...VECTOR LLENO!!!");
            }
        }
        else{
            System.out.println("EL CODIGO INGRESADO ES REPETIDO...!!!");
        }

    }
    public String listar_alumnos(){
        String lista="LISTA DE ALUMNOS\n";
        for(int i=0;i<contador;i++){
            lista+=(i+1)+".-"+"\t"+objAlumno[i].getCodigo()+"\t"+objAlumno[i].getNombres()+"\t"+objAlumno[i].calcular_promedio()+"\n";
        }
        return lista;
    }

    public void buscar_alumno(int codigo)
    {
        int posicion=-1;
        for(int i=0;i<contador;i++){
            if(codigo==objAlumno[i].getCodigo())
                posicion=i;
        }
        if(posicion!=-1){
            System.out.println("EL ALUMNO DE CODIGO: "+codigo+" ES "+ objAlumno[posicion].getNombres());
        }
        else{
            System.out.println("EL ALUMNO DE CODIGO: "+codigo+" NO EXISTE");
        }
    }

    public void buscar_alumno(String nombres){
        int posicion=-1;
        for(int i=0;i<contador;i++){
            if(nombres.equals(objAlumno[i].getNombres()))
                posicion=i;
        }
        if(posicion!=-1){
            System.out.println("EL ALUMNO DE NOMBRE: "+nombres+" TIENE EL CODIGO "+objAlumno[posicion].getCodigo());
        }
        else{
            System.out.println("EL ALUMNO DE NOMBRE: "+nombres+" NO EXISTE");
        }
    }

    public void ordenar_codigo(){
        for (int i=0; i<contador-1; i++){
            for (int j=i+1;j<contador; j++){
                if(objAlumno[i].getCodigo() > objAlumno[j].getCodigo()){
                    cAlumno temp=objAlumno[i];
                    objAlumno[i]=objAlumno[j];
                    objAlumno[j]=temp;
                }
            }
        }
    }

    public void ordenar_nombres(){
        for (int i=0; i<contador-1; i++){
            for (int j=i+1; j<contador; j++){
                if(objAlumno[i].getNombres().compareTo(objAlumno[j].getNombres())>1){
                    cAlumno temp=objAlumno[i];
                    objAlumno[i]=objAlumno[j];
                    objAlumno[j]=temp;
                }
            }
        }
    }

    public void modificar_parcial(int codigo, double parcial){
        int index;
        index=encontrar_alumno(codigo);
        if (index==-1){
            System.out.println("EL ALUMNO DE CODIGO: "+codigo+" NO EXISTE");
        }
        else{
            objAlumno[index].setPractica(parcial);
        }
    }

    public int encontrar_alumno(int codigo)
    {
        int posicion=-1;
        for(int i=0;i<contador;i++){
            if(codigo == objAlumno[i].getCodigo()){
                posicion=i;
            }
        }
        return posicion;
    }

    public void eliminar_alumno(int codigo){
        int index;
        index=encontrar_alumno(codigo);
        if(index==-1){
            System.out.println("EL ALUMNO DE CODIGO: "+codigo+" NO EXISTE");
        }
        else{
            for(int i=index;i<contador;i++){
                objAlumno[i]=objAlumno[i+1];
            }
            contador--;
        }
    }

    public String listar_aprobados(){
        String lista="LISTA DE ALUMNOS APROBADOS\n";
        for(int i=0;i<contador;i++){
            if(10.5<=objAlumno[i].calcular_promedio()){
                lista+=(i+1)+".-"+"\t"+objAlumno[i].getCodigo()+"\t"+objAlumno[i].getNombres()+"\t"+objAlumno[i].calcular_promedio()+"\n";
            }
        }
        return lista;
    }
}


C L A S E  M A I N

import java.util.Scanner;
public class Main{
    static cRegistro objRegistro=new cRegistro(10);

    public static void ingreso_alumno(){
        Scanner br=new Scanner (System.in);
        int codigo;
        String nombres;
        double practica,exparcial,exfinal;

        System.out.print("INGRESE UN CODIGO:");
        codigo=br.nextInt();
        System.out.print("INGRESE UN NOMBRE:");
        nombres=br.next();
        System.out.print("INGRESE PRACTICA:");
        practica=br.nextFloat();
        System.out.print("INGRESE PARCIAL:");
        exparcial=br.nextDouble();
        System.out.print("INGRESE FINAL:");
        exfinal=br.nextDouble();


        objRegistro.agregar_alumno(codigo, nombres, practica, exparcial, exfinal);
    }

    public static void mostrar_alumnos(){
        System.out.println(objRegistro.listar_alumnos());
    }

     public static void busca_alumno_codigo(){
         Scanner br=new Scanner (System.in);
         int cod;
         System.out.print("INGRESE CODIGO DEL ALUMNO A BUSCAR: ");
         cod=br.nextInt();
         objRegistro.buscar_alumno(cod);
     }

     public static void busca_alumno_nombre(){
         Scanner br=new Scanner (System.in);
         String nomb;
         System.out.print("INGRESE NOMBRE DEL ALUMNO A BUSCAR: ");
         nomb=br.next();
         objRegistro.buscar_alumno(nomb);
     }

     public static void ordenar_alumno_codigo() {
        objRegistro.ordenar_codigo();

    }
    public static void ordenar_alumno_nombre() {
        objRegistro.ordenar_nombres();
    }

    public static void modificar_parcial() {
        int cod;
        Double parc;
        Scanner br=new Scanner (System.in);
        System.out.print("INGRESE CODIGO DEL ALUMNO: ");
        cod=br.nextInt();
        System.out.print("INGRESE PARCIAL DEL ALUMNO: ");
        parc=br.nextDouble();
        objRegistro.modificar_parcial(cod, parc);
    }

    public static void eliminar_alumno() {
        int cod;
        Scanner br=new Scanner (System.in);
        System.out.print("INGRESE CODIGO DEL ALUMNO: ");
        cod=br.nextInt();
        objRegistro.eliminar_alumno(cod);
    }

    public static void mostrar_aprobados(){
        System.out.println(objRegistro.listar_aprobados());
    }

    public static void main(String[] args){
Scanner br=new Scanner (System.in);
        int opcion;

        do{
            System.out.println("MENU DE OPCIONES:");
            System.out.println("1. INGRESO DE ALUMNO");
            System.out.println("2. MOSTRAR ALUMNO");
            System.out.println("3. BUSCAR ALUMNO POR CODIGO ");
            System.out.println("4. BUSCAR ALUMNO POR NOMBRE ");
            System.out.println("5. ORDENAR ALUMNO POR CODIGO ");
            System.out.println("6. ORDENAR ALUMNO POR NOMBRES");
            System.out.println("7. MODIFICAR EXAMEN PARCIAL");
            System.out.println("8. ELIMINAR ALUMNO");
            System.out.println("9. MOSTRAR ALUMNOS APROBADOS");
            System.out.println("10. SALIR");


            do{
                System.out.print("INGRESE UNA OPCION [1-10]:");
                opcion=br.nextInt();

            }while(opcion<1||opcion>10);
            switch(opcion){
                case 1:
                    ingreso_alumno();
                    break;
                case 2:
                    mostrar_alumnos();
                    break;
                case 3:
                    busca_alumno_codigo();
                    break;
                case 4:
                    busca_alumno_nombre();
                    break;
                case 5:
                    ordenar_alumno_codigo();
                    break;
                case 6:
                    ordenar_alumno_nombre();
                    break;
                case 7:
                    modificar_parcial();
                    break;
                case 8:
                    eliminar_alumno();
                    break;
                case 9:
                    mostrar_aprobados();
                    break;
                case 10:
                    System.exit(0);
            }
        }while(opcion!=10);
    }
}




5 comentarios:

  1. Ejercicios en NB broth, para poder practicar...

    ResponderEliminar
  2. Ola jose luis.. sabs me gustaria que me ayudes con unos ejercicios que me han dejadO ie e eecho algunos pero ai otros q no me salen i quisiera qme ayudes xfa se brother.. te dejoO mi correO para comunicarse: marcos_2391@hotmail.com, spero tu respuesta.. stoi en linea..Gracias

    ResponderEliminar
  3. Este comentario ha sido eliminado por el autor.

    ResponderEliminar
  4. Mil gracias, 8 años después, pero me salvaste la vida

    ResponderEliminar
  5. que es lo que contiene t código además de las clases, objetos, polimorfismo, encapsulamiento?

    ResponderEliminar