Horner-Schema mit PHP

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Horner-Schema mit PHP

    Horner-Schema mit PHP

    Hier ein Script, dass den Horner-Algorithmus beinhaltet. Das Script erstellt euch eine Funktion eines bestimmten Polynomgrades mit zufälligen Coeffizienten und rechnet den Funktionswert mit dem Horner-Schema für den von euch eingetragenen X-Wert aus.

    horner_schema.php
    [code:1]<?php

    $polynomgrad = $_POST['polynomgrad']; // polynomgrad einlesen
    $xwert = $_POST['xwert']; // x-wert einlesen
    $coeffizienten_summe = $polynomgrad+1;

    function horner( $zwischenwert, $coeffizient, $xwert ) // Horner-Schema
    {
    $zwischenwert = ( $zwischenwert * $xwert ) + $coeffizient;

    return $zwischenwert;
    }

    function ausklammerung( $polynomgrad, $coeffizient, $xwert ) //Ausklammerung
    {
    for ( $x = 0; $x < $polynomgrad; $x++ )
    {
    if ( $x == 0 )
    {
    $zwischenwert[0] = $coeffizient[0];
    }
    $zwischenwert[$x+1] = horner( $zwischenwert[$x], $coeffizient[$x+1], $xwert );
    }

    return $zwischenwert[$polynomgrad];
    }

    function go( $polynomgrad, $coeffizienten_summe, $xwert, $polynomgrad )
    {
    for ( $co = 0; $co < $coeffizienten_summe; $co++ ) //Ausgabe der Funktion und Generierung der Coeffizienten
    {
    $coeffizient[$co] = rand( 1, 9 ); // Zufällige Generierung der Coeffizienten
    if( $co == $polynomgrad )
    {
    $funktion .= $coeffizient[$co];
    }
    else if( $co == $polynomgrad-1 )
    {
    $funktion .= $coeffizient[$co].'x+';
    }
    else
    {
    $funktion .= $coeffizient[$co].'x^'.( $polynomgrad - $co ).'+';
    }
    }

    $funktionswert = ausklammerung( $polynomgrad, $coeffizient, $xwert );

    $str = 'f(x) = '.$funktion.'<br><br>f('.$xwert.') = '.$funktionswert;
    return $str;
    }

    if( $_POST['go'] && isset( $_POST['polynomgrad'] ) && isset( $_POST['xwert'] ) ) //Aufruf der Funktion
    {
    $ausgabe = go( $polynomgrad, $coeffizienten_summe, $xwert, $polynomgrad );
    }

    ?>
    <h3>Horner-Schema</h3>
    <form action="<?=$_SERVER[PHP_SELF]?>" method="post">
    Polynomgrad: <input type="text" name="polynomgrad" value="5" size="2"/><br><br>
    X-Wert: <input type="text" name="xwert" value="3" size="2"/><br><br>
    <input type="submit" value="go" name="go"/>
    </form>
    <br><br>
    <?php echo $ausgabe; ?>[/code:1]

    Bei Fragen einfach posten ;)