10. Hojas de Trabajo
10.1 Hoja de Trabajo Nº 1: Un Estudiante
Descargue esta hoja de trabajo a través de los siguientes enlaces: Descargar PDF | Descargar Word.
Enunciado. Analice el siguiente enunciado e identifique el mundo del problema, lo que se quiere que haga el programa y las restricciones para desarrollarlo.
Se desea construir una aplicación para el manejo de información de los cursos que está tomando un estudiante. El estudiante toma solo 4 cursos en el semestre. Los datos personales del estudiante que maneja la aplicación son código, nombre y apellido.
De cada curso se conoce:
- Código. Es el identificador del curso y no pueden haber dos cursos con el mismo código.
- Nombre.
- Departamento. Puede ser Matemáticas, Física, Sistemas o Biología.
- Cantidad de créditos.
- Nota obtenida en el curso. Este valor debe estar entre 1.5 y 5.
Para poder calcular el promedio del estudiante, se deben ponderar las notas, teniendo en cuenta la cantidad de créditos de las materias. Para esto, para cada curso se debe multiplicar la nota del curso con su cantidad de créditos, sumar estos valores y dividir esta suma por la cantidad total de créditos vistos por el estudiante. Por ejemplo, si el estudiante ha terminado dos materias, “Cálculo 1” y “Física 1”, la primera de 4 créditos y la segunda de tres, con las siguientes notas:
- Cálculo 1: 4,5
- Física 1: 3,5
El promedio del estudiante es:
- ( 4,5 x 4 + 3,5 x 3 ) / 7 = 4,07
Adicionalmente, se quiere poder saber si un estudiante está en prueba académica o si es candidato para beca. Para esto se debe tener en cuenta las siguientes reglas.
- Se considera que un estudiante está en prueba académica si su promedio es inferior a 3.25.
- Se considera que un estudiante es candidato a beca si su promedio es igual o superior a 4.75.
La aplicación debe permitir: (1) visualizar la información del estudiante, (2) visualizar la información de los cursos, (3) modificar la información de un curso, (4) asignar una nota a un curso (5) calcular el promedio del estudiante (6) indicar si el estudiante está en prueba académica, (7) indicar si el estudiante es candidato a beca.
La interfaz del programa es la siguiente:
Requerimientos funcionales. Especifique los siete requerimientos funcionales descritos en el enunciado.
Requerimiento Funcional 1
Nombre | R1 – Visualizar la información del estudiante. |
---|---|
Resumen | |
Entradas | |
Resultado |
Requerimiento Funcional 2
Nombre | R2 – Visualizar la información de los cursos. |
---|---|
Resumen | |
Entradas | |
Resultado |
Requerimiento Funcional 3
Nombre | R3 – Modificar la información de un curso. |
---|---|
Resumen | |
Entradas | |
Resultado |
Requerimiento Funcional 4
Nombre | R4 – Asignar una nota a un curso. |
---|---|
Resumen | |
Entradas | |
Resultado |
Requerimiento Funcional 5
Nombre | R5 – Calcular el promedio del estudiante. |
---|---|
Resumen | |
Entradas | |
Resultado |
Requerimiento Funcional 6
Nombre | R6 – Indicar si el estudiante está en prueba académica. |
---|---|
Resumen | |
Entradas | |
Resultado |
Requerimiento Funcional 7
Nombre | R7 – Indicar si el estudiante es candidato a beca. |
---|---|
Resumen | |
Entradas | |
Resultado |
Modelo conceptual. Estudie el siguiente modelo conceptual
Declaración de las clases. Complete las declaraciones de las siguientes clases.
public class Estudiante
{
// -------------------------------------------------
// Atributos
// -------------------------------------------------
}
public class Curso
{
// -------------------------------------------------
// Atributos
// -------------------------------------------------
}
Creación de Expresiones. Para cada uno de los siguientes enunciados, escriba la expresión que lo representa. Tenga en cuenta la clase dada para determinar los elementos disponibles.
Curso | ¿El nombre del curso es “Cálculo 1”? | |
---|---|---|
Curso | ¿El curso ya tiene una nota asignada? | |
Curso | ¿El curso tiene más de tres créditos? | |
Curso | ¿El curso fue aprobado? | |
Estudiante | ¿El código del estudiante es "1234"? | |
Estudiante | ¿El primer curso tiene una nota asignada? | |
Estudiante | ¿El segundo curso pertenece al departamento de matemáticas? | |
Estudiante | ¿Cuál es el promedio del estudiante? |
Desarrollo de métodos. Escriba el código de los métodos indicados.
Método 1
Clase: Curso
Descipción: Retorna el código del curso.
public String darCodigo( )
{
}
Método 2
Clase: Curso
Descipción: Indica si el curso ya fue calificado (tiene una nota distinta de cero).
public boolean estaCalificado( )
{
}
Método 3
Clase: Estudiante
Descipción: Retorna el nombre del estudiante.
public String darNombre( )
{
}
Método 4
Clase: Estudiante
Descipción: Indica si el estudiante ya tiene los cuatro cursos pertenecen al mismo departamento.
public boolean pertenecenMismoDepartamento( )
{
}
Método 5
Clase: Estudiante
Descipción: Calcula el promedio de los cursos que ya tienen nota. Si ningún curso tiene nota asignada, retorna cero.
public double calcularPromedioEstudiante( )
{
}
Método 6
Clase: Estudiante
Descipción: Busca y retorna el curso que tiene el código que se recibe como parámetro. Si ningún curso tiene dicho código, el método retorna null.
public Curso buscarCurso( String pCodigoCurso )
{
}
Método 7
Clase: Estudiante
Descipción: Indica si el estudiante se encuentra en prueba académica. Retorna verdadero si está en prueba académica, false de lo contrario.
public boolean estaEnPrueba( )
{
}