Skip to content

Instantly share code, notes, and snippets.

@BenBals
Last active April 3, 2016 16:36
Show Gist options
  • Save BenBals/552e72534645df2cdedf01ed2208af13 to your computer and use it in GitHub Desktop.
Save BenBals/552e72534645df2cdedf01ed2208af13 to your computer and use it in GitHub Desktop.
Eine Ampel/Fußgängerampel für Informatik
public class AMPEL
{
int positionX;
int positionY;
String ampelPhase;
LAMPE lampeOben;
LAMPE lampeMitte;
LAMPE lampeUnten;
AMPEL() {
positionX = 1;
positionY = 1;
lampeOben = new LAMPE();
lampeMitte = new LAMPE();
lampeUnten = new LAMPE();
lampeOben.PositionSetzen(1, 1);
lampeMitte.PositionSetzen(1, 2);
lampeUnten.PositionSetzen(1, 3);
AmpelPhaseSetzen("rot");
}
void PositionSetzen(int neuX, int neuY) {
positionX = neuX;
positionY = neuY;
lampeOben.PositionSetzen(neuX, neuY);
lampeMitte.PositionSetzen(neuX, neuY + 1);
lampeUnten.PositionSetzen(neuX, neuY + 2);
}
void AmpelPhaseSetzen(String neuePhase) {
ampelPhase = neuePhase;
if (neuePhase == "gruen") {
lampeOben.FarbeSetzen("schwarz");
lampeMitte.FarbeSetzen("schwarz");
lampeUnten.FarbeSetzen("gruen");
} else if (neuePhase == "gelb") {
lampeOben.FarbeSetzen("schwarz");
lampeMitte.FarbeSetzen("gelb");
lampeUnten.FarbeSetzen("schwarz");
} else if (neuePhase == "rotgelb") {
lampeOben.FarbeSetzen("rot");
lampeMitte.FarbeSetzen("gelb");
lampeUnten.FarbeSetzen("schwarz");
} else {
ampelPhase = "rot";
lampeOben.FarbeSetzen("rot");
lampeMitte.FarbeSetzen("schwarz");
lampeUnten.FarbeSetzen("schwarz");
}
}
void WeiterSchwimmen() {
switch (ampelPhase) {
case "rot":
AmpelPhaseSetzen("rotgelb");
break;
case "rotgelb":
AmpelPhaseSetzen("gruen");
break;
case "gruen":
AmpelPhaseSetzen("gelb");
break;
default:
AmpelPhaseSetzen("rot");
}
}
}
public class FUSSGAENGERAMPEL
{
int positionX;
int positionY;
String ampelPhase;
LAMPE lampeOben;
LAMPE lampeUnten;
FUSSGAENGERAMPEL() {
positionX = 1;
positionY = 1;
lampeOben = new LAMPE();
lampeUnten = new LAMPE();
PositionSetzen(1, 1);
AmpelPhaseSetzen("rot");
}
void PositionSetzen(int neuX, int neuY) {
positionX = neuX;
positionY = neuY;
lampeOben.PositionSetzen(neuX, neuY);
lampeUnten.PositionSetzen(neuX, neuY + 1);
}
void AmpelPhaseSetzen(String neuePhase) {
ampelPhase = neuePhase;
if (neuePhase == "gruen") {
lampeOben.FarbeSetzen("schwarz");
lampeUnten.FarbeSetzen("gruen");
} else {
ampelPhase = "rot";
lampeOben.FarbeSetzen("rot");
lampeUnten.FarbeSetzen("schwarz");
}
}
void WeiterSchwimmen() {
if (ampelPhase == "rot") {
AmpelPhaseSetzen("gruen");
} else {
AmpelPhaseSetzen("rot");
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment