Você está aqui: Java ::: Desafios e Lista de Exercícios Resolvidos ::: Arrays e Matrix (Vetores e Matrizes) |
Como encontrar o par de elementos em um vetor que, somados, resulte no número informado - Solução usando força-bruta - Desafio de Programação Resolvido em JavaQuantidade de visualizações: 442 vezes |
Pergunta/Tarefa: Dado o vetor: // vamos declarar um vetor não ordenado de 8 ints int numeros[] = {7, 12, 4, 5, 3, 1, 8, 6}; Há várias formas de se resolver esse problema. Nesse exercício nós colocamos a solução usando força-bruta. Sua saída deverá ser parecida com: O vetor criado é: [7, 12, 4, 5, 3, 1, 8, 6] Informe um número: 10 Par encontrado: (7, 3) 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.Arrays; import java.util.Scanner; public class Estudos { public static void main(String[] args) { // vamos declarar um vetor não ordenado de 8 ints int numeros[] = {7, 12, 4, 5, 3, 1, 8, 6}; // vamos mostrar o vetor System.out.println("O vetor criado é: " + Arrays.toString(numeros)); // vamos pedir para o usuário informar um valor Scanner entrada = new Scanner(System.in); System.out.print("Informe um número: "); int numero = Integer.parseInt(entrada.nextLine()); // vamos encontrar o par de elementos que resulte em // uma soma igual ao número informado pelo usuário encontrarPar(numeros, numero); // vamos adicionar uma quebra de linha System.out.println("\n"); } // método que recebe um vetor de inteiros e um número // representando a soma que devemos encontrar em dois pares // de elementos do vetor public static void encontrarPar(int[] numeros, int numero){ boolean encontrado = false; // para registrar se encontramos // vamos percorrer todos os elementos do vetor, exceto // o último for (int i = 0; i < numeros.length - 1; i++){ // no laço interno nós varremos desde o elemento // no índice i até o último elemento for (int j = i + 1; j < numeros.length; j++){ // encontramos o par de elementos que retorna a soma // que estamos procurando? if (numeros[i] + numeros[j] == numero){ System.out.printf("Par encontrado: (%d, %d)", numeros[i], numeros[j]); encontrado = true; break; // sai do laço interno } } // vamos sair do laço externo também caso o par // já tiver sido encontrado no laço interno if(encontrado){ break; } } // o par não foi encontrado? if(!encontrado){ System.out.println("O par de elementos não foi encontrado."); } } } |
![]() |
Java ::: Dicas & Truques ::: Arquivos e Diretórios |
Manipulação de arquivos em Java - Como obter o tamanho de um arquivo em bytes usando o método length() da classe File do JavaQuantidade de visualizações: 12873 vezes |
A classe File, do pacote java.io da linguagem Java, nos fornece o método length(), que retorna o tamanho de um arquivo em byes. O retorno é do tipo long. Veja como podemos usá-lo no código abaixo: ---------------------------------------------------------------------- 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){ File arquivo = new File("c:\\estudos_java\\lago.jpg"); // Obtém o tamanho do arquivo em bytes long tam = arquivo.length(); System.out.println("Tamanho do arquivo em bytes: " + tam); } } Ao executar este código nós teremos o seguinte resultado: Tamanho do arquivo em bytes: 143060 |
Java ::: Classes e Componentes ::: JMenuBar, JMenu, JMenuItem e Afins |
Java Swing - Como usar objetos da classe JCheckBoxMenuItem como itens de menu de suas aplicações Java SwingQuantidade de visualizações: 8782 vezes |
Neste exemplo mostrarei como usar objetos da classe JCheckBoxMenuItem como itens de um menu. Tais itens podem ser usados quando o usuário puder marcar uma ou mais opções, em um grupo relacionado de opções. Veja o resultado na imagem abaixo: ![]() E agora 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 javax.swing.*; import java.awt.*; import java.awt.event.*; public class Estudos extends JFrame{ JCheckBoxMenuItem cores[]; Color valCores[] = {Color.red, Color.white, Color.green}; String nomeCores[] = {"Vermelho", "Branco", "Verde"}; public Estudos(){ super("Menus"); // Cria a barra de menus JMenuBar barra = new JMenuBar(); setJMenuBar(barra); // Cria um menu JMenu formatar = new JMenu("Formatar"); // Cria o menu de cor de fundo JMenu item1 = new JMenu("Cor de Fundo"); // Adiciona o segundo JMenu ao primeiro formatar.add(item1); cores = new JCheckBoxMenuItem[valCores.length]; Gerenciador gerenciador = new Gerenciador(); for(int i = 0; i < valCores.length; i++){ cores[i] = new JCheckBoxMenuItem(nomeCores[i]); item1.add(cores[i]); cores[i].addItemListener(gerenciador); } // Adiciona o menu à barra de menus barra.add(formatar); setSize(300, 150); setVisible(true); } public static void main(String args[]){ Estudos app = new Estudos(); app.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } private class Gerenciador implements ItemListener{ public void itemStateChanged(ItemEvent e){ String marcadas = "As checkbox marcadas são:\n\n"; for(int i = 0; i < cores.length; i++){ if(cores[i].isSelected()){ marcadas += nomeCores[i] + "\n"; } } JOptionPane.showMessageDialog(null, marcadas); } } } |
Java ::: Desafios e Lista de Exercícios Resolvidos ::: Métodos, Procedimentos e Funções |
Exercício Resolvido de Java - Escreva um método chamado inverter() que recebe um número inteiro e retorna este mesmo número invertidoQuantidade de visualizações: 7189 vezes |
Pergunta/Tarefa: Escreva um método Java chamado inverter() que recebe um número inteiro e retorna este mesmo número invertido. Este método deverá ter a seguinte assinatura: public static int inverter(int numero){ // sua implementação aqui } ATENÇÃO: Para a resolução deste exercício é permitido usar apenas os operadores aritméticos. Sua saída deverá ser parecida com: Informe um número inteiro: 487 O valor invertido é: 784 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) { // vamos fazer a leitura usando a classe Scanner Scanner entrada = new Scanner(System.in); // vamos pedir ao usuário que informe um número inteiro System.out.print("Informe um número inteiro: "); int numero = Integer.parseInt(entrada.nextLine()); // fazer efetuar uma chamada ao método inverter() e obter o valor invertido int invertido = inverter(numero); // e exibir o resultado System.out.println("O valor invertido é: " + invertido); } // método estático que recebe um número inteiro e o devolve invertido public static int inverter(int numero){ int resultado = 0; // guarda o resultado da inversão // enquanto número for diferente de 0 while(numero != 0){ // obtém resto da divisão de número por 10 int resto = numero % 10; // resultado recebe ele mesmo multiplicado por 10 mais o resto resultado = resultado * 10 + resto; // finalmente número recebe ele mesmo dividido por 10 numero = numero / 10; } return resultado; // retorna o resultado } } |
Mais Desafios de Programação e Exercícios e Algoritmos Resolvidos de Java |
Veja mais Dicas e truques de Java |
Códigos Fonte |
![]() 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 |
![]() 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 |