Interface list

2 respostas
E

Bom dia pessoal,
estou com um trabalho para fazer…

criar representação para as 7 notas musicais, DO, RÉ, MI, FA, SOL, LA e SI. Deve ser possível modificar cada uma das notas para obter um som sustenido ou bemol e cada nota deve possuir um tempo de duração especificado pelo compositor. O ato de tocar uma nota musical deve ser representado pela impressão na saída padrão do seu valor,seguido pelo modificador, caso exista, seguido pelo tempo de duração.

Gostaria de saber se estou indo pelo caminho certo.
OBRIGADO

public class Nota {
private String notas;

“gets e sets”

public Nota() {
}

public String toString () {

StringBuffer resp=new StringBuffer();

resp.append(“nota:);

resp.append(notas);

return resp.toString();

}

}

import java.util.ArrayList;
import java.util.List;

public class Musica {

private List  notas;

private String modificador;

private double tempo;

gets e sets

public String toString () {

StringBuffer resp=new StringBuffer();

resp.append(modificador +"\n");

resp.append(tempo);

return resp.toString();

}

}

2 Respostas

antoniopopete

Então cadê o atributo tempo da classe nota?

Não entendi o que seria modifcar para ter um som sustenido ou bemol.
Não entendi o que seria também

O ato de tocar uma nota musical deve ser representado pela impressão na saída padrão do seu valor,seguido pelo modificador, caso exista, seguido pelo tempo de duração.

Deveria ter um método tocar em Música que seria uma sequencia de notas armazenadas em uma lista.

O titulode seu topico não tem muito a ver com o que você quer saber,mas espero ter ajudado.

D

Que tal criar uma classe nota que possua todas as características de uma nota?!

Você não descreveu todas as características que uma nota musical deve ter? Então. Coloque isto dentro de uma classe.

public class Nota {
     private String nota;
     private boolean bemol;
     private boolean sustenido;
     private int duracao; //em milessegundos

     //gets e sets

     public void tocar() {
          System.out.print("Nota: " + nota);
          if (bemol && !sustenido) {
               System.out.print(" b ");
          } else if (!bemol && sustenido) {
               System.out.print(" # ");
          }
          System.out.println(duracao);
          Thread.sleep(duracao); //Vai deixar a aplicação parada pela duração da nota! =]
     }
}

Tenta gerar uma classe música mais intuitiva agora. De modo que o cara possa incluír notas e tocar toda a música depois! =)

Criado 20 de setembro de 2007
Ultima resposta 20 de set. de 2007
Respostas 2
Participantes 3