
package institucion;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.List;
public class NotasEstudiante {
    
   public  List<Double>       notasdequices               = null;
   public  List<Docente>      docentesdelamateria         = null;
   public  List<Double>       notasdetrabajos             = null;
   public  List<Double>       notasdeparciales            = null;
   private String             codigoestudiante            = null;
   private int                creditos                    = 0;
   private double             notaquiz                    = 0.0;
   private double             notatrabajo                 = 0.0;
   private double             notaparcial                 = 0.0;
   private double             definitivaparciales         = 0.0;
   private double             definitivatrabajos          = 0.0;
   private double             definitivaquices            = 0.0;
   
   BufferedReader lector = new BufferedReader(new InputStreamReader(System.in)); // Crear lector //
   
   public void crear_listas()
   {
       notasdequices = new ArrayList<Double>();
       notasdetrabajos = new ArrayList<Double>();
       notasdeparciales = new ArrayList<Double>();
   }
   
   public void notas_quices()throws IOException {
       
           int n=1;
           int y=5;
           double sumaquices = 0.0;
           double promedioquices = 0.0;
           
           System.out.println("El tamaï¿½o de la lista de notas de Quices es: "+notasdequices.size());
           
           if ( notasdequices.size() != 0)
           {
                   System.out.println("Las notas de Quices ya han sido ingresadas. ï¿½Desea ingresar nuevas notas? Y/N");
                   String buscador1 = lector.readLine();
                   
                   if( buscador1.equalsIgnoreCase("Y"))
                   {
                           notasdequices.clear();
                           System.out.println("Para ingresar la nota de Quices digite un nï¿½mero entre 5.0 y 0.0"); // Ingrese el Nombre//
                       
                       for ( int i=0; i<y; i++)
                       {
                           
                           System.out.println("Ingrese la nota del Quiz "+(n+i)); // Ingrese el Nombre//
                           setNotaquiz(Double.parseDouble((lector.readLine())));
                           
                           if ( notaquiz <= 5.0 && notaquiz >= 0.0 )
                           {  notasdequices.add(notaquiz);   }
                           else 
                                   { n = n-1;
                                         y = y+1;
                                     System.out.println("Ingreso erroneo de la nota, porfavor digite un nï¿½mero decimal entre 5.0 y 0.0");                 }
                       }
                           
                   }
                   
           }
           
           else
           {
                   System.out.println("Para ingresar la nota de Quices digite un nï¿½mero entre 5.0 y 0.0"); // Ingrese el Nombre//
               
               for ( int i=0; i<y; i++)
               {
                   
                   System.out.println("Ingrese la nota del Quiz "+(n+i)); // Ingrese el Nombre//
                   setNotaquiz(Double.parseDouble((lector.readLine())));
                   
                   if ( notaquiz <= 5.0 && notaquiz >= 0.0 )
                   {  notasdequices.add(notaquiz);   }
                   else 
                           { n = n-1;
                                 y = y+1;
                             System.out.println("Ingreso erroneo de la nota, porfavor digite un nï¿½mero decimal entre 5.0 y 0.0");                 }
               }
 
           }
           
           System.out.println("Las notas de Quices son:");
           
           for ( int i=0; i<notasdequices.size(); i++)
           {
                   sumaquices = sumaquices + notasdequices.get(i);
                   System.out.println(notasdequices.get(i));   
           }
           
           promedioquices = sumaquices/5;
           System.out.println("La definitiva de Quices es: "+promedioquices);
           setDefinitivaquices(promedioquices*0.25);
           System.out.println("El valor de los Quices en la definitiva de la materia es: "+(definitivaquices));
           
           }
     
   public void notas_trabajos()throws IOException {
       
           int n=1;
           int y=2;
           double sumatrabajos     = 0.0;
           double promediotrabajos = 0.0;
           
           System.out.println("El tamaï¿½o de la lista de notas de Trabajos es: "+notasdetrabajos.size());
           
           if ( notasdetrabajos.size() != 0)
           {
                   System.out.println("Las notas de Trabajos ya han sido ingresadas. ï¿½Desea ingresar nuevas notas? Y/N");
                   String buscador2 = lector.readLine();
                   
                   if( buscador2.equalsIgnoreCase("Y"))
                   {
                           notasdetrabajos.clear();
                           System.out.println("Para ingresar la nota del trabajo digite un nï¿½mero entre 5.0 y 0.0"); // Ingrese el Nombre//
                       
                       for ( int i=0; i<y; i++)
                       {   
                           System.out.println("Ingrese la nota del Trabajo "+(n+i)); // Ingrese el Nombre//
                           setNotatrabajo(Double.parseDouble((lector.readLine())));
                           
                           if ( notatrabajo <= 5.0 && notatrabajo >= 0.0 )
                           {  notasdetrabajos.add(notatrabajo);   }
                           else 
                                   { n = n-1;
                                         y = y+1;
                                     System.out.println("Ingreso erroneo de la nota, porfavor digite un nï¿½mero decimal entre 5.0 y 0.0");                 }
                       }
                           
                   }
                   
           }
           
           else
           {
                   System.out.println("Para ingresar la nota del trabajo digite un nï¿½mero entre 5.0 y 0.0"); // Ingrese el Nombre//
               
               for ( int i=0; i<y; i++)
               {
                   
                   System.out.println("Ingrese la nota del Trabajo "+(n+i)); // Ingrese el Nombre//
                   setNotatrabajo(Double.parseDouble((lector.readLine())));
                   
                   if ( notatrabajo <= 5.0 && notatrabajo >= 0.0 )
                   {  notasdetrabajos.add(notatrabajo);   }
                   else 
                           { n = n-1;
                                 y = y+1;
                             System.out.println("Ingreso erroneo de la nota, porfavor digite un nï¿½mero decimal entre 5.0 y 0.0");                 }
               }
 
           }
           
           System.out.println("Las notas de los trabajos son:");
           
           for ( int i=0; i<notasdetrabajos.size(); i++)
           {
                   sumatrabajos = sumatrabajos + notasdetrabajos.get(i);
                   System.out.println(notasdetrabajos.get(i));   
           }
           
           promediotrabajos = sumatrabajos/2;
           System.out.println("La definitiva de Trabajos es: "+promediotrabajos);
           setDefinitivatrabajos(promediotrabajos*0.15);
           System.out.println("El valor de los Trabajos en la definitiva de la materia es: "+(definitivatrabajos));
           
           } 
  
   public void notas_parciales()throws IOException {
       
           int n=1;
           int y=3;
           double sumaparciales     = 0.0;
           double promedioparciales = 0.0;
           
           System.out.println("El tamaï¿½o de la lista de notas de Parciales es: "+notasdeparciales.size());
           
           if ( notasdeparciales.size() != 0)
           {
                   System.out.println("Las notas de parciales ya han sido ingresadas. ï¿½Desea ingresar nuevas notas? Y/N");
                   String buscador3 = lector.readLine();
                   
                   if( buscador3.equalsIgnoreCase("Y"))
                   {
                           notasdeparciales.clear();
                           System.out.println("Para ingresar la nota del Parcial digite un nï¿½mero entre 5.0 y 0.0"); // Ingrese el Nombre//
                       
                       for ( int i=0; i<y; i++)
                       {   
                           System.out.println("Ingrese la nota del Parcial "+(n+i)); // Ingrese el Nombre//
                           setNotaparcial(Double.parseDouble((lector.readLine())));
                           
                           if ( notaparcial <= 5.0 && notaparcial >= 0.0 )
                           {  notasdeparciales.add(notaparcial);   }
                           else 
                                   { n = n-1;
                                         y = y+1;
                                     System.out.println("Ingreso erroneo de la nota, porfavor digite un nï¿½mero decimal entre 5.0 y 0.0");                 }
                       }
                           
                   }
                   
           }
           
           else
           {
                   System.out.println("Para ingresar la nota del Parcial digite un nï¿½mero entre 5.0 y 0.0"); // Ingrese el Nombre//
               
               for ( int i=0; i<y; i++)
               {
                   
                   System.out.println("Ingrese la nota del Parcial "+(n+i)); // Ingrese el Nombre//
                   setNotaparcial(Double.parseDouble((lector.readLine())));
                   
                   if ( notaparcial <= 5.0 && notaparcial >= 0.0 )
                   {  notasdeparciales.add(notaparcial);   }
                   else 
                           { n = n-1;
                                 y = y+1;
                             System.out.println("Ingreso erroneo de la nota, porfavor digite un nï¿½mero decimal entre 5.0 y 0.0");                 }
               }
 
           }
           
           System.out.println("Las notas de los parciales son:");
           
           for ( int i=0; i<notasdeparciales.size(); i++)
           {
                   sumaparciales = sumaparciales + notasdeparciales.get(i);
                   System.out.println(notasdeparciales.get(i));   
           }
           
           promedioparciales = sumaparciales/3;
           System.out.println("La definitiva de Parciales es: "+promedioparciales);
           setDefinitivaparciales(promedioparciales*0.60);
           System.out.println("El valor de los Parciales en la definitiva de la materia es: "+(definitivaparciales));
           } 
 
   public double definitiva(){
           
           double definitivatemporal = definitivaparciales+definitivatrabajos+definitivaquices;
           double definitivafinal = definitivatemporal*creditos;
           
           System.out.println("La definitiva de la materia es: "+definitivatemporal);
           System.out.println("La definitiva de la materia con creditos para el promedio es: "+definitivafinal);
        return definitivafinal;
        
           
   }
   
   
   
   
    //  -------------------- Metodos de Atributos ------------------- //
   
   public String getCodigoestudiante() {return codigoestudiante;}
   public void setCodigoestudiante(String codigoestudiante) {this.codigoestudiante = codigoestudiante;}
  
   public int getCreditos() {return creditos;}
   public void setCreditos(int creditos) {this.creditos = creditos;}
   
   public double getNotaquiz() {return notaquiz;}
   public void setNotaquiz(double notaquiz) {this.notaquiz = notaquiz;}
 
   public double getNotatrabajo() {return notatrabajo;}
   public void setNotatrabajo(double notatrabajo) {this.notatrabajo = notatrabajo;}
   
   public double getNotaparcial() {return notaparcial;}
   public void setNotaparcial(double notaparcial) {this.notaparcial = notaparcial;}
   
   public double getDefinitivaparciales() {return definitivaparciales;}
   public void setDefinitivaparciales(double definitivaparciales) {this.definitivaparciales = definitivaparciales;}
   
   public double getDefinitivatrabajos() {return definitivatrabajos;}
   public void setDefinitivatrabajos(double definitivatrabajos) {this.definitivatrabajos = definitivatrabajos;}
   
   public double getDefinitivaquices() {return definitivaquices;}
   public void setDefinitivaquices(double definitivaquices) {this.definitivaquices = definitivaquices;}
   
    
}
