Crivo de Eratóstenes Simples em Java
Publicado por Perfil removido (última atualização em 30/07/2012)
[ Hits: 8.239 ]
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 ();
}
}
Determinante de uma matriz de ordem 3.
Pesquisa Ternária em um vetor ordenado
Simples applet para determinar invertido do digitado
Nenhum comentário foi encontrado.
Cirurgia para acelerar o openSUSE em HD externo via USB
Void Server como Domain Control
Modo Simples de Baixar e Usar o bash-completion
Monitorando o Preço do Bitcoin ou sua Cripto Favorita em Tempo Real com um Widget Flutuante
[Resolvido] VirtualBox can't enable the AMD-V extension
Como verificar a saúde dos discos no Linux
Como instalar , particionar, formatar e montar um HD adicional no Linux?
Como automatizar sua instalação do Ubuntu para desenvolvimento de software.
Quais os códigos mais dificeis que vcs sabem fazer? (11)
systemd-resol... precisa ser reiniciado periodicamente [RESOLVIDO] (7)









