Você está aqui: Java ::: Desafios e Lista de Exercícios Resolvidos ::: Arrays e Matrix (Vetores e Matrizes)

Escreva um programa Java que leia e apresente um conjunto de números inteiros para uma matriz bidimensional 2 x 4 e apresente o valor e a posição - Exercícios Resolvidos de Java

Quantidade de visualizações: 406 vezes
Pergunta/Tarefa:

Escreva um programa Java que leia e apresente um conjunto de números inteiros para uma matriz bidimensional 2 x 4 e apresente o valor e a posição do maior número inteiro. Você deverá informar tanto a linha quanto a coluna que o maior valor é encontrado.

Uma matriz bidimensional 2 x 4 quer dizer que a matriz possui 2 linhas e 4 colunas.

Seu programa Java deverá exibir uma saída parecida com:

Valor da linha 1 e coluna 1: 6
Valor da linha 1 e coluna 2: 9
Valor da linha 1 e coluna 3: 11
Valor da linha 1 e coluna 4: 5

Valor da linha 2 e coluna 1: 20
Valor da linha 2 e coluna 2: 63
Valor da linha 2 e coluna 3: 31
Valor da linha 2 e coluna 4: 7


Valores na matriz

    6    9   11    5
   20   63   31    7

O maior valor é 63
Ele foi encontrado na linha 2 e coluna 2
Resposta/Solução:

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) {
    // variaveis usdas na resolução do problema
    int matriz[][] = new int[2][4];
    int maior_valor, linha, coluna;
    
    // para ler a entrada do usuário
    Scanner entrada = new Scanner(System.in);
    
    // vamos ler os valores e colocar na matriz
    for(int i = 0; i < matriz.length; i++){ // linhas
      for(int j = 0; j < matriz[0].length; j++){ // colunas
        System.out.print("Valor da linha " + (i + 1) + " e coluna " 
          + (j + 1) + ": ");
        matriz[i][j] = Integer.parseInt(entrada.nextLine());       
      }        
      System.out.println();
    }
    
    // vamos mostrar a matriz da forma que ela foi informada
    System.out.println("\nValores na matriz\n");
      
    for(int i = 0; i < matriz.length; i++){ // linhas
      for(int j = 0; j < matriz[0].length; j++){ // colunas
        System.out.printf("%5d", matriz[i][j]);   
      }
      
      // passa para a próxima linha da matriz
      System.out.println();       
    }
    
    // agora vamos localizar o maior valor na matriz
    linha = 0;
    coluna = 0;
    maior_valor = matriz[linha][coluna];
    for(int i = 0; i < matriz.length; i++){ // linhas
      for(int j = 0; j < matriz[0].length; j++){ // colunas
        if(matriz[i][j] > maior_valor){
          maior_valor = matriz[i][j];
          linha = i + 1;
          coluna = j + 1;
        }
      }
    }
    
    // vamos mostrar o resultado
    System.out.println("\nO maior valor é " + maior_valor);
    System.out.println("Ele foi encontrado na linha " + linha +
      " e coluna " + coluna);
  }
}


Link para compartilhar na Internet ou com seus amigos:

Java ::: Coleções (Collections) ::: ArrayList

Como percorrer os elementos de uma ArrayList do Java usando um Iterator

Quantidade de visualizações: 21893 vezes
Nesta dica mostrarei como é possível usar um iterador Iterator. Um Iterator, do pacote java.util, é um objeto que pode ser usado para percorrer os itens de uma coleção, tais como ArrayList e HashSet.

Veja um exemplo no qual temos uma ArrayList genérica de strings. Depois de adicionar três nomes na ArrayList nós usamos um Iterator para percorrer a lista e mostrar os elementos de forma individual:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

package estudos_java;

import java.util.*;

public class Estudos{
  public static void main(String[] args){
    // cria uma ArrayList que conterá strings
    ArrayList<String> pessoas = new ArrayList<>();
    
    // adiciona itens na lista
    pessoas.add("Alberto");
    pessoas.add("Victor");
    pessoas.add("João");
    	
    // exibe os itens da lista usando um Iterator	
    for(Iterator<String> it = pessoas.iterator(); it.hasNext();){
      System.out.println(it.next());  
    }

    System.exit(0);
  }
}

Ao executar este código Java nós teremos o seguinte resultado:

Alberto
Victor
João


Java ::: Desafios e Lista de Exercícios Resolvidos ::: Laços

Exercícios Resolvidos de Java - Laços - Faça um programa para calcular o valor das seguintes expressões

Quantidade de visualizações: 1930 vezes
Exercício Resolvido de Java - Laços - Faça um programa para calcular o valor das seguintes expressões

Pergunta/Tarefa:

Faça um programa para calcular o valor das seguintes expressões:

1) __$S_1 = \frac{1}{1} + \frac{3}{2} + \frac{5}{3} + \frac{7}{4} + \text{...} + \frac{99}{50} __$

2) __$S_2 = \frac{2^1}{50} + \frac{2^2}{49} + \frac{2^3}{48} + \text{...} + \frac{2^\text{50}}{1} __$

3) __$S_3 = \frac{1}{1} - \frac{2}{4} + \frac{3}{9} - \frac{4}{16} + \frac{5}{25} - \text{...} - \frac{10}{100} __$

Resposta/Solução:

Em ambas as expressões nós temos o último termo nos informando os valores limites. Dessa forma, basta fixarmos um laço for ou laço while com estes limites.

Veja a resolução deste exercício em código Java console:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

package arquivodecodigos;

public class Estudos{
  public static void main(String[] args){
    // primeira expressão
    int numerador = 1;
    int denominador = 1;
    double resultado = 0.0;
    
    // laço while para montar os termos e fazer a somatória
    while(numerador <= 99){
      resultado = resultado + ((numerador * 1.0) / denominador);
      numerador = numerador + 2;
      denominador++;
    }
    
    // agora mostramos o resultado
    System.out.println("Primeira expressão: " + resultado);
    
    // segunda expressão
    int expoente = 1;
    denominador = 50;
    resultado = 0.0;
    
    // laço while para montar os termos e fazer a somatória
    while(denominador >= 1){
      resultado = resultado + ((Math.pow(2, expoente) * 1.0) / denominador);
      expoente++;
      denominador--;
    }
    
    // agora mostramos o resultado
    System.out.println("Segunda expressão: " + resultado);
    
    // terceira expressão
    numerador = 1;
    denominador = 1;
    resultado = 0.0;
    int sinal = 1;
    
    // laço while para montar os termos e fazer a somatória
    while(numerador <= 10){
      if(sinal > 0){ // somar
        resultado = resultado + ((numerador * 1.0) / denominador);
      }
      else{ // subtrair
        resultado = resultado - ((numerador * 1.0) / denominador);
      }
      
      numerador++;
      denominador = numerador * numerador;
      sinal = sinal * -1;
    }
    
    // agora mostramos o resultado
    System.out.println("Terceira expressão: " + resultado);
  }
}

Ao executar este código Java nós teremos o seguinte resultado:

Primeira expressão: 95.5007946616706
Segunda expressão: 1.5608286920413398E15
Terceira expressão: 0.6456349206349207


Java ::: Coleções (Collections) ::: HashSet

Java Collections - Como usar a classe HashSet em seus programas Java

Quantidade de visualizações: 5056 vezes
A classe HashSet, no pacote java.util, é uma classe concreta que implementa a interface Set. Na maioria das vezes nós usamos objetos desta classe para armazenar elementos não duplicados (ainda que o elemento null seja permitido). Veja sua posição na hierarquia de classes da plataforma Java:

java.lang.Object
  java.util.AbstractCollection<E>
    java.util.AbstractSet<E>
      java.util.HashSet<E>
Esta classe implementa as interfaces Serializable, Cloneable, Iterable<E>, Collection<E> e Set<E> e suas sub-classes diretas são JobStateReasons, LinkedHashSet.

Veja um trecho de código no qual inserimos cinco elementos do tipo String em um HashSet e os listamos em seguida:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

package estudos;

import java.util.HashSet;
import java.util.Iterator;
import java.util.Set;

public class Estudos{
  public static void main(String[] args) {
    // vamos criar uma instância da classe HashSet
    Set<String> conjunto = new HashSet<>();
    
    // vamos inserir cinco Strings neste conjunto
    conjunto.add(null); // o elemento null é permitido
    conjunto.add("Marcos");
    conjunto.add("Osmar");
    conjunto.add("Osmar"); // elemento duplicado aqui
    conjunto.add("Fernanda");
    
    // vamos exibir os elementos
    Iterator iterator = conjunto.iterator();
    while(iterator.hasNext()){
      System.out.println(iterator.next());
    }
  }
}

Ao executarmos este código teremos o seguinte resultado:

null
Fernanda
Marcos
Abel
Osmar
Veja que, embora tenhamos inserido a string "Osmar" duas vezes, o HashSet a armazenou somente uma vez. Outro detalhe é que esta classe raramente retornará os elementos na ordem em que eles foram inseridos.


Vamos testar seus conhecimentos em JavaScript

Analise o seguinte trecho de código JavaScript

var a = new Array();
a[0] = 12;
a[1] = false;
a[2] = "texto";
a[3] = a;

Qual destas instruções provocará um erro de execução?

A) Linha 3

B) Linha 4

C) Linha 5

D) O código executa sem provocar erros
Verificar Resposta Estudar Cards Todas as Questões

Vamos testar seus conhecimentos em Ética e Legislação Profissional

Responsabilidade civil dos prepostos e preponentes

Considera-se ___________ a entrega de papéis, bens ou valores ao ____________, encarregado pelo __________, se os recebeu sem ______________, salvo nos casos em que haja prazo para reclamação. Qual opção abaixo preenche corretamente as lacunas?

A) Perfeita - preponente - preposto - protesto.

B) Inválida - preponente - preposto - protesto.

C) Inválida - preposto - preponente - protocolo.

D) Perfeita - preposto - preponente - protocolo.

E) Perfeita - preposto - preponente - protesto.
Verificar Resposta Estudar Cards Todas as Questões

Vamos testar seus conhecimentos em Fenômeno de Transportes e Hidráulica

Perfil de velocidade turbulento

A Lei da Parede para a determinação do perfil de velocidade empírico-turbulento envolve a determinação da velocidade de atrito na subcamada viscosa. Além do método da Lei da Parede, quais outros métodos existem para estimar o perfil de velocidade turbulento?

A) Fator de atrito de Darcy, Lei da Potência e Lei Logarítmica.

B) Princípio de Arquimedes, Lei da Potência e Lei do Defeito da Velocidade.

C) Lei Logarítmica, Lei do Defeito da Velocidade e Lei da Potência.

D) Lei da Potência, Lei de Hooke e Lei do Defeito da Velocidade.

E) Fator de atrito de Darcy, Lei Logarítmica e Princípio de Arquimedes.
Verificar Resposta Estudar Cards Todas as Questões

Vamos testar seus conhecimentos em Engenharia Civil - Estruturas de Aço e Madeira

Evolução das estruturas

O concreto armado, no qual barras de aço são inseridas nas peças de concreto, foi desenvolvido na década de 1850. A junção do aço ao concreto contribui na melhoria do desempenho estrutural do concreto em relação à:

Selecione a resposta:

A) Resistência à compressão.

B) Resistência à tração.

C) Resistência à umidade.

D) Resistência ao fogo.

E) Resistência à infiltração.
Verificar Resposta Estudar Cards Todas as Questões

Vamos testar seus conhecimentos em Hidrologia

A Bacia Platina é uma das principais bacias do país. Em relação às suas características, marque a alternativa correta.

A) É formada pelas bacias dos rios Paraná, Paraguai, Araguaia e Tocantins.

B) Está localizada no Brasil, Argentina, Chile e Paraguai.

C) Possui a maior usina hidrelétrica totalmente brasileira.

D) Apresenta baixo aproveitamento econômico de sua área.

E) É a bacia brasileira com maior capacidade instalada de geração de energia.
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

Códigos Fonte

Programa de Gestão Financeira Controle de Contas a Pagar e a Receber com Cadastro de Clientes e FornecedoresSoftware 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 funcionalidadesControle 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
2º lugar: Python
3º lugar: C#
4º lugar: PHP
5º lugar: Delphi
6º lugar: C
7º lugar: JavaScript
8º lugar: C++
9º lugar: VB.NET
10º lugar: Ruby



© 2024 Arquivo de Códigos - Todos os direitos reservados
Neste momento há 12 usuários muito felizes estudando em nosso site.