3v4l.org

run code in 150+ php & hhvm versions
Bugs & Features
<?php // $A = 1110; // $B = 370; // $C = 6171.6; // $H = 71.1; // $I = 556/$G; // Muss "4,21212121212121" ausgeben // $K = get_factor_K($I); // I wird benötigt. Gibt in diesem Beispiel "0,9942" aus // $L = get_factor_L($I); // I wird benötigt. Gibt in diesem Beispiel "0,998670248976177" aus // $G = $H/(545.223880597015/1000*$L*$K); // Aufrundung ohne Komma, muss "132" ausgeben // $J = $G*$B/1000*$A/100*1; // Muss "542,124" ausgeben // $D = ($C-$J); // Muss "5629,476" ausgeben // $E = ($I-$B/1000)*$A/100; // Muss "42,6475454545455" ausgeben // $F = $I*$A/100; // Muss "46,7545454545455" ausgeben function get_factor_k($i) { // Replace with correct code #return $i; return 0.9942; } function get_factor_l($i) { // Replace with correct code #return $i; return 0.998670248976177; } $a = 1110; $b = 370; $c = 6171.6; $h = 71.1; $i = 0.001; // undef $k = 0; // undef $l = 0; // undef $step = 0.001; // Auflösung für $i $i_max = 100; // um keine Endlosschleife zu produzieren $epsilon = 0.001; // Fehlertoleranz $found = false; do { $k = get_factor_k($i); $l = get_factor_l($i); $tmp = (556 / ($h / (545.223880597015 / 1000 * $k * $l))); $found = (abs($i - $tmp) <= $epsilon); if (!$found) { $i += $step; } if ($i > $i_max) { throw new Exception('Unable to calculate $i'); } } while (!$found); $g = ceil($h / (545.223880597015 / 1000 * $l * $k)); #$i = 556 / $g; // ??? $i haben wir schon $j = $g * $b / 1000 * $a / 100 * 1; $e = ($i - $b / 1000) * $a / 100; $f = $i * $a / 100; $d = $c - $j; foreach (range('a', 'l') as $var) { echo $var . ' = '; var_dump($$var); }
Output for 5.0.0 - 5.6.28, hhvm-3.10.0 - 3.12.0, 7.0.0 - 7.1.0
a = int(1110) b = int(370) c = float(6171.6) d = float(5629.476) e = float(42.879299999997) f = float(46.986299999997) g = float(132) h = float(71.1) i = float(4.2329999999997) j = float(542.124) k = float(0.9942) l = float(0.99867024897618)
Output for 4.4.2 - 4.4.9
Parse error: syntax error, unexpected T_NEW in /in/3il92 on line 58
Process exited with code 255.
Output for 4.3.0 - 4.3.1, 4.3.5 - 4.4.1
Parse error: parse error, unexpected T_NEW in /in/3il92 on line 58
Process exited with code 255.
Output for 4.3.2 - 4.3.4
Parse error: parse error in /in/3il92 on line 58
Process exited with code 255.