Você está aqui: Java ::: Desafios e Lista de Exercícios Resolvidos ::: Métodos, Procedimentos e Funções

Uma função Java que recebe um valor inteiro e informa se o mesmo é um número primo - Lista de Exercícios Resolvidos de Java

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

Um inteiro é um número primo se ele for divisível somente por 1 e por ele mesmo. Assim, 2, 3, 5 e 7 são primos, enquanto 4, 6, 8 e 9 não são.

Escreva uma função Java que recebe um valor inteiro e informe se o mesmo é um número primo. Você deverá usar a seguinte assinatura para a função:

boolean primo(int valor){
  // implementação aqui
}
Note que a função retornará true (verdadeiro) se o valor for primo e false (falso) em caso contrário. Chame esta função a partir da função main() de forma que sua saída seja parecida com:

Informe um valor inteiro: 7
O numero informado é primo
Resposta/Solução:

Veja a resolução comentada deste exercício em 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) {
    int numero;
  
    // para ler a entrada do usuário
    Scanner entrada = new Scanner(System.in);
    
    // vamos pedir para o usuário informar um número inteiro
    System.out.print("Informe um valor inteiro: ");
    numero = Integer.parseInt(entrada.nextLine());
  
    // vamos verificar se o valor informado é um número primo
    if(primo(numero)){
      System.out.println("O numero informado é primo.");             
    }
    else{
      System.out.println("O numero informado NÃO é primo.");     
    }     
  }
  
  // função que retorna verdadeiro se o número fornecido
  // como argumento for primo
  public static boolean primo(int valor){
    // se o valor fornecido for 7, a variável i do laço contará
    // de 2 até 7 / 2 (divisão inteira), ou seja, 3. Se o 
    // módulo de 7 por qualquer um dos valores neste intervalo 
    // for igual a 0, então o número não é primo
    for (int i = 2; i <= (valor / 2); i++) {
      if(valor % i == 0){
        return false; // não é primo
      }
    }
    
    return true;
  }
}


Link para compartilhar na Internet ou com seus amigos:

Java ::: Pacote java.lang ::: StringBuffer

Java do básico ao avançado - Como usar o método append() para adicionar mais conteúdo ao final de um StringBuffer

Quantidade de visualizações: 9139 vezes
O método append() da classe StringBuffer se torna útil quando precisamos adicionar mais conteúdo ao final de um objeto desta classe. Este método possui, no Java 7, as seguintes sobrecargas:

public StringBuffer append(Object obj)
public StringBuffer append(String str)
public StringBuffer append(StringBuffer sb)
public StringBuffer append(CharSequence s)
public StringBuffer append(CharSequence s, int start, int end)
public StringBuffer append(char[] str)
public StringBuffer append(char[] str, int offset, int len)
public StringBuffer append(boolean b)
public StringBuffer append(char c)
public StringBuffer append(int i)
public StringBuffer append(long lng)
public StringBuffer append(float f)
public StringBuffer append(double d)

Note que em todas as sobrecargas do método, o retorno é um objeto da classe StringBuffer. Mas, não é um novo objeto StringBuffer. É uma referência ao objeto StringBuffer já existente.

Veja um exemplo no qual usamos este método para adicionar mais duas palavras ao conteúdo do StringBuffer:

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

package estudos;

public class Estudos{
  public static void main(String[] args) {
    // um StringBuffer contendo uma frase
    StringBuffer frase = new StringBuffer("Gosto muito de programar");
    
    // vamos adicionar mais duas palavras ao final do StringBuffer
    frase.append(" em");
    frase.append(" Java");
    
    // agora mostramos o resultado
    System.out.println(frase);
    
    System.exit(0);  
  }
}

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

Gosto muito de programar em Java


Java ::: Dicas & Truques ::: Formatação de datas, strings e números

Java para iniciantes - Como controlar a quantidade de casas decimais na exibição de um valor double ou float

Quantidade de visualizações: 26518 vezes
Este trecho de código mostra como usar o método printf() do Java 5.0 para definir a quantidade de casas decimais na exibição de um valor double.

Obs: Veja que há arredondamento durante a redução das casas decimais.

Eis 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;

public class Estudos{
  public static void main(String[] args){
    double valor = 54.235344213;
    // exibe o valor original
    System.out.println(valor);
    
    // exibe o valor com duas casas decimais
    System.out.printf("%.2f\n", valor);
 
    // exibe o valor com quatro casas decimais
    System.out.printf("%.4f\n", valor);
   
    // exibe o valor com cinco casas decimais
    System.out.printf("%.5f\n", valor);
 
    // exibe o valor com uma casa decimal
    System.out.printf("%.1f", valor);
  }
}

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

54.235344213
54,24
54,2353
54,23534
54,2


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: 8041 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



© 2025 Arquivo de Códigos - Todos os direitos reservados
Neste momento há 86 usuários muito felizes estudando em nosso site.