Você está aqui: Java ::: Desafios e Lista de Exercícios Resolvidos ::: Laços de Repetição |
Supondo que a população de um país A seja da ordem de 80.000 habitantes com uma taxa anual de crescimento de - Lista de Exercícios Resolvidos de JavaQuantidade de visualizações: 483 vezes |
Pergunta/Tarefa: Supondo que a população de um país A seja da ordem de 80.000 habitantes com uma taxa anual de crescimento de 3% e que a população de B seja 200.000 habitantes com uma taxa de crescimento de 1.5%. Faça um programa Java que calcule e escreva o número de anos necessários para que a população do país A ultrapasse ou iguale a população do país B, mantidas as taxas de crescimento. Sua saída deverá ser parecida com: Foram necessários 63 anos. População do país A: 515033 População do país B: 510964 Veja a resolução comentada deste exercício usando Java: ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- package estudos; public class Estudos { public static void main(String[] args) { // variáveis usadas na resolução do problema double populacao_a = 80000; double populacao_b = 200000; double taxa_cresc_a = (3.0 / 100.0); double taxa_cresc_b = (1.5 / 100.0); int quant_anos = 0; // enquanto a população do país A for menor que a // população do país B while (populacao_a < populacao_b) { // conta mais um ano quant_anos = quant_anos + 1; // aumenta a população do país A populacao_a = populacao_a + (populacao_a * taxa_cresc_a); // aumenta a população do país B populacao_b = populacao_b + (populacao_b * taxa_cresc_b); } // mostra o resultado System.out.println("Foram necessários " + quant_anos + " anos."); System.out.println("População do país A: " + (int)populacao_a); System.out.println("População do país B: " + (int)populacao_b); } } |
![]() |
Java ::: Desafios e Lista de Exercícios Resolvidos ::: Arrays e Matrix (Vetores e Matrizes) |
Exercício Resolvido de Java - Como percorrer todos os elementos de um vetor de inteiros e exibir a soma de seus valoresQuantidade de visualizações: 13134 vezes |
Pergunta/Tarefa: Considere o seguinte vetor de inteiros: // um vetor de inteiros contendo sete elementos int valores[] = {4, 5, 1, 8, 2, 2, 10}; A soma dos valores do vetor é: 32 Resposta/Solução: ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- public static void main(String[] args){ // um vetor de inteiros contendo sete elementos int valores[] = {4, 5, 1, 8, 2, 2, 10}; // o primeiro passo é criar uma variável que vai receber a soma // dos valores dos elementos int soma = 0; // agora vamos usar uma laço for para percorrer todos os elementos // do vetor, obter o valor do elemento atual e adicionar ao valor atual // da variável soma for(int i = 0; i < valores.length; i++){ soma = soma + valores[i]; // poderia também ser escrito assim: // soma += valores[i]; } // vamos exibir a soma dos valores do vetor System.out.println("A soma dos valores do vetor é: " + soma); } |
Java ::: Desafios e Lista de Exercícios Resolvidos ::: Matemática e Estatística |
Exercício Resolvido de Java - Como simplificar frações em JavaQuantidade de visualizações: 696 vezes |
Pergunta/Tarefa: Simplificar uma fração consiste em reduzir o numerador e o denominador por meio da divisão pelo máximo divisor comum aos dois números. Uma fração está totalmente simplificada quando verificamos que seus termos estão totalmente reduzidos a números que não possuem termos divisíveis entre si. Uma fração simplificada sofre alteração do numerador e do denominador, mas seu valor matemático não é alterado, pois a fração, quando tem seus termos reduzidos, torna-se uma fração equivalente. Escreva um programa Java que pede para o usuário informar o numerador e o denominador de uma fração e mostre a fração simplificada. Use uma classe Fracao para a operação de simplificação. Em outras seções do nosso site você encontra o cálculo do MDC para encontrar o Máximo Divisor Comum. Sua saída deverá ser parecida com: Informe o numerador: 32 Informe o denominador: 40 A fração gerada foi: 32/40 A fração simplificada é: 4/5 Veja a resolução comentada deste exercício em Java: ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- package estudos; import java.util.Scanner; public class Estudos{ public static void main(String[] args) { // para ler a entrada do usuário Scanner entrada = new Scanner(System.in); // vamos pedir para o usuário informar o numerador System.out.print("Informe o numerador: "); int numerador = Integer.parseInt(entrada.nextLine()); // vamos pedir para o usuário informar o denominador System.out.print("Informe o denominador: "); int denominador = Integer.parseInt(entrada.nextLine()); // vamos criar um objeto da classe Fracao Fracao f = new Fracao(numerador, denominador); // vamos mostrar a fração gerada System.out.println("A fração gerada foi: " + f.toString()); // agora vamos simplificar esta fração System.out.println("A fração simplificada é: " + f.simplificar().toString()); } } // classe usada para representar uma Fração class Fracao{ int numerador; int denominador; // construtor da classe public Fracao(int numerador, int denominador) { this.numerador = numerador; this.denominador = denominador; } // método que simplifica a fração atual e retorna o // resultado como uma fração public Fracao simplificar(){ // cria uma fração temporária Fracao temp = new Fracao(this.numerador, this.denominador); // descobrimos que é maior, o numerador ou o // denominador int n = temp.numerador, d = temp.denominador, maior; // o numerador é menor que 0? if (temp.numerador < 0) { n = -temp.numerador; } // descobrimos o maior if (n > d) { maior = n; } else { maior = d; } // encontramos o maior número que divide o numerador e o // denominador int mdc = 0; for (int i = maior; i >= 2; i--) { if ((temp.numerador % i == 0) && (temp.denominador % i == 0)) { mdc = i; break; } } // agora dividimos tanto o numerador quanto o denominador // pelo mdc encontrado if (mdc != 0) { temp.numerador = temp.numerador / mdc; temp.denominador = temp.denominador / mdc; } // retorna a fração temporária return temp; } // retorna uma representação textual dessa fração @Override public String toString() { return this.numerador + "/" + this.denominador; } } |
Java ::: Desafios e Lista de Exercícios Resolvidos ::: Arrays e Matrix (Vetores e Matrizes) |
Exercícios Resolvidos de Java - Pesquisando um valor em uma matriz de int e retornando o índice no qual o mesmo foi encontradoQuantidade de visualizações: 9400 vezes |
Pergunta/Tarefa: Escreva um programa Java GUI ou console que declara, constrói e inicializa uma matriz de 5 inteiros. Em seguida peça ao usuário para informar um valor inteiro e informe se o valor lido está contido na matriz. Se o valor for encontrado na matriz, retorne seu índice (lembre-se de que os índices dos elementos em uma matriz Java começam em 0). A declaração, construção e inicialização da matriz pode ser feita da seguinte forma: // declara, constrói e inicializa uma matriz de 5 inteiros int valores[] = {4, 21, 8, 120, 1}; Resposta/Solução: Veja a resolução comentada deste exercício usando Java console: ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- package estudos; import javax.swing.JOptionPane; public class Estudos { public static void main(String[] args) { // declara, constrói e inicializa uma matriz de 5 inteiros int valores[] = {4, 21, 8, 120, 1}; // vamos ler um valor inteiro int pesquisa = Integer.parseInt(JOptionPane.showInputDialog("Valor:")); // vamos verificar se o valor está contido na matriz e retornar seu índice int pos = -1; // índice não existente na matriz for(int i = 0; i < valores.length; i++){ if(valores[i] == pesquisa){ pos = i; // encontrou? vamos anotar este índice break; } } // vamos mostrar o resultado if(pos > -1){ JOptionPane.showMessageDialog(null, "O valor foi encontrado no índice: " + pos); } else{ JOptionPane.showMessageDialog(null, "O valor não foi encontrado na matriz"); } } } Uma idéia na resolução deste exercício é inicializar a variável que guardará o índice do elemento pesquisado com o valor -1. Assim, se no final da pesquisa o valor ainda for -1, sabemos que o elemento não foi encontrado. |
Java ::: Fundamentos da Linguagem ::: Modificadores |
Como usar o modificador native da linguagem JavaQuantidade de visualizações: 9631 vezes |
O modificador native é usado exclusivamente com métodos. A implementação de um método marcado como native não é feita em Java mas sim em outra linguagem de programação, tal como C ou C++. Veja um exemplo de uma aplicação Java contendo um método native: ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- public class Estudos{ private static native void escrever(); public static void main(String[] args){ System.loadLibrary("Funcoes"); escrever(); } } O primeiro detalhe a observar é a definição de um método native chamado escrever(). Veja que este método possui apenas a assinatura, o que quer dizer que sua implementação virá de um ponto externo ao nosso código. Em seguida temos uma chamada ao método LoadLibrary() da classe System. Este método recebe uma string contendo o nome da biblioteca que contém a implementação do método escrever(). O próprio método LoadLibrary se encarrega de acrescentar as extensões .dll ou .so ao nome da biblioteca que será carregada. Quando estamos trabalhando com métodos native, é sempre uma boa idéia estudarmos JNI (Java Native Interface). JNI é uma API do Java que permite que métodos Java chamem funções nativas implementadas em C. |
Java ::: Pacote java.util ::: Iterator |
Como usar o método next() da interface Iterator do Java para obter o próximo elemento da iteraçãoQuantidade de visualizações: 4109 vezes |
O método next() da interface Iterator é usado quando queremos acessar o próximo elemento de uma iteração. Veja sua assinatura:---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- E next() Veja que o tipo retornado equivale ao tipo do elemento usado na declaração do iterador. Veja um exemplo: ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- package estudos; import java.util.ArrayList; import java.util.Iterator; public class Estudos{ public static void main(String[] args) { // vamos criar uma ArrayList ArrayList<String> pessoas = new ArrayList(); pessoas.add("Osmar"); pessoas.add("Carlos"); pessoas.add("Fernanda"); // vamos obter um iterador para a lista Iterator<String> pessoa = pessoas.iterator(); // vamos obter o próximo elemento (neste caso, o primeiro) String s1 = pessoa.next(); System.out.println(s1); // vamos obter o próximo elemento (o segundo) String s2 = pessoa.next(); System.out.println(s2); // vamos obter o próximo elemento (o terceiro) String s3 = pessoa.next(); System.out.println(s3); // vamos obter o próximo elemento (vai dar erro. não há um quarto elemento) String s4 = pessoa.next(); System.out.println(s4); } } Ao executarmos este código nós teremos o seguinte resultado: ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- Osmar Carlos Fernanda Exception in thread "main" java.util.NoSuchElementException at java.util.ArrayList$Itr.next(ArrayList.java:834) at estudos.Estudos.main(Estudos.java:30) Java Result: 1 Veja que o método next() atira uma exceção do tipo NoSuchElementException se o iterador não possuir mais elementos. |
Java ::: Classes e Componentes ::: JTextArea |
Java Swing - Como obter o texto selecionado em um controle JTextArea do Java SwingQuantidade de visualizações: 8879 vezes |
Em algumas situações nós precisamos obter o texto selecionado pelo usuário em um componente JTextArea de nossas aplicações Java Swing. Isso pode ser feito com uma chamada ao seu método getSelectedText(). Veja um trecho de código no qual obtemos o texto selecionado em um JTextArea chamado textArea: ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- textArea = new JTextArea(10, 20); String selecionado = textArea.getSelectedText(); |
Java ::: Coleções (Collections) ::: ArrayList |
Java ArrayList para iniciantes - Como excluir todos os elementos de uma ArrayList usando seu método clear()Quantidade de visualizações: 12262 vezes |
Nesta dica eu mostro como podemos usar o método clear() da classe ArrayList, da linguagem Java, para limpar seu conteúdo, ou seja, excluir todos os seus itens de uma só vez. Veja o código completo: ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- import java.util.ArrayList; public class Estudos{ public static void main(String[] args){ // cria uma ArrayList que conterá inteiros ArrayList<Integer> valores = new ArrayList<Integer>(); // adiciona itens na lista valores.add(34); valores.add(12); valores.add(8); valores.add(23); // obtém a quantidade de itens na lista int quant = valores.size(); System.out.println("A lista contém " + quant + " itens"); // limpa a lista valores.clear(); // obtém a nova quantidade quant = valores.size(); System.out.println("Agora a lista contém " + quant + " itens"); System.exit(0); } } Ao executarmos este código nós teremos o seguinte resultado: A lista contém 4 itens Agora a lista contém 0 itens |
Java ::: Fundamentos da Linguagem ::: Modificadores |
Programação Orientada a Objetos em Java - Como usar o modificador de acesso public da linguagem JavaQuantidade de visualizações: 9983 vezes |
O modificador de acesso public é aquele que permite o maior grau de acesso a um recurso Java (um recurso é uma classe, um método ou uma variável). O único modificador de acesso permitido a uma classe não interna é public. Não é permitido usar outro modificador. Na ausência do modificador public, o acesso à classe será de pacote (package). Quando usamos este modificador, as classes, métodos e variáveis podem ser acessadas a partir de qualquer outra classe sem qualquer restrição. Além disso, um método public pode ser sobrescrito (sofrer override) por qualquer subclasse da classe que o declara. O método main() da aplicação é declarado public para que o ambiente de execução Java tenha acesso a ele. Declará-lo de outra forma fará com que a execução da aplicação se torne impossível. Veja um exemplo de uma classe Java pública, com uma variável de instância pública e um método também público: ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- package arquivodecodigos; // uma classe pública public class Cliente { // uma variável pública public int codigo; // um construtor público public Cliente(){ this.codigo = 532; } // um método público public int obterCodigoCliente(){ return this.codigo; } } |
Vamos testar seus conhecimentos em |
Aglomerantes Você sabe que o gesso faz parte da família de aglomerantes simples. A obtenção do gesso se dá através: A) Calcinação do calcário dolomítico. B) Calcinação da gipsita natural. C) Isolamento das impurezas do sulfato biidratado de cálcio. D) Calcinação da sílica. E) Calcinação de carbonatos de cálcio e de magnésio. Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em Hidrologia |
Como é chamado o processo em que a água passa do estado líquido para o estado sólido no meio atmosférico? A) Infiltração. B) Condensação. C) Evapotranspiração. D) Transpiração. E) Precipitação. Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em Engenharia Civil - Estruturas de Aço e Madeira |
Perfil em aço As conexões dos perfis de aço contribuem para a projetação das estruturas de uma edificação, sendo responsáveis pela ligação entre pilares e vigas ou entre outros elementos. Elas podem variar, dependendo do tipo de esforço que se pretende resistir com o elemento estrutural. Considerando a figura apresentada a seguir, assinale a alternativa que indica corretamente o tipo de conexão que está sendo utilizado para unir essas peças. ![]() A) Conexão de cisalhamento. B) Conexão de momento com pinos. C) Conexão de cisalhamento com solda. D) Conexão de momento com solda. E) Conexão de tensão com solda. Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em Fenômeno de Transportes e Hidráulica |
Equação de Manning A equação de Manning é uma expressão empírica que se aplica ao fluxo uniforme em canais abertos, relacionando a velocidade do fluido, a área da seção e a inclinação do canal. Sobre a fórmula de Manning, selecione a alternativa correta. A) O valor do coeficiente de rugosidade n representa a perda de carga localizada, uma vez que se refere à interferência do atrito nas paredes das tubulações e canais de condução de fluidos. B) A fórmula de Manning só apresenta resultados precisos para canais naturais, sendo os artificiais complexos, pois o coeficiente de rugosidade n varia na produção do material. C) O valor do coeficiente de rugosidade n representa a perda de carga distribuída atribuída ao atrito e é sempre calculado em campo para que erros associados a ele sejam minimizados. D) Em canais artificiais, o valor do coeficiente de Manning n representa a perda de carga causada apenas pelas paredes, se fazendo necessário aplicar uma correção para o fundo do canal. E) A fórmula de Manning fornece resultados confiáveis para os canais naturais ou artificiais e o coeficiente de rugosidade n representa a perda de carga distribuída relacionada ao atrito. 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 concreto deve estar curado e liberado para a remoção das formas segundo recomendações técnicas. Quando não se utiliza concreto especial ou aditivo acelerador de pega, para vigas de pequeno vão, qual é o prazo mínimo para a retirada das formas inferiores, com a manutenção das principais escoras? A) Cinco dias. B) Sete dias. C) Dez dias. D) Quatorze dias. E) Vinte e um dias. 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 |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
1º lugar: Java |