package es.upm.dit.adsw; /** * ADSW: calculo de la nota final de la asignatura. * * @version 7.2.2018 */ public class Nota { /** * Notas parciales. NULL si el alumno no se presenta. * * @param notaExP1 parcial 1. * @param notaExP2 parcial 2. * @param notaExP1r repeticion. * @param notaEjercicios practicas - asiganada por cada profesor * @param notaX1 julio: parte 1. * @param notaX2 julio: parte 2. * @param notaX3 julio: practicas. */ static void nota(Double notaExP1, Double notaExP2, Double notaExP1r, Double notaEjercicios, Double notaX1, Double notaX2, Double notaX3) { /* abril */ Double nota1 = 0.0; if (notaExP1 != null) // parcial 1 nota1 = notaExP1; /* junio */ Double nota2 = 0.0; if (notaExP2 != null) // parcial 2 nota2 = notaExP2; if (notaExP1r != null) // repeticion nota1 = notaExP1r; Double notaE = 0.0; // nota de ejercicios asignada por cada profesor if (notaEjercicios != null) notaE = notaEjercicios; if (notaExP1 != null || notaExP1r != null || notaExP2 != null) { double notaP = (nota1 + nota2) / 2; // nota parciales double notaFinal; if (nota1 >= 4 && nota2 >= 4 && notaP >= 5) notaFinal = 0.8 * notaP + 0.2 * notaE; else notaFinal = 0.8 * notaP; System.out.println("junio: " + notaFinal); if (notaFinal >= 5.0) return; } else { System.out.println("junio: NP"); } /* julio */ if (notaX1 != null) nota1 = notaX1; // tema 1 if (notaX2 != null) nota2 = notaX2; // tema 2 if (notaX3 != null) notaE = notaX3; // tema 3 y practicas if (notaX1 != null || notaX2 != null || notaX3 != null) { double notaP = (nota1 + nota2) / 2; // nota parciales double notaFinal; if (nota1 >= 4 && nota2 >= 4 && notaP >= 5) notaFinal = 0.8 * notaP + 0.2 * notaE; else notaFinal = 0.8 * notaP; System.out.println("julio: " + notaFinal); } else { System.out.println("julio: NP"); } } /** * Ejemplo de uso * * @param args argumentos */ public static void main(String[] args) { nota(5.0, 5.0, null, 10.0, null, null, null); } }