-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathGestion_de_Notas_Mini_Proyecto.java
More file actions
82 lines (53 loc) · 4.02 KB
/
Gestion_de_Notas_Mini_Proyecto.java
File metadata and controls
82 lines (53 loc) · 4.02 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
import java.util.Scanner;//importamos el scanner
public class Gestion_de_Notas_Mini_Proyecto {
public static void main(String[] args) {
@SuppressWarnings("resource")
Scanner scanner = new Scanner(System.in);// inicializamos el scanner para poder utilizarlo
//inicializamos constantes para que no haya problemas de entendimiento con otro programador
final double NotaMaximaIngresar = 5;
final double NotaMinimaIngresar = 0;
final int NotaMinimaParaAprobar = 3;
System.out.print("Escriba el numero de estudiantes: ");// mostramos en pantalla al usuario para que ingrese el numero de los estudiantes
int estudiantesNum = scanner.nextInt();// ponemos el escaner para que nos lea el numero de estudiantes
System.out.println("");
// Declarar los arrays donde se van a almacenar los datos
String Nombres[] = new String[estudiantesNum];// inicializamos un vector para que tenga guardado el nombre de los estudiantes deacuerdo al numero de estudiantes que haya
int Identificacion[] = new int[estudiantesNum];// inicializamos un vector para guardar el numero de identificacion de los estudiantes teniendo en cuenta el numero de estudiantes
float Notas[] = new float[3];// inicializamos un vector para guardar las 3 notas por cada estudiante
float Promedio[] = new float[estudiantesNum];// inicializamos un vector de tipo duble para guardar el promedio
System.out.println("");
for (int posicion = 0; posicion < estudiantesNum; posicion++) {// ciclo for para ingresar los datos en el array de nombre
if (posicion == 0) {// esto es para solucionar un problema que tenia porque no
Nombres[0] = scanner.nextLine();
}
System.out.println("Escriba el nombre del estudiante numero: " + (posicion + 1)); // ese +1 se lo añadi para mejorar la estetica a la hora de ingresar los datos
Nombres[posicion] = scanner.nextLine();
System.out.println("");//para estetica
}
for (int posicion = 0; posicion < estudiantesNum; posicion++) { // ciclo for para ingresar los datos en el vector de indetificacion de estidiantes
System.out.println("Escriba la identificacion del estudiante: " + Nombres[posicion]);
Identificacion[posicion] = scanner.nextInt();
System.out.println("");//para estetica
}
for (int posicion = 0; posicion < estudiantesNum; posicion++) { // ciclo for para ingrasr los datos de las notas
float notasAcumulacion = 0;//inicializamos notas acumulacion dentro del for para que se reinicie cada que pasemos de estudiante
for (int j = 0; j < 3; j++) {//for par ingresar 3 notas para cada estudiante
do {
System.out.print("Escriba la nota numero " + (j + 1) + " del estudiante " + Nombres[posicion] + ":");
Notas[j] = scanner.nextFloat();
} while (Notas[j] > NotaMaximaIngresar || Notas[j] < NotaMinimaIngresar);//este dowhile es para que no se ingresen notas negativas o mayor a 5
notasAcumulacion += Notas[j];// notas por fuera para que no alla error de acumulacion
}
Promedio[posicion] = notasAcumulacion / 3; // para sacar el promedio
System.out.println(""); // meramente estetica
}
for (int posicion = 0; posicion < estudiantesNum; posicion++) { //para recorrer la posicion del estudiante
System.out.println("");
if (Promedio[posicion] >= NotaMinimaParaAprobar) {//para validar si el estudiante en la posicion aprobo o reprobo segun su promedio
System.out.println("Estudiante: " + Nombres[posicion] + " (ID: " + Identificacion[posicion]+ ") Promedio: " + Promedio[posicion] + " - Aprobado");
} else {
System.out.println("Estudiante: " + Nombres[posicion] + " (ID: " + Identificacion[posicion]+ ") Promedio: " + Promedio[posicion] + " - Reprovado");
}
}
}
}// finish