Gente alguém por favor me ajuda a resolver esse código

1. Objetivo

O objetivo deste trabalho é a implementação de um sistema para
gerenciar os atendimentos aos alunos pelos professores. Nele os alunos vão
desenvolver suas competências no uso das tecnologias de desenvolvimento de
sistemas aprendidas em sala de aula, utilizando orientação a objetos.

2. Descrição do sistema

O Colégio nos encomendou um sistema para facilitar o controle de dúvidas
dos alunos nas disciplinas cursadas. Esse sistema deve cadastrar solicitações
de atendimento dos alunos com os professores. O sistema deve guardar os
seguintes dados de alunos e professores:
Professor: matricula, nome e disciplina.
Aluno: matrícula, nome, endereço e turma.
O sistema deve permitir o cadastro, listagem e remoção de alunos e
professores. Deve ser possível buscar um professor pelo seu nome. E também
deverá ser possível buscar todos os professores de uma determinada disciplina.
O sistema também deve permitir a listagem das solicitações de
acompanhamento feitas. Para cadastrar uma solicitação de acompanhamento
deve ser informado o aluno que solicitou, o professor solicitado e uma descrição
da dúvida que o aluno deseja tirar com o professor.

O que você já fez?

1 curtida

Ainda não fiz nada, estou com muita dúvida em tudo, e estou desesperado, se você souber como se resolve por favor me ajude :smile:

Sei resolver sim. Na realidade não é difícil.

Mas qual ajuda especificamente você quer?

1 curtida

Na permissão dos cadastros, listagem e remoção de alunos e professores, também em uma possível busca de um professor pelo seu nome, na busca de todos os professores de uma determinada disciplina, a permissão das listagens das solicitações de acompanhamentos feitas. Para cadastrar uma solicitação de acompanhamento
deve ser informado o aluno que solicitou, o professor solicitado e uma descrição
da dúvida que o aluno deseja tirar com o professor.

Essas são as que mais eu estou perdido :wink:

Crie uma classe para professor, uma pra aluno, uma para as solicitações e outra principal, que vai interagir com essas três.

Na principal, você constrói um menu com println; com uma opção para cada operação (cadastrar, remover etc.).

Lembre de criar os setters, para configurar as informações das classes, e os getters para exibir os dados das classes.

Para fazer uma lista de alunos e professores, você pode fazer um List[Aluno] listaAlunos, e com um foreach você mostra todos da lista.

Para as buscas, um foreach; e para cada elemento E da lista, você testa e.getNome().equals(nomeDigitado) e se o if retornar true, você encontrou. Se não, continue o laço de buscas.

Moleza.

Faz aí e posta o resultado.

1 curtida

package docentes;

public class Alunos extends Principal {

private String turmas;
private String enderecos;

public String getTurmas() {
	return turmas;
}
public void setTurmas(String turmas) {
	this.turmas = turmas;
}
public String getEndereços() {
	return enderecos;
}
public void setEndereços(String ndereços) {
	this.enderecos = ndereços;
}

}

package docentes;

public class Professor extends Principal {

private String disciplinas;

public String getDisciplinas() {
	return disciplinas;
}

public void setDisciplinas(String disciplinas) {
	this.disciplinas = disciplinas;
}

}

package docentes ;

public class Principal {

String nome;
private String matriculas;

public String getNome() {
	return nome;
}
public void setNome(String nome) {
	this.nome = nome;
}
public String getMatriculas() {
	return matriculas;
}
public void setMatriculas(String matriculas) {
	this.matriculas = matriculas;
}

}

package docentes;

import java.util.List;
import java.util.Scanner;
import java.util.Vector;

public class Solicitacoes {

public static void main(String[] args) {
	
	Scanner ler = new Scanner (System.in);
	
	int escolher = 0;
	int cadastra;
	
	
	List<Professor> listadeprofessores = new Vector<Professor>();
	List<Alunos> listadealunos = new Vector<Alunos>();
	
	while (escolher != 7){
		System.out.println("\nOlá, seja bem vindo!");
		System.out.println("1 - Cadastre");
		System.out.println("2 - Liste");
		System.out.println("3 - Remove");
		System.out.println("4 - Busca professores pelo nome deles");
		System.out.println("5 - Mostra professores pela disciplena deles");
		System.out.println("6 - Solicita o acompanhamento");
		System.out.println("7 - Sair");
		System.out.println("Escolha uma das opções acima por gentileza: ");
		escolher = ler.nextInt();
	
	if (escolher == 1) {
		System.out.println("\n1 - Aluno");
		System.out.println("2 - Professor");
		System.out.println("Escolha uma das duas opções");
		cadastra = ler.nextInt();
		
	
	if (cadastra == 1) {
		
		Alunos a = new Alunos();
		
		String NomedoAluno;
		String MatriculadoAluno;
		String TurmadoAluno;
		String EnderecodoAluno;
		
		ler.nextLine();
		System.out.println("\nDigite o nome: ");
		NomedoAluno = ler.nextLine();
		
		System.out.println("Digite a Matrícula: ");
		MatriculadoAluno = ler.nextLine();
		
		ler.nextLine();
		System.out.println("Digite a Turma: ");
		TurmadoAluno = ler.nextLine();
		
		System.out.println("Digite o Endereço: ");
		EnderecodoAluno = ler.nextLine();
		
		a.setNome(NomedoAluno);
		a.setMatriculas(MatriculadoAluno);
		a.setTurmas(TurmadoAluno);
		a.setEndereços(EnderecodoAluno);
		
		listadealunos.add(a);
		
		System.out.println("Os dados foram cadastrados com sucesso! Tenha um ótimo dia :)");
		
			}
	else if(cadastra == 2) {
		
		Professor p = new Professor();
		
		String NomedoProfessor;
		String MatriculadoProfessor;
		String DisciplinadoProfessor;
	
		ler.nextLine();
		System.out.println("\nDigite um Nome: ");
		NomedoProfessor = ler.nextLine();
		
		System.out.println("Digite uma Matrícula: ");
		MatriculadoProfessor = ler.nextLine();
		ler.nextLine();
		
		System.out.println("Digite uma Disciplina: ");
		DisciplinadoProfessor = ler.nextLine();
		
		p.setNome(NomedoProfessor);
		p.setMatriculas(MatriculadoProfessor);
		p.setDisciplinas(DisciplinadoProfessor);
			
		listadeprofessores.add(p);
	
		System.out.println("Os dados foram cadastrados com sucesso! Tenha um ótimo dia :)");
	
			}
	else if(cadastra == 2) {
		
		int lista;
		
		System.out.println("\n1 - Alunos");
		System.out.println("2 - Professores");
		System.out.println("Qual a lista que você quer ver?");
		lista = ler.nextInt();
		
	if(lista == 1) {
			for(int i = 0; i < listadealunos.size() ;i++) {
				
			Alunos aluno = new Alunos();
			aluno = listadealunos.get(i);
			
			System.out.println("Aqui está a listagem dos dados cadastrados dos Alunos");
			System.out.println("\nNome: " + listadealunos.get(i).getNome());
			System.out.println("Matrícula: " + listadealunos.get(i).getMatriculas());
			System.out.println("Turma: " + listadealunos.get(i).getTurmas());
			System.out.println("Endereço: " + listadealunos.get(i).getEndereços());
					
					}
			
				}
		
	else if(lista == 2) {
		
		for(int i = 0; i < listadeprofessores.size(); i++) {
			
			Professor professores =  new Professor();
			professores = listadeprofessores.get(i);
		
			System.out.println("Aqui está a listagem dos dados cadastrados dos Professores");
			System.out.println("\nNome: " + listadeprofessores.get(i).getNome());
			System.out.println("Disciplina: " + listadeprofessores.get(i).getDisciplinas());
			System.out.println("Matrícula: " + listadeprofessores.get(i).getMatriculas());
		
		}
		
		
		
		
				}
	
			}
		}
	
	}
	
}

}

Por enquanto meus códigos estão assim, lembrando que eu estou programando pelo eclipse

Use CTRL + SHIFT + F para formatar seu código.

Está tudo funcionando? Tem mais alguma dúvida?

Ok, muito obrigado pela dica, não está tudo funcionando não, só o cadastramento pra falar a verdade está funcionando, eu ainda não sei como faço a remoção, a listagem, a busca de professores pelo nome, a amostra dos professores pela disciplina, e a solicitação de acompanhamento, teria como me ajudar por favor?

Para fazer a pesquisa você pode usar um foreach, como o próprio @Fefo80 escreveu acima. Vou te dar um exemplo…

Pesquisando um número dentro de um Array de inteiros comum:

int arrayComum[] = new int[5//tamanho qualquer]
//suponha que o array já esteja completamente preenchido por números
int pesquisado = 2; //número que vai ser pesquisado
for (int a : arrayComum){
    if (a == pesquisado)
        System.out.println("número " + pesquisado + " encontrado com sucesso!");
}

Você não vai entender esse codigo se não souber o que o foreach faz, então vou dar uma breve explicação:
Um foreach leva dois argumentos, separados por : (dois pontos). O primeiro argumento é uma váriavel que deve ser do mesmo tipo que o seu Array, O segundo argumento é o seu próprio Array, sem necessidade de usar os [] (colchetes).

Basicamente, a váriavel do primeiro argumento vai assumir o valor de cada elemento do seu Array, e o loop só vai parar quando o Array acabar.

Você também pode usar esse sistema de pesquisa para deletar Professores/Alunos com base no nome, usando o método remove() da classe List.
Só que eu acho que nesse caso você deveria usar um laço for comum, isso porquê o método remove() recebe como parâmetro o índice do elemento no Array e não o elemento em sí. Mas a lógica é a mesma!

1 curtida