Version 0
Verwaltung der Ampeln
Der Verkehr in einer Straßenkreuzung soll mit vier Ampeln geregelt werden.

Zur Simulation dieses Ampelsystems werden vier Objekte der Klasse Ampel
eingeführt.
Die Objektkonstellation zum Ampelsystem lässt sich mit dem folgenden Objektdiagramm beschreiben.

Die Objekte können mit einer Implementierung der Klasse Ampel
(vgl. ampel.py) erzeugt werden.
Aufgabe 1
Betrachte das folgende Testprogramm. Welche Ausgaben werden hier erzeugt? Warum sollte die im Testprogramm erzeugte Objektsituation in der Wirklichkeit nicht auftreten?
from ampel import *
ampelNS = Ampel('rot')
ampelOW = Ampel('gruen')
ampelSN = Ampel('rot')
ampelWO = Ampel('gruen')
print(ampelNS.getLampen())
print(ampelOW.getLampen())
print(ampelSN.getLampen())
print(ampelWO.getLampen())
print()
ampelNS.schalten()
ampelSN.schalten()
ampelNS.schalten()
ampelSN.schalten()
print(ampelNS.getLampen())
print(ampelOW.getLampen())
print(ampelSN.getLampen())
print(ampelWO.getLampen())
print()