Baixe o app para aproveitar ainda mais
Prévia do material em texto
Senac EAD Produção Textual Individual 1 Senac São Paulo – Todos os Direitos Reservados DISCIPLINA ALGORITMOS E PROGRAMAÇÃO II PROFESSOR(ES) AUTOR(ES) ALEXANDRE DOS SANTOS MIGNON Produção Textual Individual Tema Trabalhando com Vetores Texto base (texto, gráficos, tabelas, imagens) Um vetor é uma estrutura de dados que armazena uma sequência de elementos, todos do mesmo tipo, em posições consecutivas da memória RAM do computador. Essa estrutura permite acesso aleatório at ravés de um índice numérico, isto é, qualquer elemento do vetor pode ser alcançado diretamente, sem passar pelos elementos anteriores. Enunciado Escreva um programa em Java que leia uma sequência N de números inteiros (negativos, positivos e o zero) para um vetor. No início do programa é solicitado ao usuário (pelo teclado) qual é a quantidade de elementos que serão lidos para o vetor e depois disso os números são lidos para o vetor. Em seguida você deve implementar para cada um dos itens abaixo uma função: a) Calcule e retorna o valor da maior diferença entre dois elementos distintos no vetor. b) Verifica se o vetor está em ordem crescente, e retorna true caso esteja e false caso contrário. Orientações Gerais Observações do professor: As funções devem ser chamadas na função main após a leitura do vetor na ordem que aparecem acima, e para cada chamada você deve imprimir o resultado da função na tela. Orientação de Entrega: Esta atividade deverá ser entregue no item Produção Textual Individual do menu principal. Prazo de Entrega: Consultar o calendário de atividades Tamanho máximo do texto: 30 linhas ou 1 página. Uso de fontes de terceiros (citações) deve ser referenciada conforme Guia de Normalização do Senac: http://www3.sp.senac.br/hotsites/campus_santoamaro/cd/arquivos/biblioteca/guia_norma tizacao.pdf http://www3.sp.senac.br/hotsites/campus_santoamaro/cd/arquivos/biblioteca/guia_normatizacao.pdf http://www3.sp.senac.br/hotsites/campus_santoamaro/cd/arquivos/biblioteca/guia_normatizacao.pdf File: /home/jhonnatan/Área de Traba…hileETratamentoDeExcecoes.java Page 1 of 3 import java.util.InputMismatchException; import java.util.Scanner; class PTIComWhileETratamentoDeExcecoes { public static void main(String[] args) { Scanner leia = new Scanner(System.in); boolean continuarLoop = true; int tamanhoDoVetor = 0; do { try { // Perguntando ao usuário qual deverá ser o tamanho do vetor. System.out.print("Quantos elementos serão lidos para o vetor? "); // Guardando o número digitado pelo usuário dentro da variável tamanhoDoVetor. tamanhoDoVetor = leia.nextInt(); continuarLoop = false; } catch (InputMismatchException inputMismatchException) { System.out.println(""); // Pular linha. System.err.println("Exceção: " + inputMismatchException.toString()); leia.nextLine(); // Descarta entrada para o usuário tentar novamente. System.out.println(""); // Pular linha. System.out.println("Digite apenas números inteiros. Tente de novo."); System.out.println(""); // Pular linha. } // Fim do catch } while (continuarLoop == true); // Criação do vetor com o tamanho informado pelo usuário. int[] vetor = new int[tamanhoDoVetor]; // Criando um contador. int contador = 0; while (contador < vetor.length) { try { System.out.print("Digite o próximo número do vetor: "); vetor[contador] = leia.nextInt(); contador = contador + 1; File: /home/jhonnatan/Área de Traba…hileETratamentoDeExcecoes.java Page 2 of 3 } catch (InputMismatchException inputMismatchException) { System.out.println(""); // Pular linha. System.err.println("Exceção: " + inputMismatchException.toString()); leia.nextLine(); // Descarta entrada para o usuário tentar novamente. System.out.println(""); // Pular linha. System.out.println("Digite apenas números inteiros. Tente de novo."); System.out.println(""); // Pular linha. } // Fim do catch } // Letra A da PTI. System.out.println("\nA maior diferença entre dois elementos distintos do vetor é: " + maiorDiferencaEntreDoisElementos(vetor) ); // Letra B da PTI. System.out.println("\nOs valores do vetor estão em ordem crescente: " + ordemCrescente(vetor)); leia.close(); } // Letra A da PTI. public static int maiorDiferencaEntreDoisElementos(int[] vetor) { int contador = 1; int maiorElemento = vetor[0]; int menorElemento = vetor[0]; while (contador < vetor.length) { if (vetor[contador] > maiorElemento ) { maiorElemento = vetor[contador]; } if (vetor[contador] < menorElemento) { menorElemento = vetor[contador]; } contador = contador + 1; } int maiorDiferenca = maiorElemento - menorElemento; return maiorDiferenca; File: /home/jhonnatan/Área de Traba…hileETratamentoDeExcecoes.java Page 3 of 3 } // Letra B da PTI. public static boolean ordemCrescente(int[] vetor) { int contadorN = 0; int contadorNMaisUm = 1; while ( (contadorN < vetor.length) && (contadorNMaisUm < vetor.length) ) { if (vetor[contadorN] > vetor[contadorNMaisUm]) { return false; } contadorN = contadorN + 1; contadorNMaisUm = contadorNMaisUm + 1; } return true; } } 1 - Enunciado.pdf 2 - Critérios de Avaliação.pdf Screenshot 2022-03-06 at 04-43-48 Detalhe do critério de avaliação – SP_GRAD_686274_2201_ .png 3 - PTIComWhileETratamentoDeExcecoes.pdf
Compartilhar