Diferencia entre revisiones de «Implementación de algoritmos de teoría de números/Criba de Eratóstenes»
Contenido eliminado Contenido añadido
m Revertidos los cambios de 189.189.143.242 (disc.) a la última edición de 186.154.128.75 Etiqueta: Reversión |
Cambio de tag |
||
Línea 24:
=== Ada ===
<
procedure Eratosthenes(Result : out Integer) is
size : constant := 8190;
Línea 56:
Result := count;
end Eratosthenes;
</syntaxhighlight>
=== BASIC ===
<
defint a-z
size=50
Línea 78:
next
print
</syntaxhighlight>
=== Bash ===
<
#!/bin/bash
Línea 103:
exit 0
</syntaxhighlight>
=== C ===
<
void criba(unsigned char m[], int tam){
int i, h;
Línea 122:
}
}
</syntaxhighlight>
=== C++ ===
<
void criba(bool m[], int tam){
m[0] = false;
Línea 139:
}
}
</syntaxhighlight>
=== C# ===
==== Versión 1 ====
<
using System;
using System.Collections;
Línea 197:
}
}
</syntaxhighlight>
==== Versión 2 ====
<
using System;
using System.Text;
Línea 232:
}
}
</syntaxhighlight>
=== Fortran ===
<
top = 50
Línea 259:
pause
end
</syntaxhighlight>
=== Haskell ===
==== Versión 1 ====
<
eratostenes :: [Int] -> [Int] -- Criba de Eratóstenes (de una lista dada [2..n] te deja sólo los números primos)
eratostenes [] = []
eratostenes (x:xs) | not (null xs) && x^2 > last xs = (x:xs)
| otherwise = x: eratostenes [y | y <- xs, y `mod` x /= 0]
</syntaxhighlight>
==== Versión 2 ====
<
erastotenes :: Int -> [Int]
erastotenes n = erastotenes2 [x|x <- [2..n]] 0
Línea 279:
| n == length lista-1 = lista
|otherwise=erastotenes2 [x|x <-lista,(x `mod` lista!!n)/=0||x==lista!!n] (n+1)
</syntaxhighlight>
=== Java ===
<
import java.util.ArrayList;
import java.util.List;
Línea 309:
}
</syntaxhighlight>
=== Pascal ===
<
program Eratosthenes;
Línea 327:
for i:=1 to N do if a[i] then write(i:4);
end.
</syntaxhighlight>
=== Perl ===
<
#!/usr/bin/perl
$n = 50;
Línea 353:
}
}
</syntaxhighlight>
=== PHP ===
<
function eratosthenes($n)
{
Línea 383:
eratosthenes(50);
</syntaxhighlight>
=== Python ===
Python 3:
<
def criba_eratostenes(n):
multiplos = set()
Línea 396:
criba_eratostenes(1000)
</syntaxhighlight>
=== Ruby ===
<
top = Integer(ARGV.shift || 100)
sieve = []
Línea 413:
end
puts sieve.compact.join " "
</syntaxhighlight>
=== Visual Basic .NET ===
<
Module Eratosthenes
Línea 440:
End Sub
End Module
</syntaxhighlight>
=== R ===
<
primos<-function(n){
posibles<-seq(1,n,by=2)
Línea 456:
}
primos(10000)
</syntaxhighlight>
[[Categoría:Libro:Implementación de algoritmos de teoría de números]]
|