stifler_89 Posted March 17, 2012 at 08:18 PM Report #444381 Posted March 17, 2012 at 08:18 PM 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.
askpt Posted March 17, 2012 at 08:29 PM Report #444382 Posted March 17, 2012 at 08:29 PM Não podes pensar assim porque a bola vai recuar em vez de andar a saltitar. Tens de ver que vai ter de andar assim: ++, +-, --, -+ e só estás a considerar ++, --
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now