Informatik Ampelzyklus?
Guten Tag,
Ich brauche für heute 8 Uhr einen in Bluej programmierten (Java) Ampelzyklus.
Dir Ampel sollte alle Farben anzeigen können und auch von zB gelb zu gelbrot usw wechseln.
Außerdem sollte dort eine Art Loop sein so dass der Zyklus ein paar Mal wiederholt.
Vielen Dank
2 Antworten
Wie sieht denn dein Programm aus? Wenn es Fehler hat, hilft die Community bestimmt gerne diese zu finden. Aber hier schreibt keiner Programme für dich.
In dieser Art bekommt man z.B. Aufträge von seinem Chef.
Ok trotzdem danke weißt du zufällig wie ich einen Kreis unsichtbar machen kann?
Wie ein Vorredner bereits erwähnt hat, bitte bestehenden Code nachreichen.
Für das fundamentale Konstrukt:
Erstmal überlegen wir uns, eine Intervall-Ampel oder eine Intervall-Ampel welche mit Induktionsstreifen verschieden entscheidet.
Wir nehmen die Intervall-Ampel.
Dafür brauchen wir die int-Variable (kann auch short sein)
int time = 30; // jede Sekunde entspricht einem
Dann brauchen wir einen while-Loop. Diesen setzen wir einfach auf true, da wenn wir den Strom kappen, die Ampel sowieso aus ist.
Das wäre ein Basis-Kostrukt z. B.:
// Pseudocode
Ampeln ampelQuer = getQuerAmpeln();
Ampeln ampelGerade = getGeradeAmpeln();
while(true) {
if(time <=0) {
// jetzt umschalten
if(ampelQuer.isRed()==true) {
ampelGerade.switchRed();
ampelQuer.switchGreen(); // animationen in diese Methode verlagern
} else if(ampelGerade.isRed()==true) {
ampelGerade.switchGreen();
ampelQuer.switchRed();
}
} else if(ampelQuer.animationDone() && ampelGerade.animationDone()) time--; // zählen wenn animation von grün-gelb-rot oder andersrum fertig ist
}