parent
a25fe02e09
commit
bf69a539a1
5 changed files with 102 additions and 13 deletions
@ -1,10 +1,13 @@ |
|||||||
<?php |
<?php |
||||||
function main() { |
function Ack($m, $n){ |
||||||
$a = 0; |
if($m == 0) return $n+1; |
||||||
for ($i = 0; $i < 1000000; $i++) |
if($n == 0) return Ack($m-1, 1); |
||||||
$a++; |
return Ack($m - 1, Ack($m, ($n - 1))); |
||||||
|
} |
||||||
|
|
||||||
|
|
||||||
$thisisanotherlongname = 0; |
function main() { |
||||||
for ($thisisalongname = 0; $thisisalongname < 1000000; $thisisalongname++) |
$n = 7; |
||||||
$thisisanotherlongname++; |
$r = Ack(3, $n); |
||||||
|
print "Ack(3,$n): $r\n"; |
||||||
} |
} |
||||||
@ -0,0 +1,30 @@ |
|||||||
|
--TEST-- |
||||||
|
Fibonacci |
||||||
|
--FILE-- |
||||||
|
<?php |
||||||
|
function fib(int $n): int |
||||||
|
{ |
||||||
|
if ($n == 1 || $n == 2) { |
||||||
|
return 1; |
||||||
|
} else { |
||||||
|
return fib($n - 1) + fib($n - 2); |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
function main() |
||||||
|
{ |
||||||
|
$n = 40; |
||||||
|
if ($n > 100) { |
||||||
|
echo "Too big number\n"; |
||||||
|
exit(1); |
||||||
|
} elseif ($n < 1) { |
||||||
|
echo "Too small number\n"; |
||||||
|
exit(1); |
||||||
|
} |
||||||
|
|
||||||
|
$begin = microtime(true); |
||||||
|
echo fib($n) . "\n"; |
||||||
|
} |
||||||
|
?> |
||||||
|
--EXPECT-- |
||||||
|
102334155 |
||||||
@ -0,0 +1,25 @@ |
|||||||
|
--TEST-- |
||||||
|
π |
||||||
|
--FILE-- |
||||||
|
<?php |
||||||
|
function main() |
||||||
|
{ |
||||||
|
ini_set("precision", 17); |
||||||
|
$rounds = 1_0000_0000; |
||||||
|
$stop = $rounds + 2; |
||||||
|
|
||||||
|
$begin = microtime(true); |
||||||
|
$x = 1.0; |
||||||
|
$pi = 1.0; |
||||||
|
|
||||||
|
for ($i = 2; $i <= $stop; $i++) { |
||||||
|
$x = -1.0 + 2.0 * ($i & 0x1); |
||||||
|
$pi += $x / (2 * $i - 1); |
||||||
|
} |
||||||
|
|
||||||
|
$pi *= 4.0; |
||||||
|
print $pi . "\n"; |
||||||
|
} |
||||||
|
?> |
||||||
|
--EXPECT-- |
||||||
|
3.141592643589326 |
||||||
Loading…
Reference in new issue