Crivo de Eratóstenes Simples em Java
Publicado por Perfil removido (última atualização em 30/07/2012)
[ Hits: 8.191 ]
Versão do crivo em Java.
Procurou-se usar algo que permitisse uma capacidade melhor e maior de armazenamento dos números encontrados usando recursos próprios e particulares desta linguagem.
A classe sieve001 foi criada com inicial lowercase para manter o padrão com o nome dos outros arquivos já publicados.
Pode-se substitui o 23.0 do Math.pow(2.0, 23.0) - 1 por um número maior a fim de se tabular um conjunto maior.
Para Math.pow(2.0, 31.0) - 1 a demora é absurda.
As variáveis foram nomeadas de forma abusiva, particularmente uma notação "austroHungara" sem os agravantes.
import java.lang.String;
import java.lang.Long;
import java.util.ArrayList;
public class sieve001 {
static final long longLimit = (long) Math.pow(2.0, 23.0) - 1;
public static void main(String args[]) {
ArrayList<Long> longPrimes = new ArrayList<Long>();
long longNumber=5;
int intNext=0, intIndex=0;
double doubleSquareRoot=0.0;
longPrimes.add(new Long(2));
longPrimes.add(new Long(3));
do {
intNext = 0;
doubleSquareRoot = Math.sqrt(longNumber);
while ((double) longPrimes.get(++intNext)<doubleSquareRoot && (longNumber%longPrimes.get(intNext))!=0);
if ((double) longPrimes.get(intNext)>doubleSquareRoot) longPrimes.add(new Long(longNumber));
longNumber+=((longNumber%3==2)?2:4);
} while (longNumber<longLimit);
for (intIndex=0; intIndex<longPrimes.size(); intIndex++) System.out.print (String.valueOf(longPrimes.get(intIndex)) + " ");
System.out.println ();
}
}
Pequeno algoritmo para determinar se um número é primo ou não entre 1 e 10000
Diferenca entre meses - um método de busca simples
Algoritmo para Gerar um Sudoku NxN válido
Nenhum comentário foi encontrado.
IA Turbina o Desktop Linux enquanto distros renovam forças
Como extrair chaves TOTP 2FA a partir de QRCODE (Google Authenticator)
Linux em 2025: Segurança prática para o usuário
Desktop Linux em alta: novos apps, distros e privacidade marcam o sábado
IA chega ao desktop e impulsiona produtividade no mundo Linux
Atualizando o Fedora 42 para 43
Como saber se o seu e-mail já teve a senha vazada?
Como descobrir se a sua senha já foi vazada na internet?
Mint Xfce não mantém a conexão no wi-fi (2)
Problemas com Driver NVIDIA (5)
Warcraft II Remastered no Linux? (8)









