Documente Academic
Documente Profesional
Documente Cultură
do {
filas = Integer.parseInt(JOptionPane.showInputDialog("�Cuantos estudiantes? (entre
1 y 100)"));
} while (filas < 1 || filas > 100);
do {
columnas = Integer.parseInt(JOptionPane.showInputDialog("�Cuantas calificaciones
administrar�? (entre 4 y 10)"));
} while (columnas < 4 || columnas > 10);
columnas = columnas + 1;
registro = new Object[filas][columnas];
//ingreso de nombres
for (posicion = 0; posicion < filas; posicion++) {
nombre = JOptionPane.showInputDialog("Nombre del alumno #" + (posicion + 1));
if (nombre.isEmpty()) {
registro[posicion][0] = "SIN NOMBRE";
} else {
registro[posicion][0] = nombre;
}
}
}
}
} else if (opcion == 3) {//registrar notas por per�odo
for (columna = 1; columna < columnas; columna++) {
for (fila = 0; fila < filas; fila++) {
nota = Double.parseDouble(JOptionPane.showInputDialog("Per�odo #" + columna +
"\nNota del alumno " + registro[fila][0]));
if (nota < 0 || nota > 10) {
registro[fila][columna] = 0.0;
JOptionPane.showMessageDialog(null, "Calificaci�n no v�lida, se asign� cero
(0.0)");
} else {
registro[fila][columna] = nota;
}
}
}
Object registro[][];
int filas, columnas, posicion, opcion, fila, columna;
String nombre, salida;
JTextArea hoja;
hoja = new JTextArea();
double nota, promedio = 0;
do {
filas = Integer.parseInt(JOptionPane.showInputDialog("�Cuantos
estudiantes? (entre 1 y 100)"));
} while (filas < 1 || filas > 100);
do {
columnas = Integer.parseInt(JOptionPane.showInputDialog("�Cuantas
calificaciones administrar�? (entre 4 y 10)"));
} while (columnas < 4 || columnas > 10);
columnas = columnas + 1;
registro = new Object[filas][columnas];
//ingreso de nombres
for (posicion = 0; posicion < filas; posicion++) {
nombre = JOptionPane.showInputDialog("Nombre del alumno #" + (posicion
+ 1));
if (nombre.isEmpty()) {
registro[posicion][0] = "SIN NOMBRE";
} else {
registro[posicion][0] = nombre;
}
}
opcion = Integer.parseInt(JOptionPane.showInputDialog("Opciones:\n1.Ver
listado de alumnos\n2.Registrar notas por alumno\n3.Registrar notas por
per�odo\n4.Ver cuadro de notas\nCualquier otro n�mero para salir"));
while (opcion >= 1 && opcion <= 4) {
if (opcion == 1) {//ver listado de alumnos
salida = "";
for (posicion = 0; posicion < filas; posicion++) {
salida = salida + registro[posicion][0] + "\n";
}
hoja.setText(salida);
JOptionPane.showMessageDialog(null, hoja);
} else if (opcion == 2) {//registrar calificaciones por alumno
for (fila = 0; fila < filas; fila++) {
for (columna = 1; columna < columnas; columna++) {
if (registro[fila][0].equals("SIN NOMBRE")) {
nota =
Double.parseDouble(JOptionPane.showInputDialog("Alumno: " + registro[fila][0] +
"\nNota #" + columna));
if (nota < 0 || nota > 10) {
registro[fila][columna] = 0.0;
JOptionPane.showMessageDialog(null, "Calificaci�n
no v�lida, se asign� cero (0.0)");
} else {
registro[fila][columna] = nota;
}
}
}
}
} else if (opcion == 3) {//registrar notas por per�odo
for (columna = 1; columna < columnas; columna++) {
for (fila = 0; fila < filas; fila++) {
if (registro[fila][0].equals("SIN NOMBRE")) {
nota =
Double.parseDouble(JOptionPane.showInputDialog("Per�odo #" + columna + "\nNota del
alumno " + registro[fila][0]));
if (nota < 0 || nota > 10) {
registro[fila][columna] = 0.0;
JOptionPane.showMessageDialog(null, "Calificaci�n
no v�lida, se asign� cero (0.0)");
} else {
registro[fila][columna] = nota;
}
}
}
}
opcion = Integer.parseInt(JOptionPane.showInputDialog("Opciones:\n1.Ver
listado de alumnos\n2.Registrar notas por alumno\n3.Registrar notas por
per�odo\n4.Ver cuadro de notas\nCualquier otro n�mero para salir"));
}