import java.util.*;

class promotion {

   private double barre_admission;
   private List<etudiant> liste_etudiants;
   private String nom_promotion;
   private int annee_promotion;

   public promotion(double barre_admission, String nom_promotion, int annee_promotion){

   this.barre_admission=barre_admission;
   this.liste_etudiants=new LinkedList<etudiant>();
   this.nom_promotion=nom_promotion;
   this.annee_promotion=annee_promotion;
   }

   public double getBarre_admission(){

   return this.barre_admission;
   }

   public List<etudiant> getListe_etudiants(){

   return this.liste_etudiants;
   }

   public String getNom_promotion(){

   return this.nom_promotion;
   }

   public int getAnnee_promotion(){

   return this.annee_promotion;
   }

   public void ajouterEtudiant(etudiant etudiant){

   this.liste_etudiants.add(etudiant);
   }

   public int nombreElevesRecus(){

   int compteur=0;
   for (etudiant cet_etudiant : this.liste_etudiants) {
      if (cet_etudiant.getMoyenne() >= this.barre_admission){
        compteur++; 
        }
      }
   return compteur;
   }

   public void afficherNoms(boolean recu){

   for (etudiant cet_etudiant : this.liste_etudiants) {
      if ((cet_etudiant.getMoyenne() >= this.barre_admission) == recu) {
        System.out.println(cet_etudiant.getNom()); 
        }
      }
   System.out.println("");
   }


   public static void main(String[] args){

   etudiant etu1 = new etudiant("Knuth","Donald","",20);
   etudiant etu2 = new etudiant("Turing","Alan","",18);
   etudiant etu3 = new etudiant("Dumb","John","",4);
   promotion dutMarne = new promotion(10,"DUT Informatique de Marne-la-Vallee",2009);
   dutMarne.ajouterEtudiant(etu1);
   dutMarne.ajouterEtudiant(etu2);
   dutMarne.ajouterEtudiant(etu3);
   System.out.println(dutMarne.nom_promotion+" (annee "+dutMarne.annee_promotion+")"+"\n");
   System.out.println("Nombre d'eleves recus : "+dutMarne.nombreElevesRecus()+"\n");
   System.out.println("Eleves recus :\n");
   dutMarne.afficherNoms(true);
   System.out.println("Eleves en rattrapage :\n");
   dutMarne.afficherNoms(false);
   }

}
