Pinned [PHP] Berechnung von Kreuzprodukt, Volumen, Fläche und Skalarprodukt

This site uses cookies. By continuing to browse this site, you are agreeing to our Cookie Policy.

  • [PHP] Berechnung von Kreuzprodukt, Volumen, Fläche und Skalarprodukt

    Ist komplett selfmade. Bei Fehlern bitte melden :D

    PHP Source Code

    1. <!DOCTYPE HTML>
    2. <html>
    3. <head>
    4. <title>Maths by Calaze</title>
    5. </head>
    6. <body >
    7. <form action="index.php" method="post">
    8. <h3>Wähle den Winkel den du im Dreieck berechnen möchtest</h3>
    9. <select name="selection">
    10. <option value="abac">Alpha (AB und AC)</option>
    11. <option value="babc">Beta (BA und BC</option>
    12. <option value="cbca">Gamma (CB und CA)</option>
    13. <option value="A">Flächeninhalt</option>
    14. <option value="V">Volumen</option>
    15. </select>
    16. <h4>Koordniaten Punkt A</h4>
    17. <p>X: <input type="numer" name="Ax1" /></p>
    18. <p>Y: <input type="number" name="Ax2" /></p>
    19. <p>Z: <input type="number" name="Ax3" /></p>
    20. <h4>Koordniaten Punkt B</h4>
    21. <p>X: <input type="number" name="Bx1" /></p>
    22. <p>Y: <input type="number" name="Bx2" /></p>
    23. <p>Z: <input type="number" name="Bx3" /></p>
    24. <h4>Koordniaten Punkt C (Bei Volumen Aufspannpunkt)</h4>
    25. <p>X: <input type="number" name="Cx1" /></p>
    26. <p>Y: <input type="number" name="Cx2" /></p>
    27. <p>Z: <input type="number" name="Cx3" /></p>
    28. <p><input type="submit" name="submit" /></p>
    29. </form>
    30. <?php
    31. #Winkel im Dreieck berechnen
    32. if(isset($_POST['submit'])) {
    33. #Global
    34. $arrayA = array($_POST['Ax1'], $_POST['Ax2'], $_POST['Ax3']);
    35. $arrayB = array($_POST['Bx1'], $_POST['Bx2'], $_POST['Bx3']);
    36. $arrayC = array($_POST['Cx1'], $_POST['Cx2'], $_POST['Cx3']);
    37. for ($i = 0; $i <= 2; $i++) {
    38. if($arrayA[$i] == "" || $arrayB[$i] == "" || $arrayC[$i] == "")
    39. {
    40. die('<b>Bitte fülle alles aus!</b>');
    41. }
    42. }
    43. if($_POST['selection'] == "abac")
    44. {
    45. $rV1x1 = $arrayC[0] - $arrayA[0];
    46. $rV2x2 = $arrayC[1] - $arrayA[1];
    47. $rV3x3 = $arrayC[2] - $arrayA[2];
    48. $rV4x1 = $arrayB[0] - $arrayA[0];
    49. $rV5x2 = $arrayB[1] - $arrayA[1];
    50. $rV6x3 = $arrayB[2] - $arrayA[2];
    51. #Skalarprodukt rechnen
    52. $Skalarprod = ($rV1x1 * $rV4x1) + ($rV2x2 * $rV5x2) + ($rV3x3 * $rV6x3);
    53. if($Skalarprod != 0)
    54. {
    55. echo "Das Skalarprodukt ist: $Skalarprod <br>";
    56. }
    57. else
    58. {
    59. echo "Das Skalarprodukt beträgt: $Skalarprod. Das bedeutet der Winkel ist 9o Grad (Rechtwinklig).<br>";
    60. }
    61. #Betrag ausrechnen
    62. $RV1 = sqrt(pow($rV1x1,2)+pow($rV2x2,2)+pow($rV3x3,2));
    63. $RV2 = sqrt(pow($rV4x1,2)+pow($rV5x2,2)+pow($rV6x3,2));
    64. if($RV1 * $RV2 == 0)
    65. {
    66. echo "Fehler: Der Nenner wird 0";
    67. }
    68. else
    69. {
    70. #Cosinus
    71. $radCos = abs(acos($Skalarprod / ($RV1 * $RV2)));
    72. $Ergebnis = rad2deg($radCos);
    73. echo "Ergebnis der Rechnung ist: $Ergebnis Grad";
    74. $lel = "";
    75. }
    76. }
    77. elseif(($_POST['selection']) == "babc"){
    78. $rV1x1 = $arrayC[0] - $arrayB[0];
    79. $rV2x2 = $arrayC[1] - $arrayB[1];
    80. $rV3x3 = $arrayC[2] - $arrayB[2];
    81. $rV4x1 = $arrayA[0] - $arrayB[0];
    82. $rV5x2 = $arrayA[1] - $arrayB[1];
    83. $rV6x3 = $arrayA[2] - $arrayB[2];
    84. #Skalarprodukt rechnen
    85. $Skalarprod = ($rV1x1 * $rV4x1) + ($rV2x2 * $rV5x2) + ($rV3x3 * $rV6x3);
    86. if($Skalarprod != 0)
    87. {
    88. echo "Das Skalarprodukt ist: $Skalarprod <br>";
    89. }
    90. else
    91. {
    92. echo "Das Skalarprodukt beträgt: $Skalarprod. Das bedeutet der Winkel ist 9o Grad (Rechtwinklig).<br>";
    93. }
    94. #Betrag ausrechnen
    95. $RV1 = sqrt(pow($rV1x1,2)+pow($rV2x2,2)+pow($rV3x3,2));
    96. $RV2 = sqrt(pow($rV4x1,2)+pow($rV5x2,2)+pow($rV6x3,2));
    97. if($RV1 * $RV2 == 0)
    98. {
    99. echo "Fehler: Der Nenner wird 0";
    100. }
    101. else
    102. {
    103. #Cosinus
    104. $radCos = abs(acos($Skalarprod / ($RV1 * $RV2)));
    105. $Ergebnis = rad2deg($radCos);
    106. echo "Ergebnis der Rechnung ist: $Ergebnis Grad";
    107. $lel = "";
    108. }
    109. }
    110. elseif(($_POST['selection']) == "cbca"){
    111. $rV1x1 = $arrayA[0] - $arrayC[0];
    112. $rV2x2 = $arrayA[1] - $arrayC[1];
    113. $rV3x3 = $arrayA[2] - $arrayC[2];
    114. $rV4x1 = $arrayB[0] - $arrayC[0];
    115. $rV5x2 = $arrayB[1] - $arrayC[1];
    116. $rV6x3 = $arrayB[2] - $arrayC[2];
    117. #Skalarprodukt rechnen
    118. $Skalarprod = ($rV1x1 * $rV4x1) + ($rV2x2 * $rV5x2) + ($rV3x3 * $rV6x3);
    119. if($Skalarprod != 0)
    120. {
    121. echo "Das Skalarprodukt ist: $Skalarprod <br>";
    122. }
    123. else
    124. {
    125. echo "Das Skalarprodukt beträgt: $Skalarprod. Das bedeutet der Winkel ist 9o Grad (Rechtwinklig).<br>";
    126. }
    127. #Betrag ausrechnen
    128. $RV1 = sqrt(pow($rV1x1,2)+pow($rV2x2,2)+pow($rV3x3,2));
    129. $RV2 = sqrt(pow($rV4x1,2)+pow($rV5x2,2)+pow($rV6x3,2));
    130. if($RV1 * $RV2 == 0)
    131. {
    132. echo "Fehler: Der Nenner wird 0";
    133. }
    134. else
    135. {
    136. #Cosinus
    137. $radCos = abs(acos($Skalarprod / ($RV1 * $RV2)));
    138. $Ergebnis = rad2deg($radCos);
    139. echo "Ergebnis der Rechnung ist: $Ergebnis Grad";
    140. $lel = "";
    141. }
    142. }
    143. elseif(($_POST['selection']) == "A"){
    144. $rV1x1 = $arrayA[1] * $arrayB[2] - $arrayA[2] * $arrayB[1];
    145. $rV2x2 = $arrayA[2] * $arrayB[0] - $arrayA[0] * $arrayB[2];
    146. $rV3x3 = $arrayA[0] * $arrayB[1] - $arrayA[1] * $arrayB[0];
    147. echo "<br>Ergebnis des Kreuzprodukts: x= $rV1x1 , y= $rV2x2 , z= $rV3x3 <br>";
    148. $A = sqrt(pow($rV1x1,2)+pow($rV2x2,2)+pow($rV3x3,2));
    149. echo "Der Flächeninhalt beträgt: $A FE ";
    150. }
    151. elseif(($_POST['selection']) == "V"){
    152. $rV1x1 = $arrayA[1] * $arrayB[2] - $arrayA[2] * $arrayB[1];
    153. $rV2x2 = $arrayA[2] * $arrayB[0] - $arrayA[0] * $arrayB[2];
    154. $rV3x3 = $arrayA[0] * $arrayB[1] - $arrayA[1] * $arrayB[0];
    155. echo "<br>Ergebnis des Kreuzprodukts: x= $rV1x1 , y= $rV2x2 , z= $rV3x3 <br>";
    156. $V = abs($rV1x1 * $arrayC[0] + $rV2x2 * $arrayC[1] + $rV3x3 * $arrayC[2]);
    157. if($V == 0)
    158. {
    159. echo "Das Volumen ist 0, da der Aufspannpunkt direkt in der Ebene liegt.";
    160. }
    161. else
    162. {
    163. echo "Das Volumen beträgt: $V ";
    164. }
    165. }
    166. }
    167. ?>
    168. </body>
    169. </html>
    Display All