Hallo Magier1,
zuerst solltest du dein Problem genau analysieren. Welche Zustände kann jede Ampel einnehmen?
Code:
KfzAmpelZustaende = (kfzAus, kfzGruen, kfzGelb, kfzRot, kfzRotGelb);
FussgaengerAmpelZustaende = (fussAus, fussGruen, fussRot);
Acht Phasen kann ich nicht erkennen, sondern eher sechs:
Code:
Phase 1: 5s, kfzGruen, fussRot
Phase 2: 2s, kfzGelb, fussRot
Phase 3: 5s, kfzRot, fussRot
Phase 4: 10s, kfzRot, fussGruen
Phase 5: 2s, kfzRot, fussRot
Phase 6: 2s, kfzRotGelb, fussRot
Der Rest ist dann nur noch Einschalten, Ausschalten und eine Schleife:
Code:
Solange Eingeschaltet() do
begin
Phase := NächstePhase(Phase);
SchalteFahrzeugAmpel(Phase);
SchalteFussgaengerAmpel(Phase);
Warte(Dauer(Phase));
end;
Jetzt aber ran an die Hausaufgaben.
Grüße vom marabu