Você está aqui: Java ::: Desafios e Lista de Exercícios Resolvidos ::: Arrays e Matrix (Vetores e Matrizes) |
Faça um programa Java que leia um vetor com N números inteiros (máximo de 1000 números). Calcule a média aritmética de todos os números do vetor e - Lista de Exercícios Resolvidos de JavaQuantidade de visualizações: 499 vezes |
Pergunta/Tarefa: Faça um programa Java que leia um vetor com N números inteiros (máximo de 1000 números). Calcule a média aritmética de todos os números do vetor e, em seguida, verifique qual das duas metades desse vetor possui maior quantidade de números acima da média. Observações: a) Para calcular a média, utilize todos os números do vetor. b) Se o vetor possuir quantidade impares de elementos, desconsiderar o elemento do meio. Por exemplo, para um vetor de 9 elementos deve-se ignorar o quinto número durante a verificação de números maiores que a média. Entrada: O programa deve ler um número inteiro N maior que 5. N indica a quantidade de números que o vetor deve armazenar. Em seguida, leia e armazene os N números em um vetor de inteiros. Saída: O programa deve apresentar em uma linha a média (com duas casas decimais), a quantidade de números maiores que a média na primeira metade do vetor, a quantidade de números maiores que a média na segunda metade do vetor, e um dos seguintes textos "PRIMEIRA METADE", "EMPATE", "SEGUNDA METADE". Caso o número lido (N) não atenda as especificações da entrada, o programa deve apresentar a mensagem: "QUANTIDADE DE ELEMENTOS INVÁLIDA!". Seu programa Java deverá exibir uma saída parecida com: Informe a quantidade de números: 7 Informe o 1.o número: 8 Informe o 2.o número: 1 Informe o 3.o número: 2 Informe o 4.o número: 3 Informe o 5.o número: 6 Informe o 6.o número: 9 Informe o 7.o número: 7 A média dos números é: 5,14 Maiores que a média primeira metade: 1 Maiores que a média segunda metade: 3 SEGUNDA METADE Veja a resolução comentada deste exercício usando Java: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- package estudos; import java.util.Scanner; public class Estudos { public static void main(String[] args) { // variáveis usadas para a resolução do problema int numeros[], quant, soma = 0; int primeira_metade = 0, segunda_metade = 0; int inicio, fim; double media; // para ler a entrada do usuário Scanner entrada = new Scanner(System.in); // vamos ler a quantidade de números System.out.print("Informe a quantidade de números: "); quant = Integer.parseInt(entrada.nextLine()); // o número é válido? if ((quant > 5) && quant <= 1000){ // agora vamos fazer a leitura dos números numeros = new int[quant]; for(int i = 0; i < quant; i++){ System.out.print("Informe o " + (i + 1) + ".o número: "); numeros[i] = Integer.parseInt(entrada.nextLine()); } // vamos calcular a média dos elementos do vetor for(int i = 0; i < quant; i++){ soma = soma + numeros[i]; } media = soma / (double)quant; System.out.printf("\nA média dos números é: %.2f\n", media); // agora vamos encontrar os números maiores que a média na // primeira metade do vetor inicio = 0; fim = (int)(quant / 2.0); for(int i = inicio; i < fim; i++){ if(numeros[i] > media){ primeira_metade++; } } // agora vamos encontrar os números maiores que a média na // segunda metade do vetor System.out.println(); inicio = (int)Math.ceil(quant / 2.0); fim = quant; for(int i = inicio; i < fim; i++){ if(numeros[i] > media){ segunda_metade++; } } System.out.println("Maiores que a média primeira metade: " + primeira_metade); System.out.println("Maiores que a média segunda metade: " + segunda_metade); // agora mostramos a mensagem final if(primeira_metade > segunda_metade){ System.out.println("PRIMEIRA METADE"); } else if(primeira_metade < segunda_metade){ System.out.println("SEGUNDA METADE"); } else{ System.out.println("EMPATE"); } } else{ System.out.println("QUANTIDADE DE ELEMENTOS INVÁLIDA!"); } } } |
Link para compartilhar na Internet ou com seus amigos: |
Java ::: Dicas & Truques ::: Strings e Caracteres |
Como quebrar (separar) uma string em palavras usando um objeto da classe StringTokenizer do JavaQuantidade de visualizações: 32 vezes |
Nesta dica mostrarei como é possível usar um objeto da classe StringTokenizer da linguagem Java para quebrar uma frase em palavras, ou seja, separar as palavras de uma frase e acessá-las individualmente. Note como usei o método hasMoreTokens() dentro de um laço while para verificar se ainda há partes da string a ser acessada. Caso o retorno seja verdadeiro, uma chamada à nextToken() nos retorna a palavra atual, a qual exibimos na tela. Veja o código completo para o exemplo: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- package arquivodecodigos; import java.util.*; public class Estudos{ public static void main(String args[]){ String frase = "Gosto de programar em Java"; System.out.println("A frase é: " + frase); StringTokenizer parser = new StringTokenizer(frase); System.out.println("\nSuas partes individuais:"); while(parser.hasMoreTokens()){ System.out.println(parser.nextToken()); } } } Ao executar este código Java nós teremos o seguinte resultado: A frase é: Gosto de programar em Java Suas partes individuais: Gosto de programar em Java |
Java ::: Dicas & Truques ::: Arquivos e Diretórios |
Como usar o método createTempFile() da classe File da linguagem Java para criar um arquivo temporário, escrever nele e excluí-lo ao fechar o programa - RevisadoQuantidade de visualizações: 15093 vezes |
Nesta dica mostrarei como é possível usar o método createTempFile() da classe File, do pacote java.io, para criar um arquivo temporário em Java. No exemplo vamos criar o arquivo, vamos escrever nele e depois excluí-lo ao fecharmos o programa. Veja o código completo: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- package arquivodecodigos; import java.io.*; public class Estudos{ public static void main(String[] args){ // local de criação do arquivo String local = "C:\\estudos_java"; // vamos tentar criar o arquivo então try{ File arquivo = File.createTempFile("teste", ".txt", new File(local)); // vamos excluir o arquivo ao fechar a aplicação arquivo.deleteOnExit(); // escreve no arquivo temporário BufferedWriter out = new BufferedWriter(new FileWriter(arquivo)); out.write("Arquivo de Códigos"); out.close(); // trecho de código para fazer com o programa espere // uma tecla antes de fechar // Este procedimento é para que vc veja que o arquivo // temporario realmente foi criado no diretório indicado InputStreamReader ent = new InputStreamReader(System.in); BufferedReader cons = new BufferedReader(ent); System.out.println("Verifique se o arquivo foi criado com sucesso."); System.out.print("Digite alguma coisa e pressione Enter para sair: "); String tecla = cons.readLine(); } catch(IOException e){ System.out.println("Houve um erro: " + e.getMessage()); } } } Ao executarmos este código nós teremos o seguinte resultado: Verifique se o arquivo foi criado com sucesso. Digite alguma coisa e pressione Enter para sair: b Antes de digitar alguma coisa e pressionar Enter, olhe no diretório "C:\\estudos_java" (o seu vai ser diferente, é claro) e você verá um arquivo com um nome parecido com: teste2606085315507863387.txt Quando você pressionar Enter, o programa terminará e o arquivo será excluído automaticamente. Esta dica foi revisada e testada no Java 8. |
Java ::: Estruturas de Dados ::: Árvore Binária e Árvore Binária de Busca |
Estruturas de Dados em Java - Como obter o nó com menor valor em uma árvore binária de busca em JavaQuantidade de visualizações: 3145 vezes |
Em exemplos dessa seção nós vimos como criar árvores binárias e árvores binárias de busca em Java e como pesquisar ou fazer a sua travessia, visitando cada um dos nós. Nesta dica mostrarei como obter o nó com o menor valor em uma árvore binária. O truque aqui é descer o lado esquerdo da árvore até o último nó. Veja:---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- // método que permite retornar o menor nó de uma árvore // binária de busca public No retornarMenorElemento(){ // chama a versão recursiva do método return retornarMenorElemento(raiz); } public No retornarMenorElemento(No no){ if((no == null) || (no.getEsquerdo() == null)){ return no; // ponto de parada } else{ // vamos continuar descendo do lado esquerdo return retornarMenorElemento(no.getEsquerdo()); } } Este método faz parte da classe ArvoreBinariaBusca.java. Veja agora como chamá-lo a partir da classe principal, ou seja, a classe de teste: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- package arvore_binaria; import java.util.Scanner; public class ArvoreBinariaTeste { public static void main(String[] args) { Scanner entrada = new Scanner(System.in); // vamos criar um novo objeto da classe ArvoreBinariaBusca ArvoreBinariaBusca arvore = new ArvoreBinariaBusca(); // vamos inserir 5 valores na árvore for(int i = 0; i < 5; i++){ System.out.print("Informe um valor inteiro: "); int valor = Integer.parseInt(entrada.nextLine()); // vamos inserir o nó e verificar o sucesso da operação if(!arvore.inserir(valor)){ System.out.println("Não foi possível inserir." + " Um elemento já contém este valor."); } } // vamos o menor elemento na árvore binária de busca System.out.println("\nO menor nó é: " + arvore.retornarMenorElemento().getValor()); System.out.println("\n"); } } Ao executar este código teremos o seguinte resultado: Informe um valor inteiro: 5 Informe um valor inteiro: 12 Informe um valor inteiro: 87 Informe um valor inteiro: 1 Informe um valor inteiro: 3 O menor nó é: 1 |
Vamos testar seus conhecimentos em Ética e Legislação Profissional |
Noções de licitação pública A prefeitura de um município do interior do Estado de Santa Catarina precisa realizar uma licitação para a aquisição de bens de informática considerados comuns, como impressoras, cartuchos, laptops, estabilizadores, etc. A modalidade de licitação mais indicada é: A) convite. B) leilão. C) concurso. D) pregão. E) concorrência. Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em Fenômeno de Transportes e Hidráulica |
Raio Hidráulico Qual é o raio hidráulico em um canal de seção retangular com 2,00 m de largura por 1,20 m de altura? Considere que este canal está preenchido com 1/3 de água da sua capacidade. A) 0,10 m B) 0,29 m C) 0,19 m D) 2,29 m E) 0,39 m Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em Engenharia Civil - Construção Civil |
Formas: Confecção e colocação Em relação aos materiais utilizados para formas, assinale a alternativa correta. A) A fibra de vidro é muito utilizada para pilares e vigas. B) Formas em poliestireno expandido são altamente reaproveitadas. C) Vidro é muito utilizado para concreto aparente. D) Tubos de papelão são muito usados em pilares de seção circular e em estruturas com caixão perdido. E) As tábuas são os materiais que proporcionam o maior reaproveitamento. Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em Engenharia Civil - Construção Civil |
Formas: Confecção e colocação O artifício chamado de contraflecha, usual no processo de execução de formas para estruturas em concreto armado, é utilizado para impedir o quê? A) A tração. B) A compressão. C) A flexão. D) A torção. E) O cisalhamento. Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em Java |
Analise o seguinte código Javadouble a = 0.0 / 0; System.out.println(a); Qual é o resultado de sua execução? A) Infinity B) NaN C) Uma exceção java.lang.ArithmeticException: / by zero D) 0 Verificar Resposta Estudar Cards Todas as Questões |
Desafios, Exercícios e Algoritmos Resolvidos de Java |
Veja mais Dicas e truques de Java |
Dicas e truques de outras linguagens |
MySQL - Como usar joins no MySQL |
Códigos Fonte |
Software de Gestão Financeira com código fonte em PHP, MySQL, Bootstrap, jQuery - Inclui cadastro de clientes, fornecedores e ticket de atendimento Diga adeus às planilhas do Excel e tenha 100% de controle sobre suas contas a pagar e a receber, gestão de receitas e despesas, cadastro de clientes e fornecedores com fotos e histórico de atendimentos. Código fonte completo e funcional, com instruções para instalação e configuração do banco de dados MySQL. Fácil de modificar e adicionar novas funcionalidades. Clique aqui e saiba mais |
Controle de Estoque completo com código fonte em PHP, MySQL, Bootstrap, jQuery - 100% funcional e fácil de modificar e implementar novas funcionalidades Tenha o seu próprio sistema de controle de estoque web. com cadastro de produtos, categorias, fornecedores, entradas e saídas de produtos, com relatórios por data, margem de lucro e muito mais. Código simples e fácil de modificar. Acompanha instruções para instalação e criação do banco de dados MySQL. Clique aqui e saiba mais |
Linguagens Mais Populares |
1º lugar: Java |