Java

Números primos em Java

Números primos em Java são os números naturais que têm apenas dois divisores diferentes: o 1 e ele mesmo.

Exemplo de números primos:

2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97, …:

import  java.util.Scanner;

 public class NumerosPrimos {
    public static void main(String[] args) 
    {
        int n, aux=0;
        Scanner sc = new Scanner(System.in);
        System.out.print("Digite um número inteiro: ");
        n  = sc.nextInt();        
        
        //calcula a qtde. de números que são divisíveis por 'n' (aux) 
        for(int i=1; i<=n; i++)
        {
            if(n % i == 0)
                aux+=1;
        }
        
        int[] numerosDivisiveis; //define o vetor, sendo apenas uma referência 
        numerosDivisiveis = new int[aux]; //aloca x posições (aux) p/ o vetor              
        
        if(aux > 2) //se qtde de números divisíveis por 'n' (aux) for maior que 2...  
        {          
          for(int i=0, j=1; i<=aux; j++)
          {
              /* Se o resto da divisão por 'j' (contador do 1 até 'aux') 
              * do número informado for igual a zero (for divisível)... */        
              if(n % j == 0) 
              {                    
                 numerosDivisiveis[i] = j; //armazena esse valor no vetor 
                 //soma uma unidade ao contador do 'aux' (qtde. de posições do vetor)
                 i++; 
              }
           /*Se todo o vetor for preenchido, parar com o laço para se evitar o loop 
           infinito
              if(i == aux){ break; }                                                                         
          }
            
          System.out.print(n + " não é primo!\n");
          System.out.print(n + " eh divisivel por: ");
            
          for(int i=0; i<aux-1; i++) //Mostra os números divisíveis por 'n'
          {
              System.out.print(numerosDivisiveis[i] + ", ");            
          }
          System.out.print("e "+ numerosDivisiveis[aux-1] + ".\n\n");            
      }
      else //Se o valor informado for primo...
      {
          System.out.print(n + " é primo!\n"); 
          System.out.print(n + " eh divisivel por 1 e por ele mesmo.\n\n"); 
      }
  }      
 }
DOMINE O JAVA WEB ATRAVÉS DE AULAS PASSO A PASSO, DO BÁSICO AO AVANÇADO!

Domine as boas práticas com projetos práticos que vão te ajudar a desenvolver sistemas e se destacar no mercado de programação.

Clique na imagem abaixo e conheça mais detalhes do nosso curso:

Link do curso: https://go.hotmart.com/S90628636G?src=siteCB

Equação do segundo grau em Java

Dúvidas ou sugestões? Deixem nos comentários! Para mais dicas, acesse o nosso canal no YouTube:
https://youtube.com/criandobits

Bene Silva Júnior

Bacharel em Sistemas de Informação pelo Instituto Paulista de Pesquisa e Ensino IPEP. Apaixonado por tecnologias e games do tempo da vovó!

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *