CriandoBits
Identifique-se Entrar Esqueceu a senha? Esqueci minha senha

Java - Números primos

Por Benedito Silva Júnior - publicado em 15/07/2016



Números primos 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"); } } }


 
Voltar a pagina anteriorVoltarSubir ao topo da páginaTopo