/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */

/**
 *
 * @author bal
 */
public class ArrayUmfrage {

    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
        String[] name = {
            "Clown",
            "Dummi",
            "Fifi",
            "Halt",
            "Lustig",
            "Mausi",
            "Mimi",
            "Null",
            "Rost",
            "Toll",
            "Zelli",
            "Zorn",};

        int[] koerpergroesse = {
            180,
            170,
            181,
            185,
            177,
            172,
            167,
            164,
            172,
            168,
            181,
            170
        };

        int[] anzahlGeschwister = {
            2,
            1,
            3,
            1,
            2,
            0,
            1,
            3,
            1,
            0,
            4,
            2
        };

        String[] lieblingsfach = {
            "Sport",
            "IT",
            "Englisch",
            "Sport",
            "Mathe",
            "Sport",
            "Englisch",
            "Mathe",
            "IT",
            "Sport",
            "Sport",
            "Englisch"
        };

        // Bestimmen Sie die durchschnittliche Größe.
        double summe = 0; // double notwendig, um Kommazahlen zu erhalten
        for (int i = 0; i < name.length; i++) {
            summe = summe + koerpergroesse[i];
        }
        double durchschnitt = summe / koerpergroesse.length;
        durchschnitt = (int) (durchschnitt * 100) / 100.0;
        System.out.println("Durchschnitt Körpergröße:" + durchschnitt);

        //Bestimmen Sie den Prozentsatz der Befragten, die mindestens 2 Geschwister haben.
        int anzahlPersonenMind2Geschw = 0;
        for (int i = 0; i < name.length; i++) {
            if (anzahlGeschwister[i] >= 2) {
                anzahlPersonenMind2Geschw++;
            }
        }
        double prozent = (double) anzahlPersonenMind2Geschw / name.length;
        prozent = prozent * 100;
        System.out.println(
                "Prozent Personen mit mind 2 Geschw.:" + prozent);
        
        //Stellen Sie fest, ob es jemanden gibt, 
        //der größer als 1,80 m ist und nicht Sport als Lieblingsfach
        //angegeben hat.
        
        boolean found=false;
        int i=0;
        for (i=0; i < name.length; i++) {
            if (koerpergroesse[i]>180 
                && !lieblingsfach[i].equals("Sport")) {
                found=true;
                break;
            }
        }
        System.out.print("Gibt es einen > 180 mit Sport:");
        if (found==true) {
            System.out.println("Ja");
            System.out.println("Nämlich:"+name[i]);
        } else {
            System.out.println("Nein");
        }
        
        //Bestimmen Sie das Fach, das am häufigsten als Lieblingsfach genannt wurde.
        final int SPORT=0, IT=1, ENGLISCH=2, MATHE=3;        
        String[] nameFach = {"Sport","IT","Englisch","Mathe"};
        int anzahlFach[] = {0,0,0,0};
        
        for (i=0; i < name.length; i++) {                
          if(lieblingsfach[i].equals(nameFach[SPORT])) {
              anzahlFach[SPORT]++;
          } else if(lieblingsfach[i].equals(nameFach[IT])) {
              anzahlFach[IT]++;
          } else if(lieblingsfach[i].equals(nameFach[ENGLISCH])) {
              anzahlFach[ENGLISCH]++;
          } else if(lieblingsfach[i].equals(nameFach[MATHE])) {
              anzahlFach[MATHE]++;
          } else {
              System.out.println("Fehler: Unbekanntes Fach:"+anzahlFach[i]);
          }                                    
        }  

		//Alternativ:
		
        for (i=0; i < name.length; i++) {
		  for (fach=0; fach < nameFach.length; i++) {	
		    if(lieblingsfach[i].equals(nameFach[fach])) { 
			   anzahlFach[fach]++;
		       continue;
		   }
		  }
		}			 
		
        //Ausgabe Statistik
        for (i=0; i < anzahlFach.length; i++) {                
            System.out.println("Fach "+nameFach[i]+":"+anzahlFach[i]);
        }
             
        //Größtes heraus finden
        int maxFachIndex=-1;
        int maxFach=-1;
        for (i=0; i < anzahlFach.length; i++) {                        
            if(maxFach<anzahlFach[i]) {
                maxFach=anzahlFach[i];
                maxFachIndex=i; 
            }
        }
        
        String maxLieblingsFach=nameFach[maxFachIndex];
        System.out.println("Beliebtestes Fach "+maxLieblingsFach);

        //Bestimmen Sie die Namen der Personen, 
        //die dieses Fach als Lieblingsfach angegeben haben.
        
        System.out.println("Personen mit häufigsten Lieblingsfach:");
        for (i=0; i < name.length; i++) {                
            if (lieblingsfach[i].equals(maxLieblingsFach)) {
                System.out.println(name[i]);
            }
        }
        
        //Listen Sie die Namen der Befragten auf, die mit 'M' anfangen.
        System.out.println("Name mit M anfangen");
        for (i=0; i < name.length; i++) {                
          if(name[i].charAt(0)=='M') {
              System.out.println(name[i]);
          }  
        }
        
        
    }
}
