From 2e0a52148b8847e0e121369f01ab6c9dd0722869 Mon Sep 17 00:00:00 2001 From: clara <161983703+clarinhalinda0@users.noreply.github.com> Date: Tue, 13 May 2025 22:48:06 +0000 Subject: [PATCH 1/2] Initial commit From 4c8cd2d5eee62b4859dffedfaf8ddcc91d707eb5 Mon Sep 17 00:00:00 2001 From: clara <161983703+clarinhalinda0@users.noreply.github.com> Date: Tue, 13 May 2025 22:54:23 +0000 Subject: [PATCH 2/2] Pending changes exported from your codespace --- lista 2/q1/JogodeDados/Dado.java | 11 +++ lista 2/q1/JogodeDados/Jogador.java | 20 ++++ lista 2/q1/JogodeDados/Jogo.java | 68 ++++++++++++++ lista 2/q1/JogodeDados/Principal.java | 10 ++ lista 2/q1/Pessoa.java | 29 ++++++ lista 2/q1/Principal.java | 61 +++++++++++++ lista 2/q1/questao 2/Aluno.java | 81 +++++++++++++++++ lista 2/q1/questao 2/Main.java | 126 ++++++++++++++++++++++++++ lista 2/q1/questao 3/Magico.java | 70 ++++++++++++++ lista 2/q1/questao 4/Main.java | 20 ++++ lista 2/q1/questao 4/Matriz.java | 70 ++++++++++++++ lista 2/q1/questao 5/ListaNum.java | 106 ++++++++++++++++++++++ 12 files changed, 672 insertions(+) create mode 100644 lista 2/q1/JogodeDados/Dado.java create mode 100644 lista 2/q1/JogodeDados/Jogador.java create mode 100644 lista 2/q1/JogodeDados/Jogo.java create mode 100644 lista 2/q1/JogodeDados/Principal.java create mode 100644 lista 2/q1/Pessoa.java create mode 100644 lista 2/q1/Principal.java create mode 100644 lista 2/q1/questao 2/Aluno.java create mode 100644 lista 2/q1/questao 2/Main.java create mode 100644 lista 2/q1/questao 3/Magico.java create mode 100644 lista 2/q1/questao 4/Main.java create mode 100644 lista 2/q1/questao 4/Matriz.java create mode 100644 lista 2/q1/questao 5/ListaNum.java diff --git a/lista 2/q1/JogodeDados/Dado.java b/lista 2/q1/JogodeDados/Dado.java new file mode 100644 index 000000000000..ee544c8578ef --- /dev/null +++ b/lista 2/q1/JogodeDados/Dado.java @@ -0,0 +1,11 @@ + public class Dado { + private int valorFace; + + public int getValorFace() { + return valorFace; + } + + public void setValorFace() { + valorFace = (int) (1 + Math.random() * 6); + } +} diff --git a/lista 2/q1/JogodeDados/Jogador.java b/lista 2/q1/JogodeDados/Jogador.java new file mode 100644 index 000000000000..54b418787249 --- /dev/null +++ b/lista 2/q1/JogodeDados/Jogador.java @@ -0,0 +1,20 @@ +public class Jogador { + private String nome; + private int valorAposta; + + public String getNome() { + return nome; + } + + public void setNome(String nome) { + this.nome = nome; + } + + public int getValorAposta() { + return valorAposta; + } + + public void setValorAposta(int valorAposta) { + this.valorAposta = valorAposta; + } +} diff --git a/lista 2/q1/JogodeDados/Jogo.java b/lista 2/q1/JogodeDados/Jogo.java new file mode 100644 index 000000000000..b496b52a1fb4 --- /dev/null +++ b/lista 2/q1/JogodeDados/Jogo.java @@ -0,0 +1,68 @@ +/*O sistema consiste de 2 dados e uma quantidade X de jogadores +informada ao iniciar o jogo. Cada jogador escolhe um valor para +apostar, após todos os jogadores informarem sua aposta os dados +são lançados. O sistema apresenta o resultado: Se a soma do valor +das faces dos dados for igual ao valor de uma das apostas, o sistema +informa qual o jogador vencedor, caso nenhum jogador acerte o +valor, é informado que o computador venceu. */ +import java.util.ArrayList; +import java.util.Scanner; + +public class Jogo { + private int resultado; + private Dado dado1; + private Dado dado2; + private ArrayList jogadores = new ArrayList<>(); + + public void inserirJogadores() { + Scanner sc = new Scanner(System.in); + System.out.print("Digite a quantidade de jogadores: "); + int qtdJog = sc.nextInt(); + sc.nextLine(); // consumir a quebra de linha + + for (int i = 0; i < qtdJog; i++) { + Jogador jogador = new Jogador(); + System.out.print("Digite o nome do jogador " + (i + 1) + ": "); + jogador.setNome(sc.nextLine()); + jogadores.add(jogador); + } + } + + public void inserirApostas() { + Scanner sc = new Scanner(System.in); + for (Jogador jogador : jogadores) { + System.out.print("Digite a aposta de " + jogador.getNome() + ": "); + int aposta = sc.nextInt(); + jogador.setValorAposta(aposta); + } + } + + public void lancarDados() { + dado1 = new Dado(); + dado2 = new Dado(); + dado1.setValorFace(); + dado2.setValorFace(); + } + + public void mostrarResultado() { + resultado = dado1.getValorFace() + dado2.getValorFace(); + System.out.println("Resultado dos dados: " + dado1.getValorFace() + " + " + dado2.getValorFace()); + System.out.println("Soma = " + resultado); + } + + public void mostrarVencedor() { + boolean houveVencedor = false; + for (Jogador jogador : jogadores) { + if (jogador.getValorAposta() == resultado) { + System.out.println(jogador.getNome() + " venceu!"); + houveVencedor = true; + break; + } + } + if (!houveVencedor) { + System.out.println("Máquina venceu!"); + } + } +} + + \ No newline at end of file diff --git a/lista 2/q1/JogodeDados/Principal.java b/lista 2/q1/JogodeDados/Principal.java new file mode 100644 index 000000000000..0c0d82e0f646 --- /dev/null +++ b/lista 2/q1/JogodeDados/Principal.java @@ -0,0 +1,10 @@ +public class Principal { + public static void main(String[] args) { + Jogo jogo = new Jogo(); + jogo.inserirJogadores(); + jogo.inserirApostas(); + jogo.lancarDados(); + jogo.mostrarResultado(); + jogo.mostrarVencedor(); + } +} diff --git a/lista 2/q1/Pessoa.java b/lista 2/q1/Pessoa.java new file mode 100644 index 000000000000..7d689261a469 --- /dev/null +++ b/lista 2/q1/Pessoa.java @@ -0,0 +1,29 @@ +/*Criar projeto Agenda com a classe Pessoa. Na classe principal, instanciar um +ArrayList Agenda de Pessoas e realizar o CRUD (cadastro, busca, alteração, +remoção) tal como está implementado o slide arrays_arraylist_Java.pdf. Objetivo +fixar o uso do ArrayList +*/ + +public class Pessoa{ + private String nome; + private String telefone; + + public String getNome() { + return nome; + } + public void setNome(String nome){ + this.nome= nome; + } + public String getTelefone() { + return telefone; + } + public void setTelefone(String telefone) { + this.telefone = telefone; + } + + + +} + + + diff --git a/lista 2/q1/Principal.java b/lista 2/q1/Principal.java new file mode 100644 index 000000000000..b7ed185b3da9 --- /dev/null +++ b/lista 2/q1/Principal.java @@ -0,0 +1,61 @@ +//MAIN: +import java.util.ArrayList; +import java.util.Scanner; + + + +public class Principal { + public static void main(String[] args) { + + + Scanner ler= new Scanner(System.in); + int resp, i; + String nomeBusca; + boolean achou = false; + + ArrayList agenda = new ArrayList(); + + System.out.println("\n op 1: Inserindo contatos"); //cadastrando + do { + Pessoa p = new Pessoa(); + System.out.println("Nome:\n"); + p.setNome(ler.nextLine()); + System.out.println("Telefone:\n"); + p.setTelefone(ler.nextLine()); + agenda.add(p); //insere na array + System.out.println("Deseja inserir outro contato? 1-Sim/2-Não"); + resp=ler.nextInt(); + ler.nextLine(); + } while (resp==1); + System.out.println("op 2: Buscando contato"); + System.out.println("Digite o nome que deseja buscar"); + nomeBusca=ler.nextLine(); + for(i=0; i= 7) { + situacao = "aprovado"; + }else + if (media >= 5) { + situacao = "recuperaçao"; + } else if (media < 3) { + situacao = "reprovado1"; + } + } + + public void alterarNota(int codNota, float valorNota) { + switch (codNota) { + case 1 -> nota1 = valorNota; + case 2 -> nota2 = valorNota; + case 3 -> nota3 = valorNota; + } + calcularMedia(); + } + + public void exibirDados() { + System.out.println("Nome: " + nome); + System.out.println("Matrícula: " + matricula); + System.out.println("Notas: " + nota1 + ", " + nota2 + ", " + nota3); + System.out.println("Média: " + media); + System.out.println("Situação: " + situacao); + } +} + + + diff --git a/lista 2/q1/questao 2/Main.java b/lista 2/q1/questao 2/Main.java new file mode 100644 index 000000000000..203f47478125 --- /dev/null +++ b/lista 2/q1/questao 2/Main.java @@ -0,0 +1,126 @@ +import java.util.ArrayList; +import java.util.Scanner; + +public class Main { + public static void main(String[] args) { + Scanner s = new Scanner(System.in); + ArrayList listaAlunos = new ArrayList<>(); + int op; + + do { + System.out.println("\n----------- Menu -----------"); + System.out.println("1 - Cadastrar aluno"); + System.out.println("2 - Cadastrar notas"); + System.out.println("3 - Calcular médias"); + System.out.println("4 - Informar situações"); + System.out.println("5 - Informar dados de um aluno"); + System.out.println("6 - Alterar nota"); + System.out.println("7 - Sair"); + System.out.print("Escolha uma opção: "); + op = s.nextInt(); + + switch (op) { + case 1: + System.out.print("Quantos alunos deseja cadastrar? "); + int qtd = s.nextInt(); + for (int i = 0; i < qtd; i++) { + Aluno novoAluno = new Aluno(); + System.out.print("Digite a matrícula: "); + int matricula = s.nextInt(); + s.nextLine(); + System.out.print("Digite o nome: "); + String nome = s.nextLine(); + novoAluno.setMatricula(matricula); + novoAluno.setNome(nome); + listaAlunos.add(novoAluno); + } + break; + + case 2: + for (Aluno a : listaAlunos) { + System.out.println("Digite as 3 notas do aluno " + a.getNome()); + float n1 = s.nextFloat(); + float n2 = s.nextFloat(); + float n3 = s.nextFloat(); + a.setNota1(n1); + a.setNota2(n2); + a.setNota3(n3); + a.calcularMedia(); + } + break; + + case 3: + for (Aluno a : listaAlunos) { + System.out.println("Aluno: " + a.getNome() + " - Média: " + a.getMedia()); + } + break; + + case 4: + for (Aluno a : listaAlunos) { + System.out.println("Aluno: " + a.getNome() + " - Situação: " + a.getSituacao()); + } + break; + + case 5: + System.out.print("digite a matrícula do aluno: "); + int mat = s.nextInt(); + boolean encontrado = false; + for (Aluno a : listaAlunos) { + if (a.getMatricula() == mat) { + a.exibirDados(); + encontrado = true; + break; + } + } + if (!encontrado) { + System.out.println("aluno não encontrado"); + } + break; + + case 6: + System.out.print("Digite a matrícula do aluno: "); + int matriculaAlt = s.nextInt(); + boolean alunoEncontrado = false; + + for (Aluno a : listaAlunos) { + if (a.getMatricula() == matriculaAlt) { + alunoEncontrado = true; + + System.out.println (a.getNome()); + System.out.println("1 - Nota 1\n2 - Nota 2\n3 - Nota 3"); + System.out.print("qual nota deseja alterar? "); + int qualNota = s.nextInt(); + + if (qualNota < 1 || qualNota > 3) { + System.out.println("numero de nota invalido!"); + break; + } + + System.out.println("digite o novo valor da nota: "); + float novaNota = s.nextFloat(); + + a.alterarNota(qualNota, novaNota); + System.out.println("\n nota atualizada!"); + System.out.println("nova média: " + a.getMedia()); + System.out.println("nova situação: " + a.getSituacao()); + break; + } + } + + if (!alunoEncontrado) { + System.out.println("aluno não encontrado."); + } + break; + + case 7: + System.out.println("Saindo..."); + break; + + default: + System.out.println("Opção inválida!"); + } + } while (op != 7); + + } +} + diff --git a/lista 2/q1/questao 3/Magico.java b/lista 2/q1/questao 3/Magico.java new file mode 100644 index 000000000000..1a25a306ce08 --- /dev/null +++ b/lista 2/q1/questao 3/Magico.java @@ -0,0 +1,70 @@ +import java.util.Scanner; + +public class Magico { + public static void main(String[] args) { + Scanner s = new Scanner(System.in); + int N = s.nextInt(); + int[][] matriz = new int[N][N]; + + + for (int i = 0; i < N; i++) { + for (int j = 0; j < N; j++) { + matriz[i][j] = s.nextInt(); + } + } + + + int somaMagica = 0; + for (int j = 0; j < N; j++) { + somaMagica += matriz[0][j]; + } + + + for (int i = 1; i < N; i++) { + int somaLinha = 0; + for (int j = 0; j < N; j++) { + somaLinha += matriz[i][j]; + } + if (somaLinha != somaMagica) { + System.out.println(-1); + return; + } + } + + + for (int j = 0; j < N; j++) { + int somaColuna = 0; + for (int i = 0; i < N; i++) { + somaColuna += matriz[i][j]; + } + if (somaColuna != somaMagica) { + System.out.println(-1); + return; + } + } + + + int somaDiagonalPrincipal = 0; + for (int i = 0; i < N; i++) { + somaDiagonalPrincipal += matriz[i][i]; + } + if (somaDiagonalPrincipal != somaMagica) { + System.out.println(-1); + return; + } + + + int somaDiagonalSecundaria = 0; + for (int i = 0; i < N; i++) { + somaDiagonalSecundaria += matriz[i][N - 1 - i]; + } + if (somaDiagonalSecundaria != somaMagica) { + System.out.println(-1); + return; + } + + + System.out.println(somaMagica); + } +} + diff --git a/lista 2/q1/questao 4/Main.java b/lista 2/q1/questao 4/Main.java new file mode 100644 index 000000000000..72bab898dcd0 --- /dev/null +++ b/lista 2/q1/questao 4/Main.java @@ -0,0 +1,20 @@ +import java.util.Scanner; + +public class Main { + public static void main(String[] args) { + Scanner s = new Scanner(System.in); + int ordem = s.nextInt(); + + Matriz m = new Matriz(ordem); + m.preencher(s); + + if (m.ehQuadradoMagico()) { + System.out.println(m.getSomaMagica()); + } else { + System.out.println(-1); + } + + s.close(); + } +} + diff --git a/lista 2/q1/questao 4/Matriz.java b/lista 2/q1/questao 4/Matriz.java new file mode 100644 index 000000000000..44ab0ef56dd7 --- /dev/null +++ b/lista 2/q1/questao 4/Matriz.java @@ -0,0 +1,70 @@ +public class Matriz { + private int[][] dados; + private int ordem; + + public Matriz(int ordem) { + this.ordem = ordem; + this.dados = new int[ordem][ordem]; + } + + public void preencher(Scanner s) { + for (int i = 0; i < ordem; i++) { + for (int j = 0; j < ordem; j++) { + dados[i][j] = s.nextInt(); + } + } + } + + public int somaLinha(int linha) { + int soma = 0; + for (int j = 0; j < ordem; j++) { + soma += dados[linha][j]; + } + return soma; + } + + public int somaColuna(int coluna) { + int soma = 0; + for (int i = 0; i < ordem; i++) { + soma += dados[i][coluna]; + } + return soma; + } + + public int somaDiagonalPrincipal() { + int soma = 0; + for (int i = 0; i < ordem; i++) { + soma += dados[i][i]; + } + return soma; + } + + public int somaDiagonalSecundaria() { + int soma = 0; + for (int i = 0; i < ordem; i++) { + soma += dados[i][ordem - 1 - i]; + } + return soma; + } + + public boolean ehQuadradoMagico() { + int referencia = somaLinha(0); + + for (int i = 1; i < ordem; i++) { + if (somaLinha(i) != referencia) return false; + } + + for (int j = 0; j < ordem; j++) { + if (somaColuna(j) != referencia) return false; + } + + if (somaDiagonalPrincipal() != referencia || somaDiagonalSecundaria() != referencia) + return false; + + return true; + } + + public int getSomaMagica() { + return somaLinha(0); + } +} diff --git a/lista 2/q1/questao 5/ListaNum.java b/lista 2/q1/questao 5/ListaNum.java new file mode 100644 index 000000000000..1c9711c9b124 --- /dev/null +++ b/lista 2/q1/questao 5/ListaNum.java @@ -0,0 +1,106 @@ +/*5. Escreva um código que: +• Crie um ArrayList de inteiros. ArrayList +• Adicione 6 números aleatórios à lista. +• Exiba a soma dos elementos da lista. +• Exiba a média dos elementos da lista. +• Exiba o menor elemento da lista +• Exiba o maior elemento da lista +• Exiba a lista ordenada em ordem crescente +• Exiba a lista ordenada em ordem decrescente +• Peça ao usuário para digitar um número e informe se o número foi +encontrado e, se foi, quantas vezes ele ocorre na lista*/ + +import java.util.ArrayList; +import java.util.Scanner; + + +public class ListaNum { + public static void main(String[] args) { + + ArrayList Lista = new ArrayList<>(); + Scanner scanner = new Scanner(System.in); + Lista.add(1); + Lista.add(3); + Lista.add(2); + Lista.add(4); + Lista.add(1); + Lista.add(6); + System.out.println("lista:"+ Lista); + + + int soma=0; + for(int i=0; i maior){ + maior=Lista.get(i); + } + + } + + System.out.println("maior numero:" + maior); + + +ArrayList decrescente = new ArrayList<>(Lista); + for (int i = 0; i < decrescente.size(); i++) { + for (int j = i + 1; j < decrescente.size(); j++) { + if (decrescente.get(i) < decrescente.get(j)) { + int temp = decrescente.get(i); + decrescente.set(i, decrescente.get(j)); + decrescente.set(j, temp); + } + } + } + System.out.println("Lista em ordem decrescente: " + decrescente); + +ArrayList crescente = new ArrayList<>(Lista); + for (int i = 0; i < crescente.size(); i++) { + for (int j = i + 1; j < crescente.size(); j++) { + if (crescente.get(i) > crescente.get(j)) { + int temp = crescente.get(i); + crescente.set(i, crescente.get(j)); + crescente.set(j, temp); + } + } + } + System.out.println("Lista em ordem crescente: " + crescente); + + + System.out.println("Digite um número para buscar: "); + int numeroBusca = scanner.nextInt(); + int contador = 0; + + for (int i = 0; i < Lista.size(); i++) { + if (Lista.get(i) == numeroBusca) { + contador++; + } + } + if (contador > 0) { + System.out.println("O número " + numeroBusca + " aparece " + contador + " vez(es) na lista!:)"); + } else { + System.out.println("O número " + numeroBusca + " não foi encontrado na lista:("); + } + } + +}