Lista de Exercícios Resolvidos: Java | Python | VisuAlg | Portugol | C | C# | VB.NET | C++
Você está aqui: Java ::: Desafios e Lista de Exercícios Resolvidos ::: Java Básico

Escreva um programa Java que pergunte a velocidade de um carro. Caso ultrapasse 80km/h, exiba uma mensagem dizendo que - Desafio de Programação Resolvido em Java

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

Escreva um programa Java que pergunte a velocidade de um carro. Caso ultrapasse 80km/h, exiba uma mensagem dizendo que o usuário foi multado. Nesse caso, exiba o valor da multa, cobrando R$ 5,00 por cada quilômetro acima da velocidade permitida.

Sua saída deve ser parecida com:

Velocidade do carro: 85
Você foi multado.
A multa a ser paga é: 25.0

Velocidade do carro: 75
Você não foi multado

Velocidade do carro: 110
Você foi multado.
A multa a ser paga é: 150.0
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 Exercicio {
  public static void main(String[] args) {
    // para ler a entrada do usuário
    Scanner leitura = new Scanner(System.in);
    
    // vamos pedir para o usuário informar a velocidade
    // do carro
    System.out.print("Velocidade do carro: ");
    double velocidade = Double.parseDouble(leitura.nextLine());
    
    // vamos verificar se o usuário foi multado
    if (velocidade > 80) {
      System.out.println("Você foi multado.");
      // vamos calcular a multa
      double multa = (velocidade - 80) * 5.0;
      System.out.println("A multa a ser paga é: " + multa);
    }
    else {
      System.out.println("Você não foi multado");
    }
  }
}


Link para compartilhar na Internet ou com seus amigos:

Java ::: Desafios e Lista de Exercícios Resolvidos ::: Recursão (Recursividade)

Exercícios Resolvidos de Java - Como resolver o problema da Torre de Hanói recursivamente

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

Torre de Hanói, ou The Towers of Hanoi, é um "quebra-cabeça" que consiste em uma base contendo três pinos, em um dos quais são dispostos alguns discos uns sobre os outros, em ordem crescente de diâmetro, de cima para baixo. O problema consiste em passar todos os discos de um pino para outro qualquer, usando um dos pinos como auxiliar, de maneira que um disco maior nunca fique em cima de outro menor em nenhuma situação. O número de discos pode variar sendo que o mais simples contém apenas três.

A solução da Torre de Hanói (The Towers of Hanoi) pode ser feita recursivamente da seguinte forma:

O caso base (parada da recursão) é quando n = 1. Se n = 1 nós podemos simplesmente mover o disco de A para B, sem precisar passar pelo pino C. Quando n > 1 nós podemos dividir o problema original em três sub-problemas e resolvê-los sequencialmente.

1) Mova os primeiros n - 1 discos de A para C com a ajuda do pino B;
2) Mova o disco n de A para B;
3) Mova n - 1 discos do pino C para o pino B com a ajuda do pino A.

Além de resolver o problema, seu programa deverá informar quantas chamadas recursivas foram feitas. Sua saída deverá ser parecida com:



Resposta/Solução:

Veja a resolução comentada deste exercício usando Java console:

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

package arquivodecodigos;

import java.util.Scanner;
 
public class Estudos {
  static int quantChamadasRecursivas = 0; // registra as chamadas recursivas  
     
  public static void main(String[] args) {
    Scanner entrada = new Scanner(System.in);
       
    // vamos ler a quantidade de discos a serem usados na simulação
    System.out.print("Informe a quantidade de discos: ");
    int discos = Integer.parseInt(entrada.nextLine());
 
    // resolve o problema recusivamente
    System.out.println("\nOs movimentos para resolver o problema foram:\n");
    moverDiscos(discos, 'A', 'B', 'C');
    System.out.println("\nForam feitas " + quantChamadasRecursivas + 
      " chamadas recursivas");
    System.out.println();
  }
   
  // método recursivo que resolve o problema da Torre de Hanói
  public static void moverDiscos(int n, char daTorre, char paraTorre, 
    char torreAux) {
    quantChamadasRecursivas++; // registra mais uma chamada recursiva
       
    if(n == 1){ // condição de parada
      System.out.println("Movendo o disco " + n + " de " + daTorre + " para " + 
        paraTorre);
    }
    else{ // faz mais uma chamada recursiva
      moverDiscos(n - 1, daTorre, torreAux, paraTorre);
      System.out.println("Movendo o disco " + n + " de " + daTorre + " para " + 
        paraTorre);
      moverDiscos(n - 1, torreAux, paraTorre, daTorre);
    }
  }
}



Java ::: Dicas & Truques ::: Geometria, Trigonometria e Figuras Geométricas

Como calcular a área de um Triângulo Equilátero em Java - Java para Geometria, Trigonometria e Álgebra Linear

Quantidade de visualizações: 1604 vezes
Um Triângulo Equilátero é o triângulo que possui os três lados iguais, e cujos ângulos internos são todos 60 graus (somando 180).

Veja na figura abaixo as características de um Triângulo Equilátero:



Nesta dica de Java eu mostrarei como calcular a área do triângulo equilátero. Para isso, vamos revisar a fórmula para o cálculo da área do triângulo equilátero:

\[\text{Área K} = \dfrac{1}{4} \times \sqrt{3} \times L^2 \]

E veja o código Java para o cálculo:

----------------------------------------------------------------------
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) {
    // para efetuar a leitura do usuário
    Scanner entrada = new Scanner(System.in);
    
    // vamos pedir para o usuário informar o valor do lado do triângulo
    System.out.print("Informe o lado do triângulo: ");
    double lado = Double.parseDouble(entrada.nextLine());
    
    // agora vamos calcular a área do triângulo equilátero
    double area = (1.0 / 4.0) * Math.sqrt(3) * Math.pow(lado, 2);
    
    // e finalmente mostramos o resultado
    System.out.println("A área do triângulo equilátero é: " + area);
  }
}

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

Informe o lado do triângulo: 5
A área do triângulo equilátero é: 10.825317547305483


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

Como remover um elemento de uma determinada posição do ArrayList do Java usando o método remove()

Quantidade de visualizações: 16929 vezes
Nesta dica mostrarei como é possível remover elementos em uma determinada posição de um objeto ArrayList usando o seu método remove(). Esta função possui duas assinaturas, uma que recebe uma referência ao elemento a ser excluído e outra que recebe o índice do elemento que queremos excluir. No exemplo a seguir abordarei a segunda assinatura:

Object remove(int index) throws
  IndexOutOfBoundsException 


Note que só precisamos fornecer o índice do elemento a ser excluído. O retorno será um objeto Object contendo a referência ao elemento que acabamos de excluir. Se o elemento não for encontrado, um erro IndexOutOfBoundsException será exibido e, a menos que seja tratado, a aplicação Java será fechada.

Veja o código completo a seguir:

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

import java.util.ArrayList;

public class Estudos{
  public static void main(String[] args){
    // cria uma ArrayList que conterá strings
    ArrayList<String> nomes = new ArrayList<String>();
    
    // adiciona itens na lista
    nomes.add("Carlos");
    nomes.add("Maria");
    nomes.add("Fernanda");
    nomes.add("Osmar");
    nomes.add("Maria");    
	
    // Vamos remover o segundo elemento
    String elem = nomes.remove(1);

    System.out.println("O elemento removido foi: "
      + elem); 

    System.exit(0);
  }
}

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

O elemento removido foi: Maria


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

Noções de licitação pública

Licitação pública é o procedimento por meio do qual a administração pública adquire ou vende bens e contrata serviços. Sobre a licitação pública, assinale a alternativa correta.

A) É dever do órgão licitante garantir a igualdade entre os competidores durante todo o certame a fim de assegurar a isonomia, que é um princípio fundamental do processo licitatório.

B) Na legislação que regulamenta as licitações, não há previsão para o estabelecimento, nos processos licitatórios, de margem de preferência para bens e serviços com tecnologia desenvolvida no Brasil.

C) É prevista em lei a permissão para a realização de licitação cujo objeto inclua bens sem similaridade ou de marcas, de características e de especificações exclusivas, salvo em casos específicos previstos em legislação.

D) Na aquisição pública de materiais mediante processo licitatório, a administração pública pode descumprir as normas e as condições do edital, visando à celeridade no recebimento dos materiais.

E) A licitação é um procedimento utilizado para dar a oportunidade aos vários interessados em manifestar propostas à administração pública, que, ao final, vai selecionar a considerada mais barata.
Verificar Resposta Estudar Cards Todas as Questões

Vamos testar seus conhecimentos em JavaScript

Como escrever um condicional if para executar uma ação se o valor de "a" for DIFERENTE de 10?

A) if (a <> 10) {}

B) if a <> 10:

C) if a != 10 then

D) if (a != 10) {}
Verificar Resposta Estudar Cards Todas as Questões

Vamos testar seus conhecimentos em Engenharia Civil - Instalações Hidráulicas Prediais

Perda de Carga Localizada, Acessórios de Tubulação

Considerando a questão: "Qual a perda de carga singular em um conduto de 100 m, diâmetro de 100 mm, com um fluido escoando a 2 m/s, apresentando as seguintes singularidades rosqueadas na tubulação: válvula globo totalmente aberta e cotovelo de 45º com raio normal?".

O que acontece com a perda de carga singular do escoamento anteriormente mencionado se a viscosidade do fluido que escoa aumentar em 20% e se a válvula globo for totalmente fechada?

A) A viscosidade é diretamente proporcional à perda de carga singular, pois ela é um fator determinante para calcularmos o número de Reynolds. Se ela aumenta em 20%, a perda de carga singular também aumenta em 20%. O fechamento completo da válvula globo aumenta em 100% sua perda de carga singular.

B) A viscosidade é diretamente proporcional à perda de carga singular, pois ela é um fator determinante para calcularmos o número de Reynolds. Se ela aumenta em 20%, a perda de carga singular também aumenta em 20%. O fechamento da válvula não altera a perda de carga, seu Ks é constante, independentemente da abertura da válvula.

C) A perda de carga singular depende apenas de fatores geométricos das singularidades, logo qualquer mudança na viscosidade do fluido afetará apenas a perda de carga linear. O fechamento completo da válvula globo aumenta em 100% sua perda de carga singular.

D) A viscosidade é diretamente proporcional à perda de carga singular, pois ela é um fator determinante para calcularmos o número de Reynolds. Se ela aumenta em 20%, a perda de carga singular também aumenta em 20%.

O fechamento completo da válvula globo estanca o escoamento, o que significa que ela ficará em repouso, logo seu Ks tende ao infinito, gerando uma perda de carga tão grande que simplesmente para o escoamento.

E) A perda de carga singular depende apenas de fatores geométricos das singularidades, logo qualquer mudança na viscosidade do fluido afetará apenas a perda de carga linear.

O fechamento completo da válvula globo estanca o escoamento, o que significa que ela ficará em repouso, assim, seu Ks tende ao infinito, gerando uma perda de carga tão grande que simplesmente para o escoamento.
Verificar Resposta Estudar Cards Todas as Questões

Vamos testar seus conhecimentos em Engenharia Civil - Construção Civil

Alvenaria: Técnicas construtivas

Durante o levantamento, devemos aferir o nivelamento e o prumo de uma parede em blocos cerâmicos:

A) Somente se houver um embarrigamento ou desnivelamento visível.

B) Ao levantar 1,0 m a parede.

C) Somente na última fiada.

D) A cada fiada executada.

E) A cada 3 fiadas executadas.
Verificar Resposta Estudar Cards Todas as Questões

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

Ética Empresarial e Profissional: Noções Gerais

A partir dos anos 80, a questão da ética começou a ganhar mais destaque e importância nas rotinas das empresas brasileiras. Indique a alternativa que contém os fatores que contribuem para essa mudança.

A) O enxugamento dos cargos de comando; a competição interna pelos cargos mais elevados; a conquista de maior autonomia pelos empregados.

B) O enxugamento dos cargos de comando; a competição externa pelos cargos mais elevados; a conquista de maior autonomia pelos empregados.

C) O enxugamento dos cargos operacionais; a competição interna pelos cargos mais elevados; a conquista de maior autonomia pelos empregados.

D) O enxugamento dos cargos operacionais; a competição interna pelos cargos mais elevados; as parcerias com os fornecedores.

E) Maior contratação para os cargos operacionais; a competição interna pelos cargos mais elevados; a conquista de maior autonomia pelos empregados.
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á 45 usuários muito felizes estudando em nosso site.