next up previous
Siguiente: Arrays bidimensionales Subir: PIIt2cas Anterior: La criba de Eratóstenes

La criba de Eratóstenes

public class p2t2p5{
  public static void main(String[] args){
  // Cálculo de los numeros primos entre 1 y MAX
  // utilizando el algoritmo de  Eratostenes 
  int i,j;      final int MAX = 70;
  boolean[] esPrimo = new boolean[MAX];
  // Se inicializa la tabla
  esPrimo[0] = false;    
  for (i = 0; i< MAX;i++) esPrimo[i] = true;
  // Empieza la criba 
  for(i = 2 ; i <= (MAX/2);i++)
     for(j = 2; j<=(MAX/i); j++) esPrimo[i*j - 1] = false;
  // Se cuenta el número de primos encontrados
  j = 0; for(i=1;i<MAX;i++)  	if (esPrimo[i])  j++;
  System.out.println("Hasta el "+MAX+" hay "+j+" primos");
  for(i=1;i<MAX;i++) 	if  (esPrimo[i]) 
          System.out.print(i+1+" ");}}
con la salida:
Hasta el 70 hay 19 primos
2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67



VL - UPF