// Pista.java
class Carro {
  boolean encendido;
  int velocidad,
      incremento,
      velocidadMaxima;

  Carro () {
    velocidad = 0;
    incremento = 5;
    encendido = false;
    velocidadMaxima = 200;
  }

  Carro(boolean enc, int vel, int velMax) {
    encendido = enc;
    velocidad = vel;
    incremento = 1;
    velocidadMaxima = velMax;
  }
  void setVelocidadMaxima(int velMax)
  {
    velocidadMaxima = velMax;
  }

  void encender()
  {
    encendido = true;
  }
  void apagar()
  {
    if (velocidad == 0)
    {
      encendido = false;
    }
  }
  void acelerar()
  {
    velocidad = velocidad + incremento;
    if (velocidad > velocidadMaxima)
    {
      velocidad = velocidadMaxima;
    }
  }
  void acelerar(int ace)
  {
    velocidad = velocidad + ace;
    if (velocidad > velocidadMaxima)
    {
      velocidad = velocidadMaxima;
    }
  }
  public String toString() {
    String s;
    s = "Encendido = " + encendido;
    s = s + "\n" + "Velocidad = " + velocidad;
    return s;
  }
}

class Semaforo{
  private String colorActual;

  void setColor(String c)
  {
    colorActual = c;
  }

  void setToNextColor()
  {
    if (colorActual == "verde")
    {
      colorActual = "amarillo";
    }
    else if (colorActual == "amarillo")
    {
      colorActual = "rojo";
    }
    else
    {
      colorActual = "verde";
    }
  }
  public String toString(){
    String s;
    s = colorActual;
    return s;
  }
}
public class Pista {
  public static void main(String[] args) {
    Semaforo cuatroCalles = new Semaforo();
    cuatroCalles.setColor("rojo");
    System.out.println("Semaforo = " + cuatroCalles);
    cuatroCalles.setToNextColor();
    System.out.println("Semaforo = " + cuatroCalles);
    cuatroCalles.setToNextColor();
    System.out.println("Semaforo = " + cuatroCalles);

    Carro carroDePiraguas = new Carro();
    Carro carroDePinchos = new Carro(true,15,50);
    System.out.println("Status carroDePiraguas: " + carroDePiraguas);
    System.out.println("Status carroDePinchos: " + carroDePinchos);
    carroDePiraguas.encender();
    carroDePiraguas.acelerar();
    carroDePinchos.acelerar(300);
    carroDePinchos.apagar();
    System.out.println("Status carroDePiraguas: " + carroDePiraguas);
    System.out.println("Status carroDePinchos: " + carroDePinchos);
  }
} ///:~
