fork download
  1. package institucion;
  2.  
  3. import java.io.BufferedReader;
  4. import java.io.IOException;
  5. import java.io.InputStreamReader;
  6. import java.util.ArrayList;
  7. import java.util.List;
  8.  
  9. public class Matricula {
  10.  
  11. private List<Docente> docentes = null;
  12. private List<Estudiante> estudiantes = null;
  13. private List<Materia> materias = null;
  14.  
  15. BufferedReader lector = new BufferedReader(new InputStreamReader(System.in)); // Crear lector //
  16.  
  17.  
  18. public void matriculardatos() throws IOException{
  19.  
  20.  
  21. // MATRICULA DE DOCENTES //
  22.  
  23.  
  24. docentes = new ArrayList<Docente>();
  25. System.out.println("Para finalizar el ingreso de docentes digite en el nombre XXXX");
  26. Docente docente = new Docente();
  27. docente.leer();
  28.  
  29.  
  30. while(docente.getNombredocente().compareToIgnoreCase("XXXX")!=0) // Creacion infinita de Empleados hasta digitar XXXX //
  31. {
  32. docentes.add(docente);
  33. docente = new Docente();
  34. docente.leer();
  35. }
  36.  
  37. // MATRICULA DE ESTUDIANTES //
  38.  
  39. estudiantes = new ArrayList<Estudiante>();
  40.  
  41. System.out.println("Para finalizar el ingreso de estudiantes digite en el nombre XXXX");
  42. Estudiante estudiante = new Estudiante();
  43. estudiante.leer();
  44.  
  45.  
  46. while(estudiante.getNombre().compareToIgnoreCase("XXXX")!=0) // Creacion infinita de Empleados hasta digitar XXXX //
  47. {
  48. estudiantes.add(estudiante);
  49. estudiante = new Estudiante();
  50. estudiante.leer();
  51. }
  52.  
  53. // MATRICULA DE MATERIAS //
  54.  
  55. materias = new ArrayList<Materia>();
  56. System.out.println("Para finalizar el ingreso de materias digite en el nombre XXXX");
  57. Materia materia = new Materia();
  58. materia.leer();
  59.  
  60. for ( int i=0; i<docentes.size(); i++ )
  61. {
  62. System.out.println(docentes.get(i).getNombredocente());
  63. }
  64.  
  65. System.out.println("Digite el nombre del docente que dicta la materia");
  66. String buscador1 = lector.readLine();
  67.  
  68. for ( int i=0; i<docentes.size(); i++ )
  69. {
  70. if ( docentes.get(i).getNombredocente().equalsIgnoreCase(buscador1) )
  71.  
  72. {
  73. materia.setNombredocente(docentes.get(i).getNombredocente());
  74. }
  75. }
  76.  
  77.  
  78. while(materia.getNombremateria().compareToIgnoreCase("XXXX")!=0) // Creacion infinita de Empleados hasta digitar XXXX //
  79. {
  80. materias.add(materia);
  81. materia = new Materia();
  82. materia.leer();
  83.  
  84. if ( materia.getNombremateria().compareToIgnoreCase("XXXX")!= 0){
  85.  
  86. for ( int i=0; i<docentes.size(); i++ )
  87. {
  88. System.out.println(docentes.get(i).getNombredocente());
  89. }
  90.  
  91. System.out.println("Digite el nombre del docente que dicta la materia");
  92. String buscador2 = lector.readLine();
  93.  
  94. for ( int i=0; i<docentes.size(); i++ )
  95. {
  96. if ( docentes.get(i).getNombredocente().equalsIgnoreCase(buscador2) )
  97.  
  98. {
  99. materia.setNombredocente(docentes.get(i).getNombredocente());
  100. }
  101. }
  102.  
  103. }
  104.  
  105. }
  106.  
  107. }
  108.  
  109. public void matricular_materias() throws IOException{
  110.  
  111. System.out.println("Ingrese el nombre del estudiante");
  112. String buscador1 = lector.readLine();
  113.  
  114.  
  115.  
  116. for (Estudiante estudiante : estudiantes)
  117. {
  118. if ( estudiante.getNombre().equals(buscador1) )
  119. {
  120. System.out.println("Debe matricular minimo 1 materias o maximo 3");
  121. System.out.println("¿Cuantas materias va a matricular?");
  122. int n = Integer.parseInt(lector.readLine());
  123. if( n < 1 || n > 7 )
  124. {System.out.println("Ingreso erroneo, porfavor ingrese nuevamente el numero de materias");}
  125. else{
  126.  
  127. for ( Materia materia : materias ) // Impresion de cada docente las materias de que dicta - PRUEBA 1
  128. {
  129. System.out.println(materia.getNombremateria());
  130. }
  131.  
  132.  
  133.  
  134. for ( int i=0; i<n; i++)
  135. {
  136. System.out.println("De las materias descritas anteriormente digite la que quiere matricular");
  137. String buscador2 = lector.readLine();
  138.  
  139. for ( Materia materia : materias ) // Impresion de cada docente las materias de que dicta - PRUEBA 2
  140. {
  141. if ( materia.getNombremateria().equalsIgnoreCase(buscador2) )
  142. {
  143. estudiante.materiasdelestudiante.add(materia);
  144. materia.estudiantesdelamateria.add(estudiante);
  145. }
  146. }
  147. }
  148. }
  149. System.out.println("-----------------------");
  150. System.out.println("Las materias que matriculo: "+estudiante.getNombre());
  151.  
  152. for ( int i=0; i<estudiante.materiasdelestudiante.size(); i++)
  153. {
  154. System.out.println(estudiante.materiasdelestudiante.get(i).getNombremateria());
  155. }
  156.  
  157. }
  158.  
  159. }
  160. }
  161.  
  162. public void notas_docente() throws IOException{
  163.  
  164. System.out.println("Ingrese el nombre del docente");
  165. String buscador1 = lector.readLine();
  166.  
  167.  
  168. for ( Docente docente : docentes )
  169. {
  170.  
  171.  
  172. if ( docente.getNombredocente().equals(buscador1) )
  173. {
  174. System.out.println("Ingrese el nombre de la materia");
  175. String buscador2 = lector.readLine();
  176.  
  177. for ( int i=0; i<materias.size(); i++ )// Añadir materia a la lista de materias del estudiante - PRUEBA 1
  178. {
  179. if ( materias.get(i).getNombredocente().equalsIgnoreCase(buscador1) && materias.get(i).getNombremateria().equalsIgnoreCase(buscador2))
  180. {
  181.  
  182. System.out.println("El tamaño de la lista estudiantes de la materia es:" +materias.get(i).estudiantesdelamateria.size());
  183. System.out.println("Los estudiantes son:");
  184. for ( int j=0; j<materias.get(i).estudiantesdelamateria.size(); j++)
  185. {
  186.  
  187. System.out.println(materias.get(i).estudiantesdelamateria.get(j).getNombre());
  188. }
  189.  
  190. System.out.println("Seleccione el estudiante al que quiere ingresar notas");
  191. String buscador3 = lector.readLine();
  192.  
  193. for ( int j=0; j<materias.get(i).estudiantesdelamateria.size(); j++)
  194. {
  195. if ( materias.get(i).estudiantesdelamateria.get(j).getNombre().equalsIgnoreCase(buscador3))
  196.  
  197. {
  198.  
  199. NotasEstudiante notasestudiante = new NotasEstudiante();
  200. notasestudiante.crear_listas();
  201. notasestudiante.setCodigoestudiante(materias.get(i).estudiantesdelamateria.get(j).getCodigoestudiante());
  202.  
  203.  
  204.  
  205. int opcion4 =0;
  206.  
  207. do{
  208.  
  209. System.out.println("1. Notas de Quices");
  210. System.out.println("2. Notas de Trabajos");
  211. System.out.println("3. Notas de Parciales");
  212. System.out.println("4. Salir");
  213.  
  214. System.out.print("Digite la opcion: ");
  215. opcion4 = Integer.parseInt(lector.readLine());
  216. System.out.println();
  217.  
  218. switch(opcion4){
  219.  
  220. case 1: notasestudiante.notas_quices();break;
  221. case 2: notasestudiante.notas_trabajos();break;
  222. case 3: notasestudiante.notas_parciales();break;
  223. case 4: opcion4 = 4;break;
  224. default: break;
  225. }
  226. }while(opcion4!=4);
  227.  
  228. opcion4 =0;
  229.  
  230. System.out.println("Estoy dentro 1");
  231. for ( int k=0; k<materias.get(i).estudiantesdelamateria.get(j).materiasdelestudiante.size(); k++ )
  232. {
  233. if ( materias.get(i).estudiantesdelamateria.get(j).materiasdelestudiante.get(k).getNombremateria().equalsIgnoreCase(buscador2) )
  234. {
  235. notasestudiante.setCreditos(materias.get(i).estudiantesdelamateria.get(j).materiasdelestudiante.get(k).getCreditos());
  236. materias.get(i).estudiantesdelamateria.get(j).materiasdelestudiante.get(k).notasdelamateriaporestudiante.add(notasestudiante);
  237. }
  238. }
  239. }
  240. }
  241. }
  242. }
  243. }
  244. }
  245. }
  246.  
  247. }
  248.  
Not running #stdin #stdout 0s 0KB
stdin
Standard input is empty
stdout
Standard output is empty