Advertisement
VictorMunoz

VMP_UF3-Reto

Oct 27th, 2022 (edited)
80
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.91 KB | None | 0 0
  1. import java.io.BufferedReader;
  2. import java.io.File;
  3. import java.io.FileReader;
  4. import java.io.IOException;
  5.  
  6. public class Reto3 {
  7.    
  8. public static void main(String[] args) {
  9. // TODO Auto-generated method stub
  10. // Leer el fichero "notasPepe.txt" que debe existir dentro del proyecto.
  11.     File f= new File("notasPepe.txt");
  12. // Definición de variables para los Strings de líneas del texto, un int contador para el número de líneas y un float para las notas.
  13.     String lineaTexto="";
  14.     int numLineas=0;
  15.     float nota=0f;
  16.  
  17. // Comprobación que el fichero existe para iniciar el programa con if y try/catch.
  18.     if(f.exists()) {
  19.     try {
  20.         FileReader fr = new FileReader(f); // Llamada a la clase FileReader para leer el contenido del archivo
  21.         BufferedReader br = new BufferedReader(fr); // Llamada a la clase BufferedReader para leer el fichero por líneas.
  22. // Mientras exista líneas en el fichero (hasta que llegue a la última posición) a cada linea se asocia a la variante lineaTexto.
  23.         while (lineaTexto!=null) {
  24.             lineaTexto=br.readLine();
  25. // Condicional para obtener el resultado final del bucle.
  26.             if(lineaTexto!=null) {
  27.                 numLineas++; // Añade 1 al contador de líneas por cada iteración del bucle.
  28.                 int index= lineaTexto.indexOf(" "); // Buscar el número de indice del separador entre la unidad y la nota.
  29.                 nota=nota+Float.parseFloat(lineaTexto.substring(index+1)); // Todo lo que haya después del espacio se considera las notas, se transforma a float y se suma acumulativamente en la misma variable nota.
  30.             }
  31.         }
  32.         br.close(); fr.close(); //Cierre de las clases para leer el texto
  33.        
  34.         System.out.println("La nota media del alumno es: "+ nota/numLineas); // Muestra el resultado del total de notas entre el número de líneas
  35. // Contraparte de try para gestionar problemas en el código.
  36.     } catch (IOException e) {
  37.         // TODO Auto-generated catch block
  38.         e.printStackTrace();
  39.     }  
  40.     }
  41. }
  42. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement