From c0b1d78e34099d5e246c3db16a1957f329ff8a74 Mon Sep 17 00:00:00 2001 From: Caio Espindola Date: Fri, 12 Jun 2026 10:44:26 -0300 Subject: [PATCH 1/6] Update Bolsista.java --- Bolsista.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Bolsista.java b/Bolsista.java index 26f5048..80b4af4 100644 --- a/Bolsista.java +++ b/Bolsista.java @@ -3,8 +3,8 @@ public class Bolsista{ private String projeto; private String orientador; - public Bolsista(String nome, int idade, String localNascimento, String curso, String matricula, int semestre, int ano, boolean bolsista, String projeto, String orientador){ - this.aluno = new Aluno(nome, idade, localNascimento, curso, matricula, semestre, ano, bolsista); + public Bolsista(Aluno aluno, String projeto, String orientador){ + this.aluno = aluno; this.projeto = projeto; this.orientador = orientador; } @@ -72,4 +72,4 @@ public class Bolsista{ public void setOrientador(String orientador){ this.orientador = orientador; } -} \ No newline at end of file +} From 342447e9a7b1aaa4bda5b62eb7d361dabd550ec2 Mon Sep 17 00:00:00 2001 From: Caio Espindola Date: Fri, 12 Jun 2026 10:44:38 -0300 Subject: [PATCH 2/6] Update Dados.java --- Dados.java | 49 ++++++++++++++++++++++++++++++++++++++++--------- 1 file changed, 40 insertions(+), 9 deletions(-) diff --git a/Dados.java b/Dados.java index 15cccc7..bf51a5c 100644 --- a/Dados.java +++ b/Dados.java @@ -1,10 +1,14 @@ public class Dados { private Aluno[] alunos; private String chamada; + private Acompanhamento[] acompanhamentos; + private Bolsista[] bolsistas; public Dados(){ alunos = new Aluno[]{}; chamada = ""; + acompanhamentos = new Acompanhamento[]{}; + bolsistas = new Bolsista[]{}; } public void appendAluno(Aluno aluno){ @@ -18,6 +22,25 @@ public class Dados { novoArray[size] = aluno; this.alunos = novoArray; + } + + public void appendAcompanhamento(Acompanhamento acomp){ + int size = this.acompanhamentos.length; + + Acompanhamento[] novoArray = new Acompanhamento[size + 1]; + + for (int i = 0; i < size; i++){ + novoArray[i] = this.acompanhamentos[i]; + } + + novoArray[size] = acomp; + this.acompanhamentos = novoArray; + } + + public void appendBolsista(){ + + + } private int findAlunoIndex(String nome){ @@ -28,6 +51,10 @@ public class Dados { return -1; } + public Aluno findAluno(String nome){ + return alunos[findAlunoIndex(nome)]; + } + public void listAlunos(){ for (int i = 0; i < alunos.length; i++){ System.out.println(alunos[i].getNome()); @@ -62,24 +89,28 @@ public class Dados { } public int totalVowels(){ - char[] vowels = new char[]{'a', 'e', 'i', 'o', 'u'}; + int sum = 0; - for (int i = 0; i < vowels.length; i++){ - for (int k = 0; k < alunos.length; k++){ + for (int k = 0; k < alunos.length; k++){ + String nome = alunos[k].getNome(); - String nome = alunos[k].getNome(); - - for (int j = 0; j < nome.length(); j++){ - if (nome.charAt(j) == vowels[i]){ - sum++;} - } + for (int j = 0; j < nome.length(); j++){ + if (isVowel(nome.charAt(j))){ + sum++;} } } + return sum; } + private boolean isVowel(char a){ + + return (a == 'a') || (a == 'e') || (a == 'i') || (a == 'o') || (a == 'u'); + + } + public void makeChamada(){ this.chamada = ""; for (int i = 0; i < alunos.length; i++){ From 30a86b398e85eb2a44727b2dc48660d8e8c2c6e8 Mon Sep 17 00:00:00 2001 From: Caio Espindola Date: Fri, 12 Jun 2026 10:44:46 -0300 Subject: [PATCH 3/6] Update Gerenciador.java --- Gerenciador.java | 43 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) diff --git a/Gerenciador.java b/Gerenciador.java index 627c1b7..66ad806 100644 --- a/Gerenciador.java +++ b/Gerenciador.java @@ -1,3 +1,5 @@ +// TODO: validação registrarAcompanhamentos() + import java.util.Scanner; public class Gerenciador { @@ -39,9 +41,50 @@ public class Gerenciador { public void cadastrarBolsista() { + System.out.println("Insira o nome do aluno a quem você deseja cadastrar uma bolsa:"); + Aluno aluno = this.dados.findAluno(input.nextLine); + + System.out.println("Insira o nome do projeto:"); + String projeto = input.nextLine(); + + System.out.println("Insira o nome do orientador:"); + String orientador = input.nextLine(); + + Bolsista bolsista = new Bolsista(aluno, projeto, orientador); + aluno.setBolsista(true); + this.dados.appendBolsista(bolsista); + } public void registrarAcompanhamento() { + System.out.println("Insira o nome do Aluno que você deseja registrar o acompanhamento:"); + String nome = input.nextLine(); + Aluno aluno = this.dados.findAluno(); + + Acompanhamento acomp = new Acompanhamento(aluno, 0, 0, 0, 0, 0); + + System.out.println("Insira a quantidade de atividades entregues:"); + int entregues = input.nextInt(); + acomp.setAtividadesEntregues(entregues); + + System.out.println("Insira a quantidade de atividades entregues nas quais foi declarado o uso de IA:"); + int ia = input.nextInt(); + acomp.setAtividadesIA(ia); + + System.out.println("Insira a quantidade de atividades entregues que o aluno soube explicar:"); + int explicadas = input.nextInt(); + acomp.setAtividadesExplicadas(explicadas); + + System.out.println("Insira a quantidade de atividades entregues que foram feitas sem ajuda:"); + int semajuda = input.nextInt(); + acomp.setAtividadesSemAjuda(semajuda); + + System.out.println("Insira a quanntidade de atividades entregues que utilizarão estruturas não estudadas:"); + int naoestudadas = input.nextInt(); + acomp.setAtividadesNaoEstudadas(); + + this.dados.appendAcompanhamento(acomp); + } public void listarAlunos() { From 51286b5d8d1daea9c10964badcd6353044765747 Mon Sep 17 00:00:00 2001 From: caioperschespindola Date: Fri, 12 Jun 2026 16:22:44 -0300 Subject: [PATCH 4/6] =?UTF-8?q?M=C3=A9todos=20do=20Gerenciador=20prontos?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Acompanhamento.java | 1 + Dados.java | 55 +++++++++++++++++++++++++++++++++++++++++---- Gerenciador.java | 23 ++++++++++++++----- Menu.java | 3 +-- 4 files changed, 71 insertions(+), 11 deletions(-) diff --git a/Acompanhamento.java b/Acompanhamento.java index 9d36787..78eaa36 100644 --- a/Acompanhamento.java +++ b/Acompanhamento.java @@ -28,6 +28,7 @@ public class Acompanhamento { } public double getRiscoPedagogico() { + this.calcularRisco(); return riscoPedagogico; } diff --git a/Dados.java b/Dados.java index bf51a5c..5efc3d9 100644 --- a/Dados.java +++ b/Dados.java @@ -37,7 +37,7 @@ public class Dados { this.acompanhamentos = novoArray; } - public void appendBolsista(){ + public void appendBolsista(Bolsista bolsista){ @@ -55,6 +55,16 @@ public class Dados { return alunos[findAlunoIndex(nome)]; } + public Acompanhamento findAcompanhamento(String nome){ + for (int i = 0; i < acompanhamentos.length; i++){ + if (acompanhamentos[i].getAluno().getNome().equals(nome)) { + return acompanhamentos[i]; + } + } + + return null; + } + public void listAlunos(){ for (int i = 0; i < alunos.length; i++){ System.out.println(alunos[i].getNome()); @@ -68,6 +78,32 @@ public class Dados { } } + public void riskReport(){ + + String relatorio = ""; + + for (int i = 0; i < acompanhamentos.length; i++){ + relatorio = relatorio.concat(acompanhamentos[i].getAluno().getNome() + ": Risco "); + relatorio = relatorio.concat(acompanhamentos[i].getRiscoLabel() + "\n"); + } + + System.out.println(relatorio); + + } + + public void riskReportHigh(){ + + String relatorio = ""; + + for (int i = 0; i < acompanhamentos.length; i++){ + if (acompanhamentos[i].getRiscoLabel().equals("ALTO")){ + relatorio = relatorio.concat(acompanhamentos[i].getAluno().getNome() + ": Risco ALTO\n"); + } + } + + System.out.println(relatorio); + } + public void maiorNome(){ int k = 0; for (int i = 1; i < alunos.length; i++){ @@ -114,13 +150,24 @@ public class Dados { public void makeChamada(){ this.chamada = ""; for (int i = 0; i < alunos.length; i++){ - this.chamada.concat(alunos[i].getMatricula() + " / "); - this.chamada.concat(alunos[i].getNome() + " / "); - this.chamada.concat(alunos[i].getCurso() + "/n"); + this.chamada = this.chamada.concat(alunos[i].getMatricula() + " / "); + this.chamada = this.chamada.concat(alunos[i].getNome() + " / "); + this.chamada = this.chamada.concat(alunos[i].getCurso() + "\n"); } } public void printChamada(){ System.out.println(chamada); } + + public double coursePercent(String curso){ + double num = 0; + + for (int i = 0; i < alunos.length; i++){ + if (alunos[i].getCurso().equals(curso)) + num++; + } + + return (num / alunos.length) * 100; + } } diff --git a/Gerenciador.java b/Gerenciador.java index 66ad806..5fcf83b 100644 --- a/Gerenciador.java +++ b/Gerenciador.java @@ -1,4 +1,4 @@ -// TODO: validação registrarAcompanhamentos() +// TODO: validação nos metodos com entrada import java.util.Scanner; @@ -42,7 +42,7 @@ public class Gerenciador { public void cadastrarBolsista() { System.out.println("Insira o nome do aluno a quem você deseja cadastrar uma bolsa:"); - Aluno aluno = this.dados.findAluno(input.nextLine); + Aluno aluno = this.dados.findAluno(input.nextLine()); System.out.println("Insira o nome do projeto:"); String projeto = input.nextLine(); @@ -59,7 +59,7 @@ public class Gerenciador { public void registrarAcompanhamento() { System.out.println("Insira o nome do Aluno que você deseja registrar o acompanhamento:"); String nome = input.nextLine(); - Aluno aluno = this.dados.findAluno(); + Aluno aluno = this.dados.findAluno(nome); Acompanhamento acomp = new Acompanhamento(aluno, 0, 0, 0, 0, 0); @@ -81,7 +81,7 @@ public class Gerenciador { System.out.println("Insira a quanntidade de atividades entregues que utilizarão estruturas não estudadas:"); int naoestudadas = input.nextInt(); - acomp.setAtividadesNaoEstudadas(); + acomp.setAtividadesNaoEstudadas(naoestudadas); this.dados.appendAcompanhamento(acomp); @@ -105,6 +105,11 @@ public class Gerenciador { public void percentualAlunos() { + System.out.println("Insira um curso:"); + String curso = input.nextLine(); + + System.out.print("O percentual de alunos matriculados nesse curso é de: " + this.dados.coursePercent(curso) + "%\n"); + } public void mediaIdadeAlunos() { @@ -120,14 +125,22 @@ public class Gerenciador { } public void calcularRisco() { + + System.out.println("Insira o nome de um aluno:"); + Acompanhamento acomp = this.dados.findAcompanhamento(input.nextLine()); + + System.out.println("O risco pedagógico deste aluno é " + acomp.getRiscoLabel()); + } public void relatorioRisco() { + this.dados.riskReport(); + } public void altoRisco() { - + this.dados.riskReportHigh(); } public void inovacao() { diff --git a/Menu.java b/Menu.java index 0aa5299..1e5652f 100644 --- a/Menu.java +++ b/Menu.java @@ -1,5 +1,4 @@ -// TODO: implementar os métodos na gerenciadore Gerenciador -// TODO: implementar os métodos na gerenciadore Dados +// TODO: atualizar README.md import java.util.Scanner; From 4be954a333dbe4a63bbba2e451940e42e430c8a0 Mon Sep 17 00:00:00 2001 From: caioperschespindola Date: Sat, 13 Jun 2026 10:24:07 -0300 Subject: [PATCH 5/6] cadastrarBolsista() --- Gerenciador.java | 21 +++++++++++++++++---- Menu.java | 2 +- 2 files changed, 18 insertions(+), 5 deletions(-) diff --git a/Gerenciador.java b/Gerenciador.java index 5fcf83b..028f42c 100644 --- a/Gerenciador.java +++ b/Gerenciador.java @@ -35,14 +35,27 @@ public class Gerenciador { System.out.println("Insira o ano do aluno:"); ano = input.nextInt(); - Aluno aluno = new Aluno(nome, idade, local, curso, matricula, semestre, ano, bolsista); // Adicionar opção de bolsista + Aluno aluno = new Aluno(nome, idade, local, curso, matricula, semestre, ano, false); this.dados.appendAluno(aluno); + + System.out.println("O aluno é bolsista? (s/n)"); + String resposta = input.nextLine().toLowerCase(); + if (resposta.equals("s")){ + cadastrarBolsista(true, aluno); + } + } - public void cadastrarBolsista() { + public void cadastrarBolsista(boolean resposta, Aluno alunoparametro) { - System.out.println("Insira o nome do aluno a quem você deseja cadastrar uma bolsa:"); - Aluno aluno = this.dados.findAluno(input.nextLine()); + Aluno aluno; + + if (resposta){ + aluno = alunoparametro; + } else { + System.out.println("Insira o nome do aluno a quem você deseja cadastrar uma bolsa:"); + aluno = this.dados.findAluno(input.nextLine()); + } System.out.println("Insira o nome do projeto:"); String projeto = input.nextLine(); diff --git a/Menu.java b/Menu.java index 1e5652f..ff02b86 100644 --- a/Menu.java +++ b/Menu.java @@ -42,7 +42,7 @@ public class Menu { gerenciador.cadastrarAluno(); // completar com o nome correto das gerenciadores break; case 2: - gerenciador.cadastrarBolsista(); + gerenciador.cadastrarBolsista(false, null); break; case 3: gerenciador.registrarAcompanhamento(); From e7aaf88337e7439d104c1e531f44c2ea9b82d195 Mon Sep 17 00:00:00 2001 From: caioperschespindola Date: Mon, 15 Jun 2026 14:10:38 -0300 Subject: [PATCH 6/6] Programa funcionando --- Acompanhamento.java | 3 +-- Aluno.java | 2 +- Bolsista.java | 4 ++-- Dados.java | 6 ++++-- Gerenciador.java | 10 +++++++++- Menu.java | 2 +- Pessoa.java | 3 +-- 7 files changed, 19 insertions(+), 11 deletions(-) diff --git a/Acompanhamento.java b/Acompanhamento.java index 78eaa36..0b564db 100644 --- a/Acompanhamento.java +++ b/Acompanhamento.java @@ -82,5 +82,4 @@ public class Acompanhamento { } this.atividadesNaoEstudadas = atividadesNaoEstudadas; } - -} +} \ No newline at end of file diff --git a/Aluno.java b/Aluno.java index 0a1908f..6ad68be 100644 --- a/Aluno.java +++ b/Aluno.java @@ -66,4 +66,4 @@ public class Aluno { public void setBolsista(boolean bolsista){ this.bolsista = bolsista; } -} +} \ No newline at end of file diff --git a/Bolsista.java b/Bolsista.java index 80b4af4..1651917 100644 --- a/Bolsista.java +++ b/Bolsista.java @@ -1,4 +1,4 @@ -public class Bolsista{ +public class Bolsista { private Aluno aluno; private String projeto; private String orientador; @@ -72,4 +72,4 @@ public class Bolsista{ public void setOrientador(String orientador){ this.orientador = orientador; } -} +} \ No newline at end of file diff --git a/Dados.java b/Dados.java index 5efc3d9..886f4c7 100644 --- a/Dados.java +++ b/Dados.java @@ -1,3 +1,5 @@ +// TODO: acentos no isVowel() + public class Dados { private Aluno[] alunos; private String chamada; @@ -143,7 +145,7 @@ public class Dados { private boolean isVowel(char a){ - return (a == 'a') || (a == 'e') || (a == 'i') || (a == 'o') || (a == 'u'); + return (a == 'a') || (a == 'e') || (a == 'i') || (a == 'o') || (a == 'u') || (a == 'A') || (a == 'E') || (a == 'I') || (a == 'O') || (a == 'U'); } @@ -170,4 +172,4 @@ public class Dados { return (num / alunos.length) * 100; } -} +} \ No newline at end of file diff --git a/Gerenciador.java b/Gerenciador.java index 028f42c..33ed06c 100644 --- a/Gerenciador.java +++ b/Gerenciador.java @@ -28,12 +28,15 @@ public class Gerenciador { System.out.println("Insira a idade do aluno:"); idade = input.nextInt(); + input.nextLine(); //buffer clear System.out.println("Insira o semestre do aluno:"); semestre = input.nextInt(); + input.nextLine(); //buffer clear System.out.println("Insira o ano do aluno:"); ano = input.nextInt(); + input.nextLine(); //buffer clear Aluno aluno = new Aluno(nome, idade, local, curso, matricula, semestre, ano, false); this.dados.appendAluno(aluno); @@ -78,22 +81,27 @@ public class Gerenciador { System.out.println("Insira a quantidade de atividades entregues:"); int entregues = input.nextInt(); + input.nextLine(); //buffer clear acomp.setAtividadesEntregues(entregues); System.out.println("Insira a quantidade de atividades entregues nas quais foi declarado o uso de IA:"); int ia = input.nextInt(); + input.nextLine(); //buffer clear acomp.setAtividadesIA(ia); System.out.println("Insira a quantidade de atividades entregues que o aluno soube explicar:"); int explicadas = input.nextInt(); + input.nextLine(); //buffer clear acomp.setAtividadesExplicadas(explicadas); System.out.println("Insira a quantidade de atividades entregues que foram feitas sem ajuda:"); int semajuda = input.nextInt(); + input.nextLine(); //buffer clear acomp.setAtividadesSemAjuda(semajuda); System.out.println("Insira a quanntidade de atividades entregues que utilizarão estruturas não estudadas:"); int naoestudadas = input.nextInt(); + input.nextLine(); //buffer clear acomp.setAtividadesNaoEstudadas(naoestudadas); this.dados.appendAcompanhamento(acomp); @@ -159,4 +167,4 @@ public class Gerenciador { public void inovacao() { } -} +} \ No newline at end of file diff --git a/Menu.java b/Menu.java index ff02b86..e00af35 100644 --- a/Menu.java +++ b/Menu.java @@ -91,4 +91,4 @@ public class Menu { System.out.println("Opção inválida"); } } -} +} \ No newline at end of file diff --git a/Pessoa.java b/Pessoa.java index ba2a97e..50a1ccd 100644 --- a/Pessoa.java +++ b/Pessoa.java @@ -1,4 +1,4 @@ -public class Pessoa{ +public class Pessoa { private String nome; private int idade; private String localNascimento; @@ -20,5 +20,4 @@ public class Pessoa{ public String getLocal(){ return this.localNascimento; } - } \ No newline at end of file