php-src/ext/standard/tests/math/pow_basic.phpt
Peter Kokot d679f02295 Sync leading and final newlines in *.phpt sections
This patch adds missing newlines, trims multiple redundant final
newlines into a single one, and trims redundant leading newlines in all
*.phpt sections.

According to POSIX, a line is a sequence of zero or more non-' <newline>'
characters plus a terminating '<newline>' character. [1] Files should
normally have at least one final newline character.

C89 [2] and later standards [3] mention a final newline:
"A source file that is not empty shall end in a new-line character,
which shall not be immediately preceded by a backslash character."

Although it is not mandatory for all files to have a final newline
fixed, a more consistent and homogeneous approach brings less of commit
differences issues and a better development experience in certain text
editors and IDEs.

[1] http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap03.html#tag_03_206
[2] https://port70.net/~nsz/c/c89/c89-draft.html#2.1.1.2
[3] https://port70.net/~nsz/c/c99/n1256.html#5.1.1.2
2018-10-15 04:33:09 +02:00

270 lines
7.6 KiB
PHP

--TEST--
Test pow() - basic function test pow()
--INI--
precision=14
--SKIPIF--
<?php
if (PHP_INT_SIZE != 4) die("skip this test is for 32bit platform only");
?>
--FILE--
<?php
$bases = array(23,
-23,
23.1,
-23.1,
2.345e1,
-2.345e1,
0x17,
027,
"23",
"23.45",
"2.345e1",
PHP_INT_MAX,
-PHP_INT_MAX - 1);
$exponents = array(0,
1,
-1,
2,
-2,
3,
-3,
2.5,
-2.5,
500,
-500,
2147483647,
-2147483648);
foreach($bases as $base) {
echo "\n\nBase = $base";
foreach($exponents as $exponent) {
echo "\n..... Exponent = $exponent Result = ";
$res = pow($base, $exponent);
echo $res;
}
echo "\n\n";
}
?>
===Done===
--EXPECT--
Base = 23
..... Exponent = 0 Result = 1
..... Exponent = 1 Result = 23
..... Exponent = -1 Result = 0.043478260869565
..... Exponent = 2 Result = 529
..... Exponent = -2 Result = 0.001890359168242
..... Exponent = 3 Result = 12167
..... Exponent = -3 Result = 8.2189529053999E-5
..... Exponent = 2.5 Result = 2536.9948758324
..... Exponent = -2.5 Result = 0.00039416713432339
..... Exponent = 500 Result = INF
..... Exponent = -500 Result = 0
..... Exponent = 2147483647 Result = INF
..... Exponent = -2147483648 Result = 0
Base = -23
..... Exponent = 0 Result = 1
..... Exponent = 1 Result = -23
..... Exponent = -1 Result = -0.043478260869565
..... Exponent = 2 Result = 529
..... Exponent = -2 Result = 0.001890359168242
..... Exponent = 3 Result = -12167
..... Exponent = -3 Result = -8.2189529053999E-5
..... Exponent = 2.5 Result = NAN
..... Exponent = -2.5 Result = NAN
..... Exponent = 500 Result = INF
..... Exponent = -500 Result = 0
..... Exponent = 2147483647 Result = -INF
..... Exponent = -2147483648 Result = 0
Base = 23.1
..... Exponent = 0 Result = 1
..... Exponent = 1 Result = 23.1
..... Exponent = -1 Result = 0.043290043290043
..... Exponent = 2 Result = 533.61
..... Exponent = -2 Result = 0.0018740278480538
..... Exponent = 3 Result = 12326.391
..... Exponent = -3 Result = 8.1126746668997E-5
..... Exponent = 2.5 Result = 2564.6608940579
..... Exponent = -2.5 Result = 0.00038991509650141
..... Exponent = 500 Result = INF
..... Exponent = -500 Result = 0
..... Exponent = 2147483647 Result = INF
..... Exponent = -2147483648 Result = 0
Base = -23.1
..... Exponent = 0 Result = 1
..... Exponent = 1 Result = -23.1
..... Exponent = -1 Result = -0.043290043290043
..... Exponent = 2 Result = 533.61
..... Exponent = -2 Result = 0.0018740278480538
..... Exponent = 3 Result = -12326.391
..... Exponent = -3 Result = -8.1126746668997E-5
..... Exponent = 2.5 Result = NAN
..... Exponent = -2.5 Result = NAN
..... Exponent = 500 Result = INF
..... Exponent = -500 Result = 0
..... Exponent = 2147483647 Result = -INF
..... Exponent = -2147483648 Result = 0
Base = 23.45
..... Exponent = 0 Result = 1
..... Exponent = 1 Result = 23.45
..... Exponent = -1 Result = 0.042643923240938
..... Exponent = 2 Result = 549.9025
..... Exponent = -2 Result = 0.001818504189379
..... Exponent = 3 Result = 12895.213625
..... Exponent = -3 Result = 7.7548153065204E-5
..... Exponent = 2.5 Result = 2662.9138571162
..... Exponent = -2.5 Result = 0.00037552848257846
..... Exponent = 500 Result = INF
..... Exponent = -500 Result = 0
..... Exponent = 2147483647 Result = INF
..... Exponent = -2147483648 Result = 0
Base = -23.45
..... Exponent = 0 Result = 1
..... Exponent = 1 Result = -23.45
..... Exponent = -1 Result = -0.042643923240938
..... Exponent = 2 Result = 549.9025
..... Exponent = -2 Result = 0.001818504189379
..... Exponent = 3 Result = -12895.213625
..... Exponent = -3 Result = -7.7548153065204E-5
..... Exponent = 2.5 Result = NAN
..... Exponent = -2.5 Result = NAN
..... Exponent = 500 Result = INF
..... Exponent = -500 Result = 0
..... Exponent = 2147483647 Result = -INF
..... Exponent = -2147483648 Result = 0
Base = 23
..... Exponent = 0 Result = 1
..... Exponent = 1 Result = 23
..... Exponent = -1 Result = 0.043478260869565
..... Exponent = 2 Result = 529
..... Exponent = -2 Result = 0.001890359168242
..... Exponent = 3 Result = 12167
..... Exponent = -3 Result = 8.2189529053999E-5
..... Exponent = 2.5 Result = 2536.9948758324
..... Exponent = -2.5 Result = 0.00039416713432339
..... Exponent = 500 Result = INF
..... Exponent = -500 Result = 0
..... Exponent = 2147483647 Result = INF
..... Exponent = -2147483648 Result = 0
Base = 23
..... Exponent = 0 Result = 1
..... Exponent = 1 Result = 23
..... Exponent = -1 Result = 0.043478260869565
..... Exponent = 2 Result = 529
..... Exponent = -2 Result = 0.001890359168242
..... Exponent = 3 Result = 12167
..... Exponent = -3 Result = 8.2189529053999E-5
..... Exponent = 2.5 Result = 2536.9948758324
..... Exponent = -2.5 Result = 0.00039416713432339
..... Exponent = 500 Result = INF
..... Exponent = -500 Result = 0
..... Exponent = 2147483647 Result = INF
..... Exponent = -2147483648 Result = 0
Base = 23
..... Exponent = 0 Result = 1
..... Exponent = 1 Result = 23
..... Exponent = -1 Result = 0.043478260869565
..... Exponent = 2 Result = 529
..... Exponent = -2 Result = 0.001890359168242
..... Exponent = 3 Result = 12167
..... Exponent = -3 Result = 8.2189529053999E-5
..... Exponent = 2.5 Result = 2536.9948758324
..... Exponent = -2.5 Result = 0.00039416713432339
..... Exponent = 500 Result = INF
..... Exponent = -500 Result = 0
..... Exponent = 2147483647 Result = INF
..... Exponent = -2147483648 Result = 0
Base = 23.45
..... Exponent = 0 Result = 1
..... Exponent = 1 Result = 23.45
..... Exponent = -1 Result = 0.042643923240938
..... Exponent = 2 Result = 549.9025
..... Exponent = -2 Result = 0.001818504189379
..... Exponent = 3 Result = 12895.213625
..... Exponent = -3 Result = 7.7548153065204E-5
..... Exponent = 2.5 Result = 2662.9138571162
..... Exponent = -2.5 Result = 0.00037552848257846
..... Exponent = 500 Result = INF
..... Exponent = -500 Result = 0
..... Exponent = 2147483647 Result = INF
..... Exponent = -2147483648 Result = 0
Base = 2.345e1
..... Exponent = 0 Result = 1
..... Exponent = 1 Result = 23.45
..... Exponent = -1 Result = 0.042643923240938
..... Exponent = 2 Result = 549.9025
..... Exponent = -2 Result = 0.001818504189379
..... Exponent = 3 Result = 12895.213625
..... Exponent = -3 Result = 7.7548153065204E-5
..... Exponent = 2.5 Result = 2662.9138571162
..... Exponent = -2.5 Result = 0.00037552848257846
..... Exponent = 500 Result = INF
..... Exponent = -500 Result = 0
..... Exponent = 2147483647 Result = INF
..... Exponent = -2147483648 Result = 0
Base = 2147483647
..... Exponent = 0 Result = 1
..... Exponent = 1 Result = 2147483647
..... Exponent = -1 Result = 4.6566128752458E-10
..... Exponent = 2 Result = 4.6116860141324E+18
..... Exponent = -2 Result = 2.1684043469905E-19
..... Exponent = 3 Result = 9.903520300448E+27
..... Exponent = -3 Result = 1.0097419600935E-28
..... Exponent = 2.5 Result = 2.1370991100146E+23
..... Exponent = -2.5 Result = 4.6792401686657E-24
..... Exponent = 500 Result = INF
..... Exponent = -500 Result = 0
..... Exponent = 2147483647 Result = INF
..... Exponent = -2147483648 Result = 0
Base = -2147483648
..... Exponent = 0 Result = 1
..... Exponent = 1 Result = -2147483648
..... Exponent = -1 Result = -4.6566128730774E-10
..... Exponent = 2 Result = 4.6116860184274E+18
..... Exponent = -2 Result = 2.168404344971E-19
..... Exponent = 3 Result = -9.903520314283E+27
..... Exponent = -3 Result = -1.0097419586829E-28
..... Exponent = 2.5 Result = NAN
..... Exponent = -2.5 Result = NAN
..... Exponent = 500 Result = INF
..... Exponent = -500 Result = 0
..... Exponent = 2147483647 Result = -INF
..... Exponent = -2147483648 Result = 0
===Done===