ontbinden-in-priemfactoren

Gesponsorde koppelingen

PHP script bestanden

  1. ontbinden-in-priemfactoren

« Lees de omschrijving en reacties

Code (php)
PHP script in nieuw venster Selecteer het PHP script
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
52
53
54
55
56
57
58
59
60
61
62
63
64
65
<?php
echo "<html><body>";
if (is_numeric($_POST['getal'])) // controleren of de input wel een getal is
{
    $input_getal = $_POST['getal'];
    if ($input_getal<2) echo 'Het getal dat ontbonden moet worden moet minimaal 2 zijn.';
    else
    {
        $input_getal_wortel = sqrt($input_getal);
        $priemgetallen = Array(2); // array waar alle gevonden priemgetallen in komen
        $aantal_priemgetallen_gevonden = 1; // spreekt voor zich
        $getal_proberen = 3; // het getal waarvan hij kijkt of het een priemgetal is
        do
        {
            $is_priem = true; // of $getal_proberen een priemgetal is
            $delen_door = 0; // door welk priemgetal uit $priemgetallen hij probeert te delen
            do
            {
                if ($getal_proberen%$priemgetallen[$delen_door]==0) $is_priem = false; // kijken of $getal_proberen deelbaar is
                $delen_door++;
            }

            while(($priemgetallen[$delen_door]<($getal_proberen/2))&&$is_priem&&(isset($priemgetallen[$delen_door])));
            if ($is_priem)
            {

                $priemgetallen[$aantal_priemgetallen_gevonden] = $getal_proberen; // als $getal_proberen een priemgetal is hem in de array $priemgetallen zetten
                $aantal_priemgetallen_gevonden++;
            }

            $getal_proberen += 2;
        }

        while($getal_proberen<$input_getal_wortel);

        $priemfactoren = Array();
        $aantal_priemfactoren = 0; // het aantal priemfactoren hij al gevonden heeft
        
        $momenteel_getal = $input_getal; // het getal dat steeds door een priemgetal gedeeld wordt
        $priem_tel = 0;

        while (($momenteel_getal>1)&&(isset($priemgetallen[$priem_tel])))
        {

            if ($momenteel_getal%$priemgetallen[$priem_tel]==0)
            {

                $momenteel_getal /= $priemgetallen[$priem_tel];
                $priemfactoren[$aantal_priemfactoren] = $priemgetallen[$priem_tel];
                $aantal_priemfactoren++;
            }

            else
            {
                $priem_tel++;
            }
        }

        $teller = 0;
        foreach($priemfactoren as $factor)
        {

            echo $factor;
            $teller++;
            if (isset($priemfactoren[$teller])) echo " * ";
        }
    }
}

echo "<br><br>";
echo '<form action="ontbinden_in_priemfactoren.php" method="POST">';
echo 'Getal om te ontbinden: <input type="text" name="getal" size="20"><br>';
echo '<input type="submit" value="Ontbind">';
echo '</form></body></html>';
?>

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.