Advertisement
Guest User

dk sag

a guest
Dec 27th, 2014
161
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 3.06 KB | None | 0 0
  1. <?php
  2. function tal($input, $kommatilpunktum = TRUE) {
  3.    
  4.     if($kommatilpunktum==true) {
  5.         $output = str_replace(',', '.', $input);
  6.     } else {
  7.         $output = str_replace('.', ',', $input);
  8.     }
  9.    
  10.     return $input;
  11. }
  12.  
  13. # Beregning
  14. if($_POST['matematik']) {
  15.    
  16.     $x1 = tal($_POST['x1']);
  17.     $x2 = tal($_POST['x2']);
  18.     $y1 = tal($_POST['y1']);
  19.     $y2 = tal($_POST['y2']);
  20.     $a  = tal($_POST['a']);
  21.     $b  = tal($_POST['b']);
  22.     $x  = tal($_POST['x']);
  23.     $y  = tal($_POST['y']);
  24.    
  25.    
  26.    
  27. /*
  28.     --- Beregn x og y:
  29. */
  30.     if(isset($_POST['findaogb'])) {
  31.        
  32.         # Lineær
  33.         if($_POST['funktion']=='linear') {
  34.        
  35.             $a = ($y2 - $y1) /  ($x2 - $x1);
  36.             $b = ($y1 - ($a * $x1));
  37.        
  38.         # Potens   
  39.         } elseif($_POST['funktion']=='potens') {
  40.            
  41.             $a = log($y2/$y1) / log($x2/$x1);
  42.             $b = $y1 / pow($x1,$a);
  43.        
  44.         # Eksponentiel
  45.         } elseif($_POST['funktion']=='eksponentiel') {
  46.            
  47.             # FEJL
  48.             $a = pow($y2 - $y1 ,1 / ($x2 - $x1));
  49.             $b = $y1 / pow($a, $x1);
  50.         }
  51.        
  52.         $a = tal(round($a, 5), false);
  53.         $b = tal(round($b, 5), false);
  54.    
  55.         print '<div id="resultat">'.
  56.               '<b>'.$funktioner[$_POST['funktion']].'</b></br />'.
  57.               'a er beregnet til: '.$a.'<br />'.
  58.               'b er beregnet til: '.$b.'</br />'.
  59.               '</div>';
  60.  
  61.  
  62. /*
  63.     --- Find x, y, a eller b.
  64. */
  65.     } elseif(isset($_POST['findmanglendetal'])) {
  66.        
  67.         # Idiot tjekket. Der må kun være en nul variabel.    
  68.         (int) $nulvariabler = 0;
  69.         if(strlen($a)==0) $nulvariabler++;
  70.         if(strlen($b)==0) $nulvariabler++;
  71.         if(strlen($x)==0) $nulvariabler++;
  72.         if(strlen($y)==0) $nulvariabler++;
  73.  
  74.         # Funktionerne fik ikke de rette input:
  75.         if($nulvariabler!=1) {
  76.             print '<div id="fejl">'.
  77.                   'Der må kun være en ubekendt i vores ligningsløser.'.
  78.                   '</div>';
  79.         } else {
  80.        
  81.             # Lineær
  82.             if($_POST['funktion']=='linear') {
  83.                
  84.                 if($y=='') {
  85.                     $y = $a * $x + $b;
  86.                     $udregning = "$y = $a * $x + $b";
  87.                     $formel = 'y = a * x + b';
  88.                     $ligning = "y = $a * $x + $b";
  89.                    
  90.                 } elseif($x=='') {
  91.                     $x = ($y - $b) / $a;
  92.                    
  93.                 } elseif($a=='') {
  94.                     $a = ($y - $b) / $x;
  95.                    
  96.                 } elseif($b=='') {
  97.                     $b = ($x - $a) / $y;
  98.                 }
  99.                
  100.                 $funktion = 'y ';
  101.            
  102.             # Eksponentiel funktion
  103.             } elseif($_POST['funktion']=='eksponentiel') {
  104.                
  105.                 if($y=='') {
  106.                     $y = $b * pow($a,$x);
  107.                 }
  108.             }
  109.            
  110.             print '<div id="resultat">'.
  111.                   '<b>'.$funktioner[$_POST['funktion']].':</b></br />'.
  112.                   '<table cellpadding="4" style="width:100%;">'.
  113.                   '<tr>'.
  114.                   '<td>Formel </td><td>: '.$formel.'</td>'.
  115.                   '</tr>'.
  116.                   '<tr>'.
  117.                   '<td>Ligning </td><td>: '.$ligning.'</td>'.
  118.                   '</tr>'.
  119.                   '<tr>'.
  120.                   '<td>Udregning </td><td>: '.$udregning.'</td>'.
  121.                   '</tr>'.
  122.                   '<tr>'.
  123.                   '<td>a er</td><td>: '.$a.'</td>'.
  124.                   '</tr>'.
  125.                   '<tr>'.
  126.                   '<td>b er</td><td>: '.$b.'</td>'.
  127.                   '</tr>'.
  128.                   '<tr>'.
  129.                   '<td>x er</td><td>: '.$x.'</td>'.
  130.                   '</tr>'.
  131.                   '<tr>'.
  132.                   '<td>y er</td><td>: '.$y.'</td>'.
  133.                   '</tr>'.
  134.                   '</table>'.
  135.                   '</div>';
  136.         }      
  137.     }
  138. }
  139. ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement