Alguém consegue fazer?

10 respostas
só-o-enunciado
E
 ArrayList alunos (Uma lista para armazenar todos os alunos que fazem

determinada disciplina).

 ArrayList notas (Uma lista para armazenar as notas dos alunos na disciplina. Essa lista deverá ter sempre o mesmo tamanho da lista alunos e o valor de

notas.get(i) corresponde ao valor da nota do aluno na posição alunos.get(i)).

 ArrayList frequencias (Uma lista para armazenar as frequências

dos alunos na disciplina. Essa lista deverá ter sempre o mesmo tamanho da lista alunos

e, portanto, o valor de frequencia.get(i) corresponde à frequencia do aluno na

posição alunos.get(i)).

 Disciplina(String nome, int periodo, int numAulasSemana,

int numSemanas) (Um construtor que permita criar uma disciplina com nome, período e número de aulas especificados. O valor do inteiro numSemanas refere-se ao número de semanas que acontecerão as aulas e, portanto,

numTotalAulas = numAulasSemana*numSemanas

Nesse construtor deve-se construir o objeto alunos, o objeto notas, o objeto frequencias

e armazenar no atributo professor o valor null, indicando que a disciplina ainda não

tem professor).

 Disciplina(String nome, int periodo, int numAulasSemana,

int numSemanas, Professor professor) (Um construtor que permita criar

uma disciplina com nome, período, número de aulas e o professor responsável. Nesse construtor deve-se construir o objeto alunos, notas e frequencia. O valor do atributo

numTotalAulas também deve ser configurado adequadamente, conforme descrito na

descrição do construtor anterior).

 matricularAluno(Aluno aluno):boolean (Um método que permita matricular um aluno na disciplina. Ao matricular aluno deve-se registrar uma posição em notas

e em frequencias iguais a zero, isto é, adicionar em notas e em frequencias o

valor zero. O método retorna true se o aluno foi matriculado e false, caso contrário.

Não poderão ser matriculados alunos com o mesmo valor de ra).

2

 desmatricularAluno(int posAluno):boolean (Um método que permite desmatricular um aluno. Este método deve receber como parâmetro a posição do aluno na lista

(posAluno) a ser removido. Consulte na documentação da classe ArrayList um método que permita remover objetos do ArrayList. Você também deverá remover a nota

do aluno na lista de notas e sua frequência na lista de frequência, caso contrário, ambas

ficarão inconsistente. O método retorna true se o aluno foi desmatriculado e false,

caso contrário).

 setProfessor(Professor professor):void (Um método que aloca à disciplina a um professor.).

 removerProfessor():void (Um método que remove um professor da disciplina.

Uma disciplina não possui professor se o atributo professor é null).

 getNumeroAlunos():int (Um método que permite retornar o número de alunos

matriculados na disciplina).

 addNota(int posAluno, double nota):boolean (Um método que permite

configurar para o aluno na posição posAluno a sua nota (nota) na disciplina. Retorne

verdadeiro ou falso se isso for possível. O valor para nota deve estar no intervalo [0,10]).

 addFrequencia(int posAluno, int frequenciaTotal):boolean (Um

método que permite configurar para o aluno na posição posAluno da lista, a sua frequência total na disciplina. Retorne verdadeiro ou falso se isso for possível. O valor de frequenciaTotal

deve estar no intervalo [0,numTotalAulas]).

 estaAprovado(int posAluno):boolean (Um método que permite verificar se

o aluno na posição posAluno da lista está ou não aprovado na disciplina. O método

retorna true se aprovado e false, caso contrário. Um aluno aprovado possui nota maior

OU igual a 6 e frequência maior ou igual a 75%).

 exibirReprovados():void (Um método que permite exibir todos os alunos aprovados na disciplina. Se não houverem alunos reprovados, então deve-se imprimir Não

 alunos reprovados.. Se não houver alunos matriculados na disciplina imprimir Disciplina não possui alunos matriculados).

 exibirAprovados():void (Um método que permite exibir todos os alunos aprovados. Se não houverem alunos aprovados, então deve-se imprimir Não  alunos

aprovados.. Se não houver alunos matriculados na disciplina imprimir Disciplina

não possui alunos matriculados).

 calcularMedia():double (Um método que retorna a média das notas de todos os

alunos matriculados na disciplina. Esse valor é a média total da turma).

 exibirMaiorNota():void (Mostra as informações do aluno com a maior nota na

disciplina).

 exibirMenorNota():void (Mostra as informações do aluno com a menor nota na

disciplina).

 getQuantidadeReprovados():int (Método que retorna um inteiro que corresponde à quantidade de alunos reprovados.).

 getQuantidadeAprovados():int (Método que retorna um inteiro que corresponde à quantidade de alunos aprovados.).

3

 exibirProfessor():void (Método para mostrar as informações do professor responsável pela disciplina. Se a disciplina não houver um professor então deve-se exibir

Disciplina não possui professor).

 getAproveitamentoAluno(int posAluno):double (Método que retorna o

aproveitamento de um aluno na posição posAluno da lista. O aproveitamento do aluno

é determinado a partir da sua frequência total. Um aluno que nunca faltou tem aproveitamento de 100% e um aluno que faltou metade do número total de aulas tem aproveitamento

de 50%. Nesses casos o método retorna os valores 100 e 50, respectivamente).

 getNotaAluno(int posAluno):double (Método que retorna a nota de um aluno

na posição posAluno da lista.).

 exibirAlunosAcimaMedia():void (Método para exibir todos os alunos acima

da média total da turma. Por exemplo, se a média for 7.2, então todos os alunos com nota

maior OU igual a 7.2 devem ser exibidos. Se não houver alunos matriculados na disciplina

imprimir Disciplina não possui alunos matriculados).

 exibirAlunosAbaixoMedia():void (Método para exibir todos os alunos abaixo

da média total da turma. Se não houver alunos matriculados na disciplina imprimir Disciplina

não possui alunos matriculados).

 exibirAlunoNotaAproveitamento():void (Método para exibir apenas o nome

dos alunos, suas respectivas notas e aproveitamento na disciplina. Se não houver alunos matriculados na disciplina imprimir Disciplina não possui alunos matriculados).

 desmatricularAlunos():void (Um método que permite desmatricular todos os

alunos matriculados na disciplina).

 exibirOrdenadosPorNota():void (Um método para exibir apenas o nome dos

alunos e suas respectivas notas. A exibição deverá ser feita de forma decrescente as nota, isto

é, o aluno com a maior nota deverá ser o primeiro a ser exibido, seguido do aluno com a segunda maior nota e assim até o aluno com a menor nota. Se não houver alunos matriculados

na disciplina imprimir Disciplina não possui alunos matriculados).

 exibirDisciplina():void (Um método para exibir todas as informações da disciplina. Deverá ser exibido as informações do professor e dos alunos, a nota e a frequência

de cada aluno na disciplina. Imprimir a média total da turma, a quantidade de alunos a

quantidade de alunos reprovados e aprovados. Quando não houver alunos matriculados

imprimir apenas Disciplina não possui alunos matriculados).

No pacote ifsuldeminas.main deve-se implementar a classe Main e fazer as seguintes

simulações:

1 Crie um objeto que represente uma disciplina do primeiro período. Configure o nome, o

número de aulas na semana e o período da disciplina;

2 Crie 10 objetos Aluno do primeiro período;

3 Matricule todos os 10 objetos Aluno no objeto disciplina do passo 1;

4 Configure para cada objeto aluno uma nota e uma frequencia total;

5 Crie um objeto para representar um professor;

4

6 Aloque o professor ao objeto disciplina criado no passo 1.

7 Crie um objeto da classe Scanner que permita fazer leitura de dados do teclado;

8 Armazene em uma variável opcao um valor inteiro fornecido pelo teclado;

9 Enquanto opcao for diferente de zero. Permita que:

 opcao == 1: Imprimir informações da disciplina;

 opcao == 2: Apresentar número de alunos na disciplina, número de reprovados e

número de aprovados;

 opcao == 3: Imprimir aprovados;

 opcao == 4: Imprimir reprovados;

 opcao == 5: Imprimir aluno com a maior e o aluno com menor nota;

 opcao == 6: Imprimir o professor responsável;

 opcao == 7: Imprimir média total da turma e listar todos os alunos acima da média;

 opcao == 8: Imprimir média total da turma e listar todos os alunos abaixo da

média;

 opcao == 9: Imprimir nome dos alunos e suas respectivas notas e aproveitamento;

 opcao == 10: Imprimir alunos ordenados por nota.

 opcao == 11: Matricular aluno. Deve-se ler o nome, registro acadêmico e curso

do aluno usando o objeto Scanner. Como a disciplina é uma disciplina do primeiro

período, assume-se que o aluno é do primeiro período e, portanto, não  necessidades

de ler seu período. Em seguida deve-se criar o objeto que represente o aluno e então

matriculá-lo na disciplina; depois deve-se ler a nota e a frequência total do aluno na

disciplina, esses valores deverão ser corretamente registrados para o aluno. Solicite ao

usuário um valor válido a ser informado. Por exemplo: o registro acadêmico deve estar no intervalo [0, 9999], a nota deve estar no intervalo [0,10] e frequencia total não

pode ser maior que o número total de aulas da disciplina. Apresente para o usuário se

o aluno foi ou não matriculado com sucesso. Perceba que se o registro acadêmico fornecido pelo usuário for igual ao de um aluno  matriculado, então deverá ser exibido

para o usuário que o aluno não foi matriculado, pois seu RA é semelhante ao de um

aluno matriculado na disciplina.

10 Quando opcao for igual a zero, desmatricular todos os alunos, remover o professor da

disciplina e finalizar a execução do programa.

10 Respostas

L

Eu consigo.

Em qual parte vc está com dificuldades?

E

Rapaz, onde começa 1- crie um objeto que represente a disciplina até o 10.

L

Posta ai o que tu jah fez, e onde vc está com dificuldades.

E

public class Main{

public static void main(String[]args) {

Aluno alu1= new Aluno("José", 1240, "Informatica");
Professor professor= new professor( "Erinaldo", 1995);
Disciplina disciplina=new disciplina("Matemática" 3, 30, 5,professor);

}

L

E o que vc não está conseguindo fazer?

E

do 1 ao 10

E
1 Crie um objeto que represente uma disciplina do primeiro período. Configure o nome, o

número de aulas na semana e o período da disciplina;

2 Crie 10 objetos Aluno do primeiro período;

3 Matricule todos os 10 objetos Aluno no objeto disciplina do passo 1;

4 Configure para cada objeto aluno uma nota e uma frequencia total;

5 Crie um objeto para representar um professor;

4

6 Aloque o professor ao objeto disciplina criado no passo 1.

7 Crie um objeto da classe Scanner que permita fazer leitura de dados do teclado;

8 Armazene em uma variável opcao um valor inteiro fornecido pelo teclado;

9 Enquanto opcao for diferente de zero. Permita que:

 opcao == 1: Imprimir informações da disciplina;

 opcao == 2: Apresentar número de alunos na disciplina, número de reprovados e

número de aprovados;

 opcao == 3: Imprimir aprovados;

 opcao == 4: Imprimir reprovados;

 opcao == 5: Imprimir aluno com a maior e o aluno com menor nota;

 opcao == 6: Imprimir o professor responsável;

 opcao == 7: Imprimir média total da turma e listar todos os alunos acima da média;

 opcao == 8: Imprimir média total da turma e listar todos os alunos abaixo da

média;

 opcao == 9: Imprimir nome dos alunos e suas respectivas notas e aproveitamento;

 opcao == 10: Imprimir alunos ordenados por nota.

 opcao == 11: Matricular aluno. Deve-se ler o nome, registro acadêmico e curso

do aluno usando o objeto Scanner. Como a disciplina é uma disciplina do primeiro

período, assume-se que o aluno é do primeiro período e, portanto, não  necessidades

de ler seu período. Em seguida deve-se criar o objeto que represente o aluno e então

matriculá-lo na disciplina; depois deve-se ler a nota e a frequência total do aluno na

disciplina, esses valores deverão ser corretamente registrados para o aluno. Solicite ao

usuário um valor válido a ser informado. Por exemplo: o registro acadêmico deve estar no intervalo [0, 9999], a nota deve estar no intervalo [0,10] e frequencia total não

pode ser maior que o número total de aulas da disciplina. Apresente para o usuário se

o aluno foi ou não matriculado com sucesso. Perceba que se o registro acadêmico fornecido pelo usuário for igual ao de um aluno  matriculado, então deverá ser exibido

para o usuário que o aluno não foi matriculado, pois seu RA é semelhante ao de um

aluno matriculado na disciplina.

10 Quando opcao for igual a zero, desmatricular todos os alunos, remover o professor da

disciplina e finalizar a execução do programa.

[/quote]
F

Eu também consigo. :stuck_out_tongue:

@Erinaldo_Nascimento por gentileza, me esclarece o que você espera desse fórum, sobre seu 1 ao 10?

Z

Eu também :sunglasses:

Mano, sinceramente, você espera o código pronto? Não fazemos isso aqui.
Se você olha pra esse enunciado e não consegue pensar em nada, absolutamente nada, então eu acho que vc deveria deixar isso de lado e ir treinar sua lógica com algo mais simples, muito mais simples.

F

*lógica de programação (que é a base para etapas mais avançadas em programação), só pra deixar claro :sweat_smile:

Se quiser, podemos indicar uns vídeos.

Criado 30 de agosto de 2021
Ultima resposta 31 de ago. de 2021
Respostas 10
Participantes 4