twocoders.de
 

programme/php/siebdeseratosthenes/sieberatosthenes.php


1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
<?php
    define
("GROESSEZAHLENFELD",200);
    
$Zahlenfeld = array();
    
$Zahlenfeld[1] = false;
    for(
$Fuellen=2$Fuellen <= GROESSEZAHLENFELD$Fuellen ++)
    {
        
$Zahlenfeld[$Fuellen] = true;
    }
    for(
$Schritte 4$Schritte <= GROESSEZAHLENFELD$Schritte += 2)
    {
        
$Zahlenfeld[$Schritte] = false;    
    }
    
$TestGrenze round(sqrt(GROESSEZAHLENFELD),0) + 1;
    
$Teiler 3;
    while(
$Teiler <= $TestGrenze)
    {
        
$TeilerSich $Teiler;
        
$Faktoren 0;
        while(
$Faktoren <= GROESSEZAHLENFELD)
         {
            
$Faktoren $Faktoren $Teiler $TeilerSich;     
            
$Zahlenfeld[$Faktoren] = false;    
            
$TeilerSich 0;
        }
         
$Teiler += 2;
        if(
$Zahlenfeld[$Teiler] === false)
        {
            
$Teiler += 2;
        }
    }
    echo 
"<table width=\"236\" border=\"1\" cellspacing=\"2\" cellpadding=\"0\">\n";
    echo 
"<tr>\n";
    for(
$Auslesen=1$Auslesen <= GROESSEZAHLENFELD$Auslesen ++)
    {
        if(
$Zahlenfeld[$Auslesen] === true)
        {
            echo 
"<td><font color=\"red\"><b>$Auslesen</b></font></td>\n";
        }
        else
        {
            echo 
"<td><strike><b>$Auslesen</b></strike></td>\n";
        }
         if(
$Auslesen%10 == && $Auslesen != GROESSEZAHLENFELD)
         {
            echo 
"</tr>\n";
            echo 
"<tr>\n";
        }
    }
    echo 
"</tr>\n";
    echo 
"</table>\n";
?>