Você está aqui: Java ::: Desafios e Lista de Exercícios Resolvidos ::: Arrays e Matrix (Vetores e Matrizes) |
Escreva um programa Java para separar os números pares de um vetor para a esquerda e os números ímpares para a direita - Lista de Exercícios Resolvidos de JavaQuantidade de visualizações: 1524 vezes |
Pergunta/Tarefa: Escreva um programa Java para deslocar os elementos com valores pares de um vetor para a esquerda e os números ímpares para a direita. Seu código deverá declarar e construir um vetor de 10 inteiros e pedir para o usuário informar os valores. Em seguida efetue os deslocamentos dos valores dos elementos e mostre o resultado. Sua saída deverá ser parecida com: Informe o valor do 1.o elemento: 5 Informe o valor do 2.o elemento: 2 Informe o valor do 3.o elemento: 4 Informe o valor do 4.o elemento: 9 Informe o valor do 5.o elemento: 1 Informe o valor do 6.o elemento: 8 Informe o valor do 7.o elemento: 3 Informe o valor do 8.o elemento: 13 Informe o valor do 9.o elemento: 20 Informe o valor do 10.o elemento: 7 20 2 4 8 1 9 3 13 5 7 Veja a resolução comentada deste exercício em Java: ---------------------------------------------------------------------- Precisa de ajuda? Chama no WhatsApp +55 (62) 98553-6711 (Osmar) Este código foi útil? Paga um cafezinho pra mim :-( PIX: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- package exercicio; import java.util.Scanner; public class Exercicio { public static void main(String[] args) { // vamos fazer a leitura usando a classe Scanner Scanner entrada = new Scanner(System.in); // vamos declarar e construir um vetor de 10 inteiros int valores[] = new int[10]; // agora vamos pedir para o usuário informar os valores dos elementos for(int i = 0; i < valores.length; i++){ System.out.print("Informe o valor do " + (i + 1) + ".o elemento: "); valores[i] = Integer.parseInt(entrada.nextLine()); } // definimos os extremos do vetor. A variável esquerdo // começa no primeiro índice e a variável direito começa // no último índice do vetor int esquerdo = 0; int direito = valores.length - 1; // enquanto o lado esquerdo for menor que o lado direito, ou seja, // as duas variáveis ainda não se encontraram while (esquerdo < direito) { // enquanto o valor do vetor no índice [esquerdo] for par e a variável // esquerdo for menor que a variável direito while (valores[esquerdo] % 2 == 0 && esquerdo < direito){ esquerdo++; // esquerdo avança um elemento } // enquanto o valor do vetor no índice [direito] for par e a variável // esquerdo for menor que a variável direito while (valores[direito] % 2 == 1 && esquerdo < direito){ direito--; // esquerdo reduz em um elemento } // esquerdo ainda é menor que direito? if (esquerdo < direito) { // fazemos a troca dos elementos int temp = valores[esquerdo]; valores[esquerdo] = valores[direito]; valores[direito] = temp; esquerdo++; // incrementa o lado esquerdo direito--; // decrementa o lado direito } } // agora mostramos o valor do vetor com os deslocamentos realizados for(int i = 0; i < valores.length; i++){ System.out.print(valores[i] + " "); } } } |
![]() |
Mais Desafios de Programação e Exercícios e Algoritmos Resolvidos de Java |
Veja mais Dicas e truques de Java |
Dicas e truques de outras linguagens |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
1º lugar: Java |