Você está aqui: Java ::: Desafios e Lista de Exercícios Resolvidos ::: Recursão (Recursividade)

Como contar de 10 até 0 usando recursividade em Java - Funções recursivas em Java - Desafio de Programação Resolvido em Java

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

Escreva um método recursivo em Java que conta e exibe os valores de 10 até 0. Seu método deverá possuir a seguinte assinatura:

public static void contarRecursivamente(int n){
  // sua implementação aqui
}
Veja que o método deverá receber o valor 10 e efetuar novas chamadas a si mesmo até que os valores de 10 até 0 sejam exibidos. O ponto de parada da recursividade é a exibição do valor 0.

Sua saída deverá ser parecida com:

10 9 8 7 6 5 4 3 2 1 0
Resposta/Solução:

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

Este trecho de código ou resolução de exercício faz parte do Super Pack 12.000 Dicas e Truques de Programação e 1.500 Exercícios Resolvidos em Java, Python, VisuAlg, Portugol, Delphi, C#, C, C++, VB.NET, Golang, Pascal, Ruby, PHP, e várias outras linguagens.

Aprenda a programar resolvendo problemas do mundo real. Tudo em português, com comentários em português.

Quero Ser Apoiador(a)


Link para compartilhar na Internet ou com seus amigos:

Java ::: Desafios e Lista de Exercícios Resolvidos ::: Arrays e Matrix (Vetores e Matrizes)

Exercícios Resolvidos de Java - Como usar o laço for para percorrer os elementos de um array e exibí-los na ordem original e invertidos

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

Considere o seguinte array de inteiros:

// um array de inteiros contendo sete elementos
int valores[] = {6, 9, 12, 34, 83, 20, 17};
Escreva um programa Java console que usa um laço for para percorrer todos os elementos deste vetor duas vezes e exibí-los na ordem original e invertidos (somente na exibição, ou seja, não é necessário alterar a ordem dos elementos no array).

Seu programa deverá exibir a seguinte saída:

Ordem original:
6  9  12  34  83  20  17  

Ordem inversa:
17  20  83  34  12  9  6 
Resposta/Solução:

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

public static void main(String[] args){
  // um vetor de inteiros contendo sete elementos
  int valores[] = {6, 9, 12, 34, 83, 20, 17};
    
  // primeiro vamos exibir os valores do vetor na ordem original
  System.out.println("Ordem original:\n");

  for(int i = 0; i < valores.length; i++){
    System.out.print(valores[i] + "  ");
  }

  // agora vamos exibir na ordem inversa
  System.out.println("\n\nOrdem inversa:\n");

  for(int i = valores.length - 1; i >= 0; i--){
    System.out.print(valores[i] + "  ");
  }
}



Java ::: Dicas & Truques ::: Matemática e Estatística

Como calcular porcentagem em Java - Como efetuar cálculos de porcentagem em Java

Quantidade de visualizações: 54750 vezes
Cálculos de porcentagens estão presentes em boa parte das aplicações que desenvolvemos. Porém, há momentos em que a mente trava e não conseguimos lembrar com clareza como estes cálculos são feitos, principalmente em Java.

Esta anotação tem o objetivo de ser uma fonte de pesquisa para os momentos em que suas habilidades matemáticas insistirem em continuar ocultas.

Ex: 1 - Suponhamos que um produto que custe R$ 178,00 sofra um acréscimo de 15%. Qual o valor final do produto? Veja o código em Java:

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

// Algoritmo que calcula porcentagem em Java
package estudos;

public class Estudos {
  public static void main(String[] args) {
    // variáveis usadas na resolução do problema
    double valor, percentual, valor_final;

    valor = 178.00; // valor original
    percentual = 15.0 / 100.0; // 15%
    valor_final = valor + (percentual * valor);

    // mostra o resultado
    System.out.println("O valor final do produto é: " + valor_final);

    // O resultado será 204,70
  }
}

Ex: 2 - Um produto, cujo valor original era de R$ 250,00, teve um desconto de 8%. Qual foi seu valor final? Veja o código em Java:

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

// Algoritmo que calcula porcentagem em Java
package estudos;

public class Estudos {
  public static void main(String[] args) {
    // variáveis usadas na resolução do problema
    double valor, percentual, valor_final;

    valor = 250.00; // valor original
    percentual = 8.0 / 100.0; // 8%
    valor_final = valor - (percentual * valor);

    // mostra o resultado
    System.out.println("O valor final do produto é: " + valor_final);
  
    // O resultado será 230,00
  }
}

Ex: 3 - Em um concurso de perguntas e respostas, um jovem acertou 72 das 90 perguntas apresentadas. Qual foi a porcentagem de acertos? E a porcentagem de erros? Veja o código em Java:

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

// Algoritmo que calcula porcentagem em Java
package estudos;

public class Estudos {
  public static void main(String[] args) {
    // variáveis usadas na resolução do problema
    double perguntas, acertos;

    perguntas = 90.0;
    acertos = 72.0;

    // mostra a porcentagem de acertos
    System.out.print("Porcentagem de acertos: ");
    System.out.println(((acertos / perguntas) * 100) + "%");

    // mostra a porcentagem de erros
    System.out.print("Porcentagem de erros: ");
    System.out.println((((perguntas - acertos) / perguntas) * 100) + "%");

    // Os resultados serão 80% e 20%
  }
}

Ex: 4 - Um aparelho de CD foi adquirido por R$ 300,00 e revendido por R$ 340,00. Qual foi a porcentagem de lucro na transação? Veja o código em Java:

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

// Algoritmo que calcula porcentagem em Java
package estudos;

public class Estudos {
  public static void main(String[] args) {
    // variáveis usadas na resolução do problema
    double valor_anterior, novo_valor, porcentagem_lucro;

    valor_anterior = 300.0; // valor anterior
    novo_valor = 340.0; // valor novo

    // calcula a porcentagem de lucro
    // efetua o cálculo
    porcentagem_lucro = ((novo_valor * 100) / valor_anterior) - 100;

    System.out.println("A porcentagem de lucro foi de: " +
      porcentagem_lucro + "%");

    // O resultado será 13,33
  }
}

Ex: 5 - Uma loja repassa 5% do lucro a seus vendedores. Se um produto custa R$ 70,00, qual o valor em reais repassado a um determinado vendedor? Veja o código em Java:

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

// Algoritmo que calcula porcentagem em Java
package estudos;

public class Estudos {
  public static void main(String[] args) {
    // variáveis usadas na resolução do problema
    double valor, percentual, comissao;

    valor = 70.0; // valor do produto
    percentual = 5.0 / 100.0; // 5%

    // calcula a comissão
    comissao = percentual * valor;

    // mostra o resultado
    System.out.println("O valor repassado ao vendedor é: " + comissao);

    // O resultado será 3,5
  }
}



Java ::: Estruturas de Dados ::: Lista Ligada Simples

Estruturas de Dados em Java - Como inserir nós no final de uma lista singularmente ligada em Java

Quantidade de visualizações: 8003 vezes
Esta dica mostra como inserir nós no final de uma lista singularmente ligada. A classe usada para representar cada nó é a seguinte (No.java):

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

// classe No
public class No{
  public int valor;
  public No proximo;
}
// fim da classe No

Note que cada nó contém apenas um valor inteiro e um ponteiro para o próximo nó. Ao analisar o código você perceberá que tanto a inserção no final quanto a exibição dos nós são feitas usando métodos. Isso permitirá o reaproveitamento deste código em suas próprias implementações. Vamos ao código para a lista singularmente ligada (Lista.java):

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

public class Lista {
    No inicio, fim; // início e fim da lista

    // método que permite exibir os valores de
    // todos os nós da lista
    public void exibir() {
        // vamos obter uma referência ao início da lista
        No no = inicio;

        if (no != null) { // a lista não está vazia
            while (no != null) { // enquanto a lista não estiver vazia
                System.out.println(no.valor);
                no = no.proximo; // pula para o nó seguinte
            }
        } 
        else {
            System.out.println("A lista está vazia\n\n");
        }
    }

    // método que permite inserir nós no
    // final da lista.
    // veja que o método recebe o valor a ser
    // armazenado em cada nó
    public void inserirFinal(int v) {
        No novo = new No(); // cria um novo nó
        novo.valor = v;
        // é o nó no final, portanto não deverá apontar para nenhum
        // outro nó
        novo.proximo = null;

        // verifica se a lista está vazia
        if (inicio == null) {
            // novo aponta para o novo nó
            inicio = novo;
            // final deve apontar para o novo nó também
            fim = novo;
        } 
        else { // não está vazia....vamos inserir o nó no final da lista
            // o campo próximo do último nó aponta para o nó recém-criado
            fim.proximo = novo;
            // o campo fim aponta para o novo nó...o campo inicio permanece igual
            fim = novo;
        }
    }
}

Compile as classes No.java e Lista.java e vamos escrever um aplicativo de teste (Main.java):

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

public class Main {
    public static void main(String[] args) {
        // vamos criar uma nova lista
        Lista lista = new Lista();

        // vamos inserir quatro valores no
        // finalo da lista
        lista.inserirFinal(45);
        lista.inserirFinal(3);
        lista.inserirFinal(98);
        lista.inserirFinal(17);

        // exibe os valores na lista
        lista.exibir();
    }
}

Ao executar o aplicativo teremos o seguinte resultado:

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

45
3
98
17



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.