// // Source code recreated from a .class file by IntelliJ IDEA // (powered by Fernflower decompiler) // import java.util.ArrayList; import java.util.Scanner; public class Corrige { private static ArrayList prenoms = new ArrayList(); private static ArrayList noms = new ArrayList(); private static ArrayList unites = new ArrayList(); private static ArrayList courriels = new ArrayList(); private static ArrayList postes = new ArrayList(); private static ArrayList locaux = new ArrayList(); public Corrige() { } public static void main(String[] args) { Scanner sc = new Scanner(System.in); int option; label107: do { afficherMenuPrincipal(); option = sc.nextInt(); int option2; int option3; String nouveauCourriel; String nouvelleUnite; String nouveauLocal; int nouveauPoste; String nouvelleUnite1; String nouveauLocal1; String var12; switch(option) { case 1: label104: do { afficherMenuRecherche(); option2 = sc.nextInt(); ArrayList var14; int var15; switch(option2) { case 1: System.out.println("saisissez l expression a rechercher"); var12 = sc.nextLine(); var14 = rechercheRapide(var12); var15 = 0; while(true) { if(var15 >= var14.size()) { continue label104; } imprimerEntree(((Integer)var14.get(var15)).intValue()); ++var15; } case 2: do { afficherMenuRechercheAvancee(); option3 = sc.nextInt(); var14 = new ArrayList(); switch(option3) { case 1: System.out.println("Saissez le nom?"); nouveauCourriel = sc.next(); var14 = rechercheAvancee(nouveauCourriel, "nom"); break; case 2: System.out.println("Saissez le prenom?"); nouvelleUnite = sc.next(); var14 = rechercheAvancee(nouvelleUnite, "prenom"); break; case 3: System.out.println("Saissez le courriel?"); nouveauLocal = sc.next(); var14 = rechercheAvancee(nouveauLocal, "courriel"); break; case 4: System.out.println("Saisissez le numero de poste?"); nouveauPoste = sc.nextInt(); var14 = rechercheAvancee(String.valueOf(nouveauPoste), "poste"); break; case 5: System.out.println("Saisissez l unite?"); nouvelleUnite1 = sc.next(); var14 = rechercheAvancee(nouvelleUnite1, "unite"); break; case 6: System.out.println("Saisissez le local?"); nouveauLocal1 = sc.next(); var14 = rechercheAvancee(nouveauLocal1, "local"); } for(var15 = 0; var15 < var14.size(); ++var15) { imprimerEntree(((Integer)var14.get(var15)).intValue()); } } while(option3 != 99); } } while(option2 != 99); break; case 2: while(true) { afficherMenuConfiguration(); option2 = sc.nextInt(); for(option3 = 0; option3 < prenoms.size(); ++option3) { imprimerEntree(option3); } label73: switch(option2) { case 1: System.out.println("Saisissez l entree a modifier"); option3 = sc.nextInt(); while(true) { afficherMenuModification(); int var13 = sc.nextInt(); switch(var13) { case 1: System.out.println("Saisissez le nouveau nom?"); nouveauCourriel = sc.next(); modifier(option3 - 1, "nom", nouveauCourriel); break; case 2: System.out.println("Saisissez le nouveau prenom?"); nouvelleUnite = sc.next(); modifier(option3 - 1, "prenom", nouvelleUnite); break; case 3: System.out.println("Saisissez le nouveau courriel?"); nouveauLocal = sc.next(); modifier(option3 - 1, "courriel", nouveauLocal); break; case 4: System.out.println("Saisissez le nouveau poste?"); nouveauPoste = sc.nextInt(); modifier(option3 - 1, "poste", String.valueOf(nouveauPoste)); break; case 5: System.out.println("Saisissez la nouvelle unite?"); nouvelleUnite1 = sc.next(); modifier(option3 - 1, "unite", nouvelleUnite1); break; case 6: System.out.println("Saisissez le nouveau local?"); nouveauLocal1 = sc.next(); modifier(option3 - 1, "local", nouveauLocal1); } if(var13 == 99) { break label73; } } case 2: System.out.println("Saissez le nouveau nom"); var12 = sc.next(); System.out.println("Saissez le nouveau prenom"); String nouveauPrenom = sc.next(); System.out.println("Saissez le nouveau courriel"); nouveauCourriel = sc.next(); System.out.println("Saissez la nouvelle unite"); nouvelleUnite = sc.next(); System.out.println("Saissez le nouveau local"); nouveauLocal = sc.next(); System.out.println("Saissez le nouveau poste"); nouveauPoste = sc.nextInt(); ajouter(nouveauPrenom, var12, nouveauCourriel, nouvelleUnite, nouveauLocal, nouveauPoste); break; case 3: System.out.println("Saissez l entree a eliminer"); option3 = sc.nextInt(); eliminer(option3 - 1); } if(option2 == 99) { continue label107; } } case 99: System.out.println("merci et bye"); } } while(option != 99); } public static void imprimerEntree(int indice) { System.out.println("Entree " + (indice + 1)); System.out.println("Prenom: " + (String)prenoms.get(indice)); System.out.println("Nom: " + (String)noms.get(indice)); System.out.println("Courriel: " + (String)courriels.get(indice)); System.out.println("Unite: " + (String)unites.get(indice)); System.out.println("Local: " + (String)locaux.get(indice)); System.out.println("Poste: " + postes.get(indice)); } public static void afficherMenuRecherche() { System.out.println("Menu recherche"); System.out.println("1. Recherche rapide"); System.out.println("2. Recherche avancee"); System.out.println("99. Quitter"); } public static void afficherMenuRechercheAvancee() { System.out.println("Menu recherche avancee"); System.out.println("1. recherche par nom"); System.out.println("2. recherche par prenom"); System.out.println("3. recherche par courriel"); System.out.println("4. recherche par poste"); System.out.println("5. recherche par unite"); System.out.println("6. recherche par local"); System.out.println("99. Quitter"); } public static void afficherMenuModification() { System.out.println("Menu moddification"); System.out.println("1. modifier nom"); System.out.println("2. modifier prenom"); System.out.println("3. modifier courriel"); System.out.println("4. modifier poste"); System.out.println("5. modifier unite"); System.out.println("6. modifier local"); System.out.println("99. Quitter"); } public static void afficherMenuPrincipal() { System.out.println("Menu principal"); System.out.println("1. Recherche"); System.out.println("2. Configurer"); System.out.println("99. Quitter"); } public static void afficherMenuConfiguration() { System.out.println("Menu configuration"); System.out.println("1. Modifier entree"); System.out.println("2. Ajouter entree"); System.out.println("3. Supprimer entree"); System.out.println("99. Quitter"); } public static ArrayList rechercheRapide(String saisi) { ArrayList returnList = new ArrayList(); int tailleBottin = prenoms.size(); for(int i = 0; i < tailleBottin; ++i) { String prenom = (String)prenoms.get(i); String nom = (String)noms.get(i); String unite = (String)unites.get(i); String courriel = (String)courriels.get(i); Integer poste = (Integer)postes.get(i); String local = (String)locaux.get(i); if(prenom.contains(saisi)) { returnList.add(Integer.valueOf(i)); } else if(nom.contains(saisi)) { returnList.add(Integer.valueOf(i)); } else if(unite.contains(saisi)) { returnList.add(Integer.valueOf(i)); } else if(courriel.contains(saisi)) { returnList.add(Integer.valueOf(i)); } else if(poste.toString().contains(saisi)) { returnList.add(Integer.valueOf(i)); } else if(local.contains(saisi)) { returnList.add(Integer.valueOf(i)); } } return returnList; } public static ArrayList rechercheAvancee(String saisi, String cas) { ArrayList returnList = new ArrayList(); int tailleBottin = prenoms.size(); byte var5 = -1; switch(cas.hashCode()) { case -980102839: if(cas.equals("prenom")) { var5 = 0; } break; case -368382809: if(cas.equals("courriel")) { var5 = 3; } break; case 109260: if(cas.equals("nom")) { var5 = 1; } break; case 103145323: if(cas.equals("local")) { var5 = 4; } break; case 106855365: if(cas.equals("poste")) { var5 = 5; } break; case 111433569: if(cas.equals("unite")) { var5 = 2; } } int i; String var8; switch(var5) { case 0: for(i = 0; i < tailleBottin; ++i) { var8 = (String)prenoms.get(i); if(var8.contains(saisi)) { returnList.add(Integer.valueOf(i)); } } return returnList; case 1: for(i = 0; i < tailleBottin; ++i) { var8 = (String)noms.get(i); if(var8.contains(saisi)) { returnList.add(Integer.valueOf(i)); } } return returnList; case 2: for(i = 0; i < tailleBottin; ++i) { var8 = (String)unites.get(i); if(var8.contains(saisi)) { returnList.add(Integer.valueOf(i)); } } return returnList; case 3: for(i = 0; i < tailleBottin; ++i) { var8 = (String)courriels.get(i); if(var8.contains(saisi)) { returnList.add(Integer.valueOf(i)); } } return returnList; case 4: for(i = 0; i < tailleBottin; ++i) { var8 = (String)locaux.get(i); if(var8.contains(saisi)) { returnList.add(Integer.valueOf(i)); } } return returnList; case 5: for(i = 0; i < tailleBottin; ++i) { Integer poste = (Integer)postes.get(i); if(poste.toString().compareTo(saisi) == 0) { returnList.add(Integer.valueOf(i)); } } } return returnList; } public static void modifier(int indice, String cas, String saisi) { byte var4 = -1; switch(cas.hashCode()) { case -980102839: if(cas.equals("prenom")) { var4 = 0; } break; case -368382809: if(cas.equals("courriel")) { var4 = 3; } break; case 109260: if(cas.equals("nom")) { var4 = 1; } break; case 103145323: if(cas.equals("local")) { var4 = 2; } break; case 106855365: if(cas.equals("poste")) { var4 = 5; } break; case 111433569: if(cas.equals("unite")) { var4 = 4; } } switch(var4) { case 0: modifierString(indice, saisi, prenoms); break; case 1: modifierString(indice, saisi, noms); break; case 2: modifierString(indice, saisi, locaux); break; case 3: modifierString(indice, saisi, courriels); break; case 4: modifierString(indice, saisi, unites); break; case 5: modifierInteger(indice, Integer.valueOf(Integer.parseInt(saisi)), postes); } } private static void modifierString(int indice, String saisi, ArrayList alist) { alist.set(indice, saisi); } private static void modifierInteger(int indice, Integer saisi, ArrayList alist) { alist.set(indice, saisi); } public static void eliminer(int indice) { int tailleBottin = prenoms.size(); if(indice < tailleBottin) { prenoms.remove(indice); noms.remove(indice); courriels.remove(indice); unites.remove(indice); locaux.remove(indice); postes.remove(indice); } } public static void ajouter(String prenom, String nom, String courriel, String unite, String local, int poste) { prenoms.add(prenom); noms.add(nom); courriels.add(courriel); unites.add(unite); locaux.add(local); postes.add(Integer.valueOf(poste)); } }