Crivo de Eratóstenes Simples em Java
Publicado por Perfil removido (última atualização em 30/07/2012)
[ Hits: 8.178 ]
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 (); } }
Planilha de cálculo para multa judicial
Cadastramento de Produtos com .JOptionPane
Algoritmo para Gerar um Sudoku NxN válido
Gerador de números aleatórios em Java
Nenhum comentário foi encontrado.
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
Novos apps de produtividade, avanços em IA e distros em ebulição agitam o universo Linux
Digitando underscore com "shift" + "barra de espaços"
Como ativar a lixeira e recuperar aquivos deletados em um servidor Linux
Como mudar o nome de dispositivos Bluetooth via linha de comando
É normal não gostar de KDE? (6)
Impressora epson l6270 não funciona em Linux mint (0)
esqueci a senha do boot do notebook dell vostro 3300 (3)