login  Naam:   Wachtwoord: 
Registreer je!
 Scripts:

Scripts > PHP > Wiskunde > Nulpunten zoeken van een kwadratische vergelijking

Nulpunten zoeken van een kwadratische vergelijking

Auteur: Joel - 10 juni 2005 - 22:55 - Gekeurd door: Mokka - Hits: 9558 - Aantal punten: 3.90 (5 stemmen)



Wat is een kwadratische vergelijking?
============================

Dat is een vergelijking van de tweede graad, die er zo uit ziet:

a.x² + b.x + c = 0

De vergelijk is dus gelijk aan nul. Als we nu de waardes zoeken waardoor de vergelijking 0 wordt, hebben we de nulpunten gevonden. Dit doen we m.b.v. de discriminant:

D = b² - 4.a.c

Als deze groter is dan 0, dan hebben we twee nulpunten.
Is de discriminant 0, dan hebben we één nulpunt.
Is hij kleiner dan 0, hebben we geen nulpunten en klopt de vergelijking dus niet.

Hopelijk snappen jullie hier iets van 

Code:
  1. <html>
  2. <head>
  3. <title>Nulpunten zoeken van een kwadratische verlijking</title>
  4. <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
  5. </head>
  6. <body>
  7. <?php
  8. if (isSet($_POST['Submit'])) {
  9.  
  10. $a=$_POST['a'];
  11. $b=$_POST['b'];
  12. $c=$_POST['c'];
  13.  
  14. // Functie die controleert of $var wel een (negatief/positief) getal is.
  15. function check_getal($var) {
  16. return ereg("^[-0-9]{0,10}$", $var);
  17. }
  18.  
  19. if(check_getal($a) == false || check_getal($b) == false || check_getal($c) == false) {
  20. exit("Voeg getallen in aub!");
  21. }
  22.  
  23. $machtb = $b*$b;
  24. $discriminant = $machtb - 4 * $a * $c;
  25.  
  26. if ($discriminant == 0) {
  27. //Discriminant is gelijk aan 0 -> één nulpunt
  28. $opl = $machtb / 2 * $a;
  29. } elseif ($discriminant > 0) {
  30. //Discriminant is groter dan 0 -> Twee nulpunten
  31. $opl1 = (-$b + sqrt($discriminant)) / 2 * $a;
  32. $opl2 = (-$b - sqrt($discriminant)) / 2 * $a;
  33. }
  34.  
  35. }
  36. ?>
  37. <table width="100%" border="1" cellspacing="0" cellpadding="2" bordercolor="#000000">
  38. <tr>
  39. <td style="backgroud-color: #e2e2e2"><font black><b>Vul drie waardes in:</b></font><i></i></td>
  40. </tr>
  41. <tr>
  42. <td style="backgroud-color: #CCCCCC; height: 30"> <form method="post" action="">Y =
  43. <input type="text" name="a" maxlength="10" size="3">x&sup2; +
  44. <input type="text" name="b" maxlength="10" size="3">x +
  45. <input type="text" name="c" maxlength="10" size="3">= 0
  46. <input type="submit" name="Submit" value="Bereken">
  47. </form>
  48. </td>
  49. </tr>
  50. <?php
  51. if (isSet($_POST['Submit'])) {
  52. ?>
  53. <tr>
  54. <td>
  55. <u><b>Waardes:</b></u><br><br>
  56. <i>(<b>a</b>: <?php echo $a; ?>, <b>b</b>: <?php echo $b; ?>, <b>c</b>: <?php echo $c; ?>)</i><br><br>
  57. <u><b>Discriminant:</b></u><br> <table border="0" cellspacing="0" cellpadding="0">
  58. <tr>
  59. <td width="5%" style="color: #FF0000"><b>D</font></b></td>
  60. <td width="95%" style="color: #FF0000"><b> = b&sup2;-4ac</b></td>
  61. </tr>
  62. <tr>
  63. <td width="5%">&nbsp;</td>
  64. <td width="95%">= <?php echo $machtb." - 4 x ".$a." x ".$c; ?></td>
  65. </tr>
  66. <tr>
  67. <td width="5%">&nbsp;</td>
  68. <td width="95%">= <b><?php echo $discriminant; ?></b></td>
  69. </tr>
  70. </table>
  71. <?php
  72. if ($discriminant > 0) {
  73. ?> <p>De discriminant is <b>groter dan 0</b> dus er zijn <b>twee nulpunten (x1 en x2)</b>:</p>
  74. <table border="0" cellspacing="0" cellpadding="2">
  75. <tr>
  76. <td>&nbsp;</td>
  77. <td align="center">
  78. -b + <img src="sqrt.jpg" width="14" height="14">D
  79. </td>
  80. <td align="center">&nbsp;</td>
  81. <td>
  82. -<?php echo $b; ?> + <img src="sqrt.jpg" width="14" height="14"><?php echo $discriminant; ?>
  83. </td>
  84. <td>&nbsp;</td>
  85. <td>&nbsp;</td>
  86. </tr>
  87. <tr>
  88. <td height="2"><b>x1</b>=</td>
  89. <td height="2" align="center">----------</td>
  90. <td height="2">=</td>
  91. <td height="2" align="center">----------</td>
  92. <td height="2">=</td>
  93. <td height="2" style="color: #FF0000"><b><?php echo $opl1; ?></b></td>
  94. </tr>
  95. <tr>
  96. <td>&nbsp;</td>
  97. <td align="center">2a</td>
  98. <td>&nbsp;</td>
  99. <td align="center">2 x <?php echo $a; ?>
  100. </td>
  101. <td>&nbsp;</td>
  102. <td>&nbsp;</td>
  103. </tr>
  104. </table>
  105. <br>
  106. <table border="0" cellspacing="0" cellpadding="2">
  107. <tr>
  108. <td>&nbsp;</td>
  109. <td align="center">-b - <img src="sqrt.jpg" width="14" height="14">D</td>
  110. <td>&nbsp;</td>
  111. <td>-<?php echo $b; ?> - <img src="sqrt.jpg" width="14" height="14"><?php echo $discriminant; ?></td>
  112. <td>&nbsp;</td>
  113. <td>&nbsp;</td>
  114. </tr>
  115. <tr>
  116. <td height="2"><b>x2</b>=</td>
  117. <td height="2" align="center">----------</td>
  118. <td height="2">=</td>
  119. <td height="2" align="center">----------</td>
  120. <td height="2">=</td>
  121. <td height="2" style="color: #FF0000"><b><?php echo $opl2; ?></b></td>
  122. </tr>
  123. <tr>
  124. <td>&nbsp;</td>
  125. <td align="center">2a</td>
  126. <td>&nbsp;</td>
  127. <td align="center">2 x <?php echo $a; ?>
  128. </td>
  129. <td>&nbsp;</td>
  130. <td>&nbsp;</td>
  131. </tr>
  132. </table>
  133. <p><u><b>Verzameling:</b></u><br><br>
  134. V=<b>{</b>x1 <b>,</b> x2<b>}</b> = <b>{</b><?php echo $opl1; ?><b> , </b> <?php echo $opl2; ?><b>}</b></p>
  135.  
  136. <?php
  137. } elseif ($discriminant == 0) {
  138. ?>
  139.  
  140. <p>De discriminant is <b>gelijk aan 0 </b>dus er is &eacute;&eacute;n nulpunt <b> (x1 = x2)</b>:</p>
  141. <table border="0" cellspacing="0" cellpadding="2">
  142. <tr>
  143. <td>&nbsp;</td>
  144. <td align="center">b&sup2;</td>
  145. <td>&nbsp;</td>
  146. <td align="center"><?php echo $b; ?>&sup2;</td>
  147. <td>&nbsp;</td>
  148. <td>&nbsp;</td>
  149. </tr>
  150. <tr>
  151. <td height="2"><b>x1=x2=</b></td>
  152. <td height="2" align="center">------</td>
  153. <td height="2">=</td>
  154. <td height="2" align="center">------</td>
  155. <td height="2">=</td>
  156. <td height="2" style="color: #FF0000"><b><?php echo $opl; ?></b></td>
  157. </tr>
  158. <tr>
  159. <td>&nbsp;</td>
  160. <td>2 x a</td>
  161. <td>&nbsp;</td>
  162. <td align="center">2 x <?php echo $a; ?></td>
  163. <td>&nbsp;</td>
  164. <td>&nbsp;</td>
  165. </tr>
  166. </table>
  167. <br>
  168. <u><b>Verzameling:</b></u><br><br>V=<b>{</b>x1=x2<b>}</b> = <b>{</b><?php echo $opl; ?><b>}</b>
  169.  
  170. <?php
  171. } elseif ($discriminant < 0) {
  172. ?>
  173.  
  174. <p>De discriminant is <b>kleiner dan 0 </b>dus er zijn geen nulpunten:<br>
  175. <br>
  176. <u><b>Verzameling:</b></u><br></p><br>V=<b>{</b>&Oslash;<b>}</b> </td>
  177. <?php
  178. }
  179. ?>
  180. </tr>
  181. <?php } ?>
  182. </table>
  183. </body>
  184. </html>
Download code! Download code (.txt)

 Bekijk een voorbeeld van dit script!
 Stemmen
Niet ingelogd.

 Reacties
Post een reactie
Lees de reacties (15)
© 2002-2022 Sitemasters.be - Regels - Laadtijd: 0.023s