Estou desenvolvendo uma atividade escolar, mas não estou conseguindo realizar o que está sendo pedido. Fazem 8 dias que estou tentando encontrar a melhor forma de realizar as relações pedidas, pesquisei no material que tenho disponível. Analisei códigos com funções semelhantes, mas não tive sucesso. Agradeço desde já a quem puder me ajudar, e se possível me mostrar um exemplo de como consigo realizar…
- Implemente, em java, um sistema para o controle acadêmico simplificado. O
sistema deve informar:
- a) Quais disciplinas um professor está ministrando;
- b) Qual o horário de um professor;
- c) Quais os alunos de uma dada disciplina;
- d) Quais as disciplinas de um aluno;
- e) Qual o horário de um aluno;
- f) Qual o número de alunos de uma disciplina.
Sugestões pré-implementação (atividade de análise):
- Identifique as entidades do sistema
- Identifique as características de cada uma das entidades
- Elabore um diagrama para definir os relacionamentos entre as entidades
- Analise quem é o expert para cada situação listada acima e acrescente as
responsabilidades ao diagrama
// Classe que testa Controle Academico Simplificado
public class TesteControleAcademico {
public static void main(String[] args) {
Aluno aluno1 = new Aluno("Pedro", 123456, "Computação");
Disciplina disciplina1 = new Disciplina("11:00-13:00", "Metodos Avançados em Programação", 101, aluno1);
ControleAcademico.realizaMatricula(aluno1, disciplina1);
ControleAcademico.printInformacoes();
}
}
//Classe Controle Academico
@SuppressWarnings("serial")
public class ControleAcademico extends Exception {
static int numAlunos = 100;
static int numDisciplinas = 50;
private static Aluno [] alunos = new Aluno [numAlunos];
private static Disciplina [] disciplinas = new Disciplina [numDisciplinas];
static int countAluno = 0;
static int countDisciplina = 0;
public static void realizaMatricula(Aluno aluno, Disciplina disciplina) {
alunos[countAluno]= aluno;
disciplinas[countDisciplina] = disciplina;
countAluno++;
countDisciplina++;
}
public static String printInformacoes() {
String str = "";
int count = 0;
while (numAlunos != alunos.length) {
str += "Disciplina: " + disciplinas[count].getAluno() + "\n";
count++;
}
if (alunos.length == 0) {
str += "Nenhum aluno matriculado!\n";
}
return str;
}
}
//Classe Aluno
public class Aluno {
private String nome;
private int matAluno;
private Disciplina curso;
public Aluno() { }
public Aluno(String nome, int matAluno, Disciplina disciplina) {
this.setNome(nome);
this.setMatAluno(matAluno);
this.setDisciplina(disciplina);
}
public String getNome() {
return nome;
}
public void setNome(String nome) {
this.nome = nome;
}
public int getMatAluno() {
return matAluno;
}
public void setMatAluno(int matricula) {
this.matAluno = matricula;
}
public Disciplina getDisciplina() {
return disciplina;
}
public void setDisciplina(Disciplina disciplina) {
this.disciplina = disciplina;
}
}
//Classe Professor
public class Professor {
private String nome;
private String departamento;
private int matProfessor;
private Disciplina disciplina;
public Professor() { }
public Professor(String nome, String departamento, int matProfessor, Disciplina disciplina) {
this.setNome(nome);
this.setDepartamento(departamento);
this.setMatProfessor(matProfessor);
this.setDisciplina(disciplina);
}
public String getNome() {
return nome;
}
public void setNome(String nome) {
this.nome = nome;
}
public String getDepartamento() {
return departamento;
}
public void setDepartamento(String departamento) {
this.departamento = departamento;
}
public int getMatProfessor() {
return matProfessor;
}
public void setMatProfessor(int matProfessor) {
this.matProfessor = matProfessor;
}
public Disciplina getDisciplina() {
return disciplina;
}
public void setDisciplina(Disciplina disciplina) {
this.disciplina = disciplina;
}
}
//Classe disciplina
public class Disciplina {
private String horario;
private String nome;
private int sala;
private Aluno[] aluno;
public Disciplina() { }
public Disciplina(String horario, String nome, int sala, Aluno aluno) {
this.setHorario(horario);
this.setNome(nome);
this.setSala(sala);
this.setAluno(aluno);
}
public String getHorario() {
return horario;
}
public void setHorario(String horario) {
this.horario = horario;
}
public String getNome() {
return nome;
}
public void setNome(String nome) {
this.nome = nome;
}
public int getSala() {
return sala;
}
public void setSala(int sala) {
this.sala = sala;
}
public Aluno getAluno() {
return aluno;
}
public void setAluno(Aluno aluno) {
this.aluno = aluno;
}
}