Sitzung: Jeden Freitag in der Vorlesungszeit ab 16 Uhr c. t. im MAR 0.005. In der vorlesungsfreien Zeit unregelmäßig (Jemensch da?). Macht mit!

Javakurs/Übungsaufgaben/Democracy

Fehler im System

Führende PolitikwissenschaftlerInnen haben festgestellt, dass Demokratie einfach nicht funktioniert. Deshalb haben sie sich überlegt, dass es klüger wäre, wenn einfach der/die Älteste entscheidet. Sie haben ein Programm geschrieben, das unter den Parteivorsitzenden der großen Parteien, den/die älteste heraussucht. Leider sind sie keine gelernten Java-Programmierer und haben es nicht geschafft, lauffähigen Code zu produzieren. Findest du die Fehler im System?

public class DemocracyV2 {
	public static void main(String[] args) {
		String[] names = String[5]; 
		int[] ages = int[5];
		
		generateNamesAndAges(names, ages);
		System.out.println(whosTheOldest(names, ages));
	}
	
	private static void generateNamesAndAges(String[] names, int[] ages) {
		names[0] = Angela; 
		ages[0] =  52;
		
		names[1] = Kurt;
		ages[1] = 58;
		
		names[2] = Lothar;
		ages[2] = 66;

		names[3] = Doppelspitze Claudia und Reinhard;
		ages[3] = 51 + 54;
		
		names[4] = Guido;
		ages[4] = 45;
	}

	private static void whosTheOldest(String[] names, int[] ages) { 
		int oldest;	
		for(int i; i <= 5; i++) { 
			if ( oldest < ages[i] ) { 
				int indexOfOldest = i; 
			}
		}
		
		return "Oldest and wisest person is " + names[indexOfOldest] + " with an age of " + ages[indexOfOldest]  + "."; 
	}
}

Nachdem du die Fehler gefunden hast, wie könntest du sie beseitigen und so die Gesellschaft vor ihrem Untergang bewahren? Wie könnte mit dem Fall umgegangen werden, dass zwei PolitikerInnen gleich alt sind?

Kommentare

Wenn du Anmerkungen zur Aufgabe hast oder Lob und Kritik loswerden möchtest, ist hier die richtige Stelle dafür. Klicke einfach ganz rechts auf "bearbeiten" und schreibe deinen Kommentar direkt ins Wiki. Keine Scheu, es geht nichts kaputt ;)