Jump to content

Bola Saltitona


stifler_89
 Share

Recommended Posts

Boas

Sou novo por aqui tenho um problema na resolução de um exercicio em blueJ

Ambiente de Desenvolvimento BlueJ – Parte 6

1. Abra o Projeto Shapes (no diretório BlueJ/examples). (done)

2. Considere a classe Circle. Adicione um método que permita mover um círculo na diagonal “public void slowMoveDiagonal(int distance)”. (done)

3. Construa um método, “public void saltitar(int distance)”, que mostre o movimento de uma bola no interior de uma caixa retangular ressaltando nas paredes, exibindo um comportamento semelhante ao aqui mostrado – https://moodle.isep.ipp.pt/file.php/233225/ExerciciosParaCasa/BlueJ/BolaSaltitante.jar.

4. [Opcional] Altere o método construído acrescentando a possibilidade de indicar a velocidade: “public void saltitar(int distance, int velocidade)”.

A alinea 3 é que estou com problemas

 public void saltitar (int distance)
    {
        int delta;

        if(distance < 0) 
        {
            delta = -1;
            distance = -distance;
        }
        else 
        {
            delta = 1;
        }

        for(int i = 0; i < distance; i++)
        {
            xPosition += delta;
            yPosition += delta;
            draw();
            if ((xPosition == 270)||(yPosition == 270))
            {
                
                distance = -distance;
                xPosition -= delta;
                yPosition -= delta;
                draw();
            }
            
    }

Fiz isto mas está errado ... pela lógica ao atingir o tamanho da janela a bola tera que fazer um movimento negativo.

Se alguém puder ajudar agradecia.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.