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 ===
<sourcesyntaxhighlight lang="Ada">
procedure Eratosthenes(Result : out Integer) is
size : constant := 8190;
Línea 56:
Result := count;
end Eratosthenes;
</syntaxhighlight>
</source>
 
=== BASIC ===
<sourcesyntaxhighlight lang="vb">
defint a-z
size=50
Línea 78:
next
print
</syntaxhighlight>
</source>
 
=== Bash ===
<sourcesyntaxhighlight lang="Bash">
#!/bin/bash
 
Línea 103:
 
exit 0
</syntaxhighlight>
</source>
 
=== C ===
<sourcesyntaxhighlight lang="c">
void criba(unsigned char m[], int tam){
int i, h;
Línea 122:
}
}
</syntaxhighlight>
</source>
 
=== C++ ===
<sourcesyntaxhighlight lang="cpp">
void criba(bool m[], int tam){
m[0] = false;
Línea 139:
}
}
</syntaxhighlight>
</source>
 
=== C# ===
==== Versión 1 ====
<sourcesyntaxhighlight lang="csharp">
using System;
using System.Collections;
Línea 197:
}
}
</syntaxhighlight>
</source>
 
==== Versión 2 ====
<sourcesyntaxhighlight lang="csharp">
using System;
using System.Text;
Línea 232:
}
}
</syntaxhighlight>
</source>
 
=== Fortran ===
<sourcesyntaxhighlight lang="Fortran">
top = 50
 
Línea 259:
pause
end
</syntaxhighlight>
</source>
 
=== Haskell ===
==== Versión 1 ====
<sourcesyntaxhighlight lang="Haskell">
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>
</source>
 
==== Versión 2 ====
<sourcesyntaxhighlight lang="Haskell">
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>
</source>
 
=== Java ===
<sourcesyntaxhighlight lang="Java">
import java.util.ArrayList;
import java.util.List;
Línea 309:
}
</syntaxhighlight>
</source>
 
=== Pascal ===
<sourcesyntaxhighlight lang="Pascal">
program Eratosthenes;
 
Línea 327:
for i:=1 to N do if a[i] then write(i:4);
end.
</syntaxhighlight>
</source>
 
=== Perl ===
<sourcesyntaxhighlight lang="Perl">
#!/usr/bin/perl
$n = 50;
Línea 353:
}
}
</syntaxhighlight>
</source>
 
=== PHP ===
<sourcesyntaxhighlight lang="PHP">
function eratosthenes($n)
{
Línea 383:
 
eratosthenes(50);
</syntaxhighlight>
</source>
 
=== Python ===
Python 3:
<sourcesyntaxhighlight lang="Python">
def criba_eratostenes(n):
multiplos = set()
Línea 396:
 
criba_eratostenes(1000)
</syntaxhighlight>
</source>
 
=== Ruby ===
<sourcesyntaxhighlight lang="Ruby">
top = Integer(ARGV.shift || 100)
sieve = []
Línea 413:
end
puts sieve.compact.join " "
</syntaxhighlight>
</source>
 
=== Visual Basic .NET ===
<sourcesyntaxhighlight lang="vbnet">
Module Eratosthenes
 
Línea 440:
End Sub
End Module
</syntaxhighlight>
</source>
=== R ===
<sourcesyntaxhighlight lang="r">
primos<-function(n){
posibles<-seq(1,n,by=2)
Línea 456:
}
primos(10000)
</syntaxhighlight>
</source>
 
[[Categoría:Libro:Implementación de algoritmos de teoría de números]]