Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11
  1. #1

    [PHP]Cosa alquanto stupida...risolvere equazioni in php

    Lol
    qualcuno vuole creare con me uno script che faccia questo?

    ovviamente di 2° grado sennò troppo semplice gh
    io in mente c'avrei già qualcosina...

  2. #2
    Utente di HTML.it L'avatar di Pasco
    Registrato dal
    Apr 2002
    Messaggi
    1,559
    interessante!! sono interessato :maLOL:

    direi di iniziare con quelle di 1° grado per poi passare a quelle di 2°
    PyFanatics

  3. #3
    Utente di HTML.it L'avatar di Nix82
    Registrato dal
    Oct 2001
    residenza
    Mussolente (VI)
    Messaggi
    1,122
    La soluzione è banale

    Codice PHP:
    function funzione($a,$b,$c) {
            if(
    $a != 0) {
                    
    $discriminante $b $b $a $c;
                    if(
    $discriminante >= 0) {
                            
    $x1 = (-$b+sqrt($discriminante))/(2*$a);
                            echo 
    "Prima soluzione dell'equazione $x1 
    "
    ;
                            
    $x2 = (-$b-sqrt($discriminante))/(2*$a);
                            echo 
    "Seconda soluzione dell'equazione $x2 
    "
    ;
                            if(
    $a>0) {
                                    echo 
    "La parabola è concava";
                            } elseif(
    $a<0) {
                                    echo 
    "La parabola è convessa";
                            }
                    } else {
                            echo 
    "Equazione di secondo grado non appartente ai reali ma ai complessi";
                    }
            } else {
                    echo 
    "Non è una equazione di secondo grado";
            }

    }

    funzione(1,1,-6); 
    Sarebbe molto più bello farne una che risolva le equazioni di grado n. Li mi troverei molto in difficoltà
    La cultura è il nostro passaporto per il domani. Il futuro appartiene alle persone che si preparano oggi.
    Martin Luther King

  4. #4
    doh...io che mi stavo divertendo a smanettare col php...

  5. #5
    allura, ho dato una rispolveratina al mio php/html...
    provate a dare n'occhiata a sto listato
    Pagina eq.html :
    codice:
    <html>
    <head>
    <title>Risolve equazioni di 2° grado</title>
    <link rel="stylesheet" href="stile.php?colore=<?=$_GET['COLORE']?>" type="text/css">
    </head>
    <body><center>
    <table bgcolor=red border=1 bordercolor=white cellpadding=2 cellspacing=0 width="100%">
    <tr>
    <td align=center><font class=titolo> Inserisci a, b, c senza la incognita ( solo il coefficiente)</font></td></tr>
    <td align=center><font class=blackB><form action="eq.php" method="POST">
    <fieldset>
        <legend>Coefficienti</legend>
        <label>a = <input type="text" name="a" value="a" maxlength="3"></label>
    
        <label>b = <input type="text" name="b" value="b" maxlength="3"></label>
    
        <label>c = <input type="text" name="c" value="c" maxlength="3"></label>
    
        <label><input type="submit" value="Calcola!"></font>
    </form>
    </td>
    </table>
    </center>
    </body>
    </html>
    Pagina eq.php
    Codice PHP:
    <?
    $a 
    $_POST['a'];
    $b $_POST['b'];
    $c $_POST['c'];
    $discr $b $b 4*$a*$c;
    if (
    $discr >= 0) {
       
    $X1 = -$b+sqrt($discr)/2*$a;
       
    $X2 = -$b-sqrt($discr)/2*$a;
       
    $discr .=" positivo o uguale a 0";
       if (
    X1 0) {
             
    $sol "(X$X1)*";
             
    $sol .= "(x+$X2)"
          }
       if (
    X2 0) {
             
    $sol "(X+$X1)*";
             
    $sol .= "(x$X2)";
          }
    } else { 
    $discr .=" negativo";
    $X1 "Nullo";
    $X2 "Nullo";
    $sol "inesistente";
    }
    ?>
    <html>
    <head>
    <title>Risultato</title>
    </head>
    <body>
    <table bgcolor=red border=1 bordercolor=white cellpadding=2 cellspacing=0 width="100%">
    <tr>
    <td align=center>Con a=<?=$a?>,b=<?=$b?>,c=<?=$c?>
    Il discriminante è = <?=$discr?>

    <fieldset>
       <legend>Risultati:</legend>
       <label>X1 = <?=$X1?></label>

       <label>X2 = <?=$X2?></label>

       <label>La soluzione è quindi <?=$sol?></label>
    </fieldset>
    </td></tr>
    </table>
    </body>
    </html>
    L'unico problema è che mi da quest'errore quando lo eseguo:
    Notice: Use of undefined constant X1 - assumed 'X1' in c:\programmi\easyphp1-8\www\eq.php on line 10

    Notice: Use of undefined constant X2 - assumed 'X2' in c:\programmi\easyphp1-8\www\eq.php on line 14

    qua stampa tutte le a,b,c del caso e le soluzioni
    La soluzione è quindi
    Notice: Undefined variable: sol in c:\programmi\easyphp1-8\www\eq.php on line 37
    che vor dì?

  6. #6
    Originariamente inviato da Nix82
    Sarebbe molto più bello farne una che risolva le equazioni di grado n. Li mi troverei molto in difficoltà
    Tranne poche eccezioni, le equazioni (di una variabile) di grado maggiore al secondo non sono risolvibili per via analitica. Si può procedere però per via numerica ma le soluzioni soffrono di approssimazione.


  7. #7
    ok...ma...qualcuno sa risolvere sto problema???

  8. #8
    Utente di HTML.it L'avatar di Nix82
    Registrato dal
    Oct 2001
    residenza
    Mussolente (VI)
    Messaggi
    1,122
    Originariamente inviato da Gianni_T
    Tranne poche eccezioni, le equazioni (di una variabile) di grado maggiore al secondo non sono risolvibili per via analitica. Si può procedere però per via numerica ma le soluzioni soffrono di approssimazione.


    esatto Gianni
    ho appena creato una classe che mi risolve le equazioni di terzo grado ma è naturale che bisoga approssimare la soluzione!
    Ho utilizzato il metodo della bisezione con un ciclo for
    La cultura è il nostro passaporto per il domani. Il futuro appartiene alle persone che si preparano oggi.
    Martin Luther King

  9. #9
    Utente di HTML.it L'avatar di Pasco
    Registrato dal
    Apr 2002
    Messaggi
    1,559
    Originariamente inviato da Gianni_T
    Tranne poche eccezioni, le equazioni (di una variabile) di grado maggiore al secondo non sono risolvibili per via analitica. Si può procedere però per via numerica ma le soluzioni soffrono di approssimazione.

    codice:
    if (X1 < 0) { 
             $sol = "(X$X1)*"; 
             $sol .= "(x+$X2)";  
          }
    if (X2 < 0) { 
             $sol = "(X+$X1)*"; 
             $sol .= "(x$X2)"; 
          }
    se volevi definire delle costanti, dovevi prima inizializzarle con define(), o forse hai dimenticado il segno del dollaro?
    PyFanatics

  10. #10
    DOH...me ne sono accorto adesso :maLOL:

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.