/*
 * Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license
 * Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Class.java to edit this template
 */
package examen10y11.Examen.Ejercicio2;

import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;

/**
 *
 * @author mario
 */
public class Ejercicio2 {
    
    public static void main(String[] args) {
        
        try{
            
            //Variables necesarias
            int edadMinima=Integer.MAX_VALUE;
            int edadMaxima=Integer.MIN_VALUE;
            int mediaEdad=0;
            int contadorEdad=0,sumaEdad=0;
            int contadorAltura=0;

            
            double alturaMinima=Double.MAX_VALUE;
            double alturaMaxima=Double.MIN_VALUE;
            double mediaEstatura=0;
            double sumaAltura=0;
            
       
            File fichero = new File("Motoristas.txt");

            //Comprobamos si el archivo, existe
            if (!fichero.exists()){
                //Si no se procede a crearlo
                fichero.createNewFile();
            }
            //Se preparan las "herramientas" para poder leer el fichero

            BufferedReader entrada = new BufferedReader(new FileReader(fichero));
            
            String linea = null;
            
            while ( 
                    (linea = entrada.readLine()) != null //Se comprueba si String es diferente de null.
                    ) {
                String[] datosLinea = linea.split(" ");
                
                String nombre= datosLinea[0];
                int edad = Integer.parseInt(datosLinea[1]);
                double altura = Double.parseDouble(datosLinea[2]);
                
                
                System.out.println("Nombre: "+nombre);
                
                //--BLOQUE EDADES
                //Se comprueba edad minima
                if (edadMinima>edad) edadMinima=edad;
                //Se comprueba edadMaxima
                if (edadMaxima<edad) edadMaxima=edad;
                //Se incrementa el contador de edad
                contadorEdad++;
                //Se suma la edad nueva al sumatorio.
                sumaEdad+=edad;
                
                //--BLOQUE ALTURAS
                //Se comprueba alutra minima
                if (alturaMinima>altura) alturaMinima=altura;
                //Se comprueba altura máxima
                if (alturaMaxima<altura) alturaMaxima=altura;
                //Se incrementa el contador de altura
                contadorAltura++;
                //Se suma la edad nueva al sumatorio.
                sumaAltura+=altura;
            }
            
            //Se calculan las medias
            mediaEdad=sumaEdad/contadorEdad;
            mediaEstatura=sumaAltura/contadorAltura;
            
            //Se proceden a imprimir los resultados.
            System.out.println("Edad Máxima: "+edadMaxima);
            System.out.println("Edad Mínima: "+edadMinima);
            System.out.println("Estatura Máxima: "+alturaMaxima);
            System.out.println("Estatura Mínima: "+alturaMinima);
            System.out.println("Media Edad: "+mediaEdad);
            System.out.println("Media Estatura: "+mediaEstatura);
            
            
        
         }catch (Exception ex){
             ex.printStackTrace();
         }
        
        
        
        
        
        
        
        
        
    }
}
