[PHP] Wurzel ziehen aus PHP

Dieses Thema im Forum "Webentwicklung" wurde erstellt von SoulOfRussia, 26. Januar 2009 .

Schlagworte:
  1. 26. Januar 2009
    Folgendes Problem:
    ich hab folgenden PHP Code geschrieben:

    PHP:
    <? php
    $a1 
    $_POST [ a ];
    $b1  1 ;

    while (
    0.002  <=  $diff );
    {
    $a2  = ( $a1 + $b1 )/ 2 ;
    $b2  $a1 / $a2 ;
    $diff  $a2 - $b2 ;
    }

    echo 
    "Die Wurzen aus  $a1  beträgt:  $a2 " ;
    echo 
    "</br> Differenz:  $diff " ;
    ?>
    und die ausgabe ist (z.b. wenn ich 16 eingebe)
    Code:
    Die Wurzen aus 16 beträgt: 8.5
    Differenz: 6.61764705882
    Eigendlich soll bei $a2 4 rauskommen... d.h. die While-Schleife geht beim ersten mal raus ... was sie eigendlich nicht sollte.

    So sollte es aussehen:

    Man gibt 16 ein (Andere HTML Datei)
    und der Server bzw. PHP berechnet aus 16 die Wurzel mit dem Heron verfahren . - 4 sollte rauskommen.

    Edit: $diff ist der Grenzwert wo die While Schleife rausgehen sollte. (Wenn $diff kleiner als 0.002 dann soll der aus der Schleife rausgehen)
     
  2. 26. Januar 2009
    AW:
    PHP:
     Wurzel ziehen aus PHP [/ b ]

    deine denkweise stimmt soweit ich mitverfolg habe überhaupt nicht ^^:

    laut heron verfahren macht er das immer wieder
    bis  die  zahl ziemlich nahe am ergebnis ist ..  während der rechnung setzt er das ergebnis was bei dir be  [ B ] a2  [/ B ] raußkommt immer wieder ein was bei dir nicht der fall ist wie ich sehe ..

    bei dir wird der wert weiterhin nirgends benutzt also wozu dann  die  schleife wenn er eh wieder von oben  die  zahlen einsetzen würde ?

    [
    url = "http://de.wikipedia.org/wiki/Heron-Verfahren" ] Heron - Verfahren – Wikipedia [/ url vllt nochmal drüber schauen ?
     
  3. 26. Januar 2009
    AW:
    PHP:
     Wurzel ziehen aus PHP[/b]

    ja ich will ja nicht das mein code so aussieht:

    [PHP]
    <?php
    $a1 
    $_POST [ a ];
    $b1  1 ;

    while (
    0.002  <=  $diff );
    {
    $a2  = ( $a1 + $b1 )/ 2 ;
    $b2  $a1 / $a2 ;
    $diff  $a2 - $b2 ;

    $a3  = ( $a2 + $b2 )/ 2 ;
    $b3  $a2 / $a3 ;
    $diff  $a3 - $b3 ;

    $a4  = ( $a3 + $b3 )/ 2 ;
    $b4  $a3 / $a4 ;
    $diff  $a4 - $b4 ;

    $a5  = ( $a4 + $b4 )/ 2 ;
    $b5  $a4 / $a5 ;
    $diff  $a5 - $b5 ;

    ......

    ?>
     
  4. 26. Januar 2009
    AW:
    PHP:
     Wurzel ziehen aus PHP[/b]

    du musst die differenz aus quadrat der zahl und der vermeintlichen wurzel bilden dann sollte es gehen quasi so:

    <?php
    $a1 
    $_POST [ a ];
    $b1  1 ;

    while (
    0.002  <=  $diff );
    {
    $a2  = ( $a1 + $b1 )/ 2 ;
    $b2  $a1 / $a2 ;
    $diff  $b2 * $b2 - $a2 // Hier müsste das sein ich durschau das ganze leider nich auf anhieb weil deine variablen etwas diffus gewählt sind lass dir mal deutlichere namen einfallen :)
    }

    echo 
    "Die Wurzen aus  $a1  beträgt:  $a2 " ;
    echo 
    "</br> Differenz:  $diff " ;
    ?>
     
  5. 26. Januar 2009
    AW:
    PHP:
     Wurzel ziehen aus PHP [/ b ]

    $diff ist  die  different von $a1 und $b1  bzw von $a2 und $b2 usw .

    nach Heron is ja Seite  "b"  in dem Rechteck immer eine 1

    und 
    "a"  ist  die  Zahl aus der  die  Wurzel gezogen werden muss
    dann wird 
    "a"  kleiner bzw  "b"  Größer damit ein Quadrat entsteht mit gleichen Seitenlängen  (Die  Seitenlänge ist dann  die  Wurzel )
     
  6. 26. Januar 2009
    AW:
    PHP:
     Wurzel ziehen aus PHP [/ b ]

    Hier gibts  die  Formel und Beispiel Code :
    [
    url = "http://www.html.de/tutorials/11474-php-c-heron-verfahren-mit-diversen-programmiersprachen.html" ][ PHP / C ++]  HERON - Verfahren mit diversen Programmiersprachen  html . de  HTML für Anfänger und Fortgeschrittene [/ url ]
     
  7. 26. Januar 2009
    AW:
    PHP:
     Wurzel ziehen aus PHP[/b]

    Die formel bringt mir nichts ^^ ich brauch das mit $_POST[]  usw.
    wenn ich wüsste was Radikant und Startwert ist...
    Ausserdem brauch ich nicht die Näherungswerte sondern das Ergebnis ^^

    edit:  ich habs ergebnis ist:

    [PHP]<?php

    $a 
    $_POST [ a ];
    $b  1 ;
    $r  = ( $b + $a )/ 2 ;
     if (
    preg_match  ( "/^[0-9]{1,7}$/" $a ))
     {
    while(
    $r - $b > 0.0001 || $n <= 30 ) {
        
    $b  $r ;
        
    $n ++;
        
    $r  = ( $b + $a / $b )/ 2 ;
        if(
    $n  ==  30 )
        echo 
    "Die Wurzen aus  $a  beträgt:  $r  <br><br>" ;
    }}
    else { echo 
    "Bitte nur Zahlen eingeben" ;}
    ?>
     
  8. 27. Januar 2009
    AW:
    PHP:
     Wurzel ziehen aus PHP [/ b ]

    [
    quote = "SoulOfRussia, post: 7685428" ]Die  formel bringt mir nichts  ^^[/ QUOTE ]
    Doch genau diese Formel verwendest du .
    [
    quote = "SoulOfRussia, post: 7685428" ]
     
    ich brauch das mit $_POST []   usw .[/ QUOTE ]
    Einfach den Radikand mit $_POST []  einlesen fertig .
    [
    quote = "SoulOfRussia, post: 7685428" ]
    wenn ich wüsste was Radikant und Startwert ist ...
    [/
    QUOTE ]
    Das natürlich schlecht . ;)
    [
    quote = "SoulOfRussia, post: 7685428" ]
    Ausserdem brauch ich nicht  die  Näherungswerte sondern das Ergebnis  ^^
    [/
    QUOTE ]
    Du benutzt aber ein Näherungsverfahren ...  also bekommst du immer nur Näherungen als Ergebnis Ich glaube du hast da was missverstanden .


    Aber hast ja nun so hinbekommen .
     
  9. 27. Januar 2009
    AW:
    PHP:
     Wurzel ziehen aus PHP [/ b ]

    [
    quote = "SoulOfRussia, post: 7685428" ] Ausserdem brauch ich nicht  die  Näherungswerte sondern das Ergebnis  ^^[/ QUOTE ]

    die 
    dezimalschreibweise einer wurzel von einem radikanten der keine quadratzahl ist ist IMMER eine näherung !!!

    daher macht dein satz keinen sinn ...
     
  10. 27. Januar 2009
    AW:
    PHP:
     Wurzel ziehen aus PHP [/ b ]

    zumm 2. mal  ^^
    ich hab das ergebnis xD siehe weiter oben  !!
     
  11. 27. Januar 2009
    AW:
    PHP:
     Wurzel ziehen aus PHP [/ b ]

    Mal ganz dumm gefragt was spricht gegen  [ url = http : //de2.php.net/sqrt][b]sqrt[/b][/url]?
     
  12. 27. Januar 2009
    AW:
    PHP:
     Wurzel ziehen aus PHP [/ b ]

    [
    quote = "p0w3rn4t0r, post: 7688901" ] Mal ganz dumm gefragt was spricht gegen  [ url = http : //de2.php.net/sqrt][b]sqrt[/b][/url]?[/QUOTE]

    Vermutlich  die  Aufgabenstellung
     
  13. Video Script

    Videos zum Themenbereich

    * gefundene Videos auf YouTube, anhand der Überschrift.