Ejemplo n.º 1
0
function reducer($num, $sieve, $primes, $target)
{
    $negSieve = sieve($num, $primes);
    $new = $primes;
    foreach ($negSieve as $key => $value) {
        if ($value == 0 && isPrime($key)) {
            if (!in_array($key, $primes)) {
                $new[] = $key;
            }
        }
    }
    // die();
    return $new;
}
Ejemplo n.º 2
0
function reducer($num, $sieve, $primes, $target)
{
    $negSieve = sieve($num, $primes);
    $new = $primes;
    foreach ($negSieve as $key => $value) {
        if ($value == 0 && isPrime($key, $primes)) {
            if (!in_array($key, $primes)) {
                $new[] = $key;
                if (count($new) - 1 == $target) {
                    result(104743, $new[$target - 1]);
                    die;
                }
            }
        }
    }
    return $new;
}
Ejemplo n.º 3
0
simpleudcall();
$t = end_test($t, "simpleudcall");
mandel();
$t = end_test($t, "mandel");
mandel2();
$t = end_test($t, "mandel2");
ackermann(7);
$t = end_test($t, "ackermann(7)");
ary(50000);
$t = end_test($t, "ary(50000)");
ary2(50000);
$t = end_test($t, "ary2(50000)");
ary3(2000);
$t = end_test($t, "ary3(2000)");
fibo(30);
$t = end_test($t, "fibo(30)");
hash1(50000);
$t = end_test($t, "hash1(50000)");
hash2(500);
$t = end_test($t, "hash2(500)");
heapsort(20000);
$t = end_test($t, "heapsort(20000)");
matrix(20);
$t = end_test($t, "matrix(20)");
nestedloop(12);
$t = end_test($t, "nestedloop(12)");
sieve(30);
$t = end_test($t, "sieve(30)");
strcat(200000);
$t = end_test($t, "strcat(200000)");
total($t0, "Total");
<?php

/**
 * Classic Algorithms 03 - Sieve of Eratosthenes - 
 * 
 * @param {integer} $number 
 * @return {array} array with all primes found
 */
function sieve($number)
{
    for ($i = 1; $i <= $number; $i++) {
        $all_numbers[$i] = $i;
    }
    for ($i = 2; $i <= sqrt($number); $i++) {
        if ($all_numbers[$i]) {
            for ($j = $i; $j <= $number * $i; $j++) {
                $all_numbers[$j * $i] = 0;
            }
        }
    }
    return array_filter($all_numbers);
}
$primes = sieve(20);
echo "The Sieve of Eratosthenes of 20 are : ";
foreach ($primes as $prime) {
    echo "{$prime}, ";
}
Ejemplo n.º 5
0
function main_function()
{
    for ($i = 0; $i < 100; ++$i) {
        ackermann(4);
        ary(50000);
        ary2(50000);
        ary3(100);
        fibo(23);
        hash1(10000);
        hash2(200);
        heapsort(2000);
        matrix(3);
        nestedloop(8);
        sieve(5);
        strcat(80000);
        binary_trees(7);
        fannkuch(6);
    }
}
 public function setUp()
 {
     $this->sieve = sieve(1000);
 }
Ejemplo n.º 7
0
<?php

/*
 $Id: sieve.php,v 1.2 2004/04/21 14:23:45 tim Exp $
 http://www.bagley.org/~doug/shootout/
*/
$n = 18;
sieve($n);
function sieve($n)
{
    $count = 0;
    while ($n-- > 0) {
        $count = 0;
        $flags = range(0, 8192);
        for ($i = 2; $i < 8193; $i++) {
            if ($flags[$i] > 0) {
                for ($k = $i + $i; $k <= 8192; $k += $i) {
                    $flags[$k] = 0;
                }
                $count++;
            }
        }
    }
    print "Count: {$count}\n";
}
Ejemplo n.º 8
0
function main_function()
{
    ackermann(2);
    ary(500);
    ary2(500);
    ary3(5);
    fibo(13);
    hash1(100);
    hash2(20);
    heapsort(200);
    matrix(3);
    nestedloop(3);
    sieve(1);
    strcat(80);
    binary_trees(3);
    fannkuch(6);
}
Ejemplo n.º 9
0
<?php

function sieve($n)
{
    $count = 0;
    while ($n-- > 0) {
        $count = 0;
        $flags = range(0, 92);
        for ($i = 2; $i < 93; $i++) {
            if ($flags[$i] > 0) {
                for ($k = $i + $i; $k <= 92; $k += $i) {
                    $flags[$k] = 0;
                }
                $count++;
            }
        }
    }
    print "Count: {$count}\n";
}
sieve(3);
Ejemplo n.º 10
0
 function sieve($s)
 {
     $h = $s->head();
     return new Stream($h, function () use($h, $s) {
         return sieve($s->tail()->filter(function ($x) use($h) {
             return $x % $h != 0;
         }));
     });
 }
Ejemplo n.º 11
0
}
$t0 = $t = start_test();
mandel();
$t = end_test($t, "mandel");
mandel2();
$t = end_test($t, "mandel2");
ackermann();
$t = end_test($t, "ackermann()");
ary(500000, 2);
$t = end_test($t, "ary(50000)");
ary2(50000, 47);
$t = end_test($t, "ary2(50000)");
ary3(2000);
$t = end_test($t, "ary3(2000)");
fibo();
$t = end_test($t, "fibo(30)");
hash1(590000);
$t = end_test($t, "hash1(50000)");
hash2(1900);
$t = end_test($t, "hash2(500)");
heapsort(76000);
$t = end_test($t, "heapsort(20000)");
matrix(99);
$t = end_test($t, "matrix(20)");
nestedloop(14);
$t = end_test($t, "nestedloop(12)");
sieve(142);
$t = end_test($t, "sieve(30)");
strcat(8700000);
$t = end_test($t, "strcat(200000)");
total($t0, "Total");
Ejemplo n.º 12
0
 static function sieve()
 {
     Timing::Start("sieve.php");
     sieve(18);
     Timing::Stop();
 }