Annotation of embedaddon/php/ext/standard/tests/math/pow_basic.phpt, revision 1.1.1.1
1.1 misho 1: --TEST--
2: Test pow() - basic function test pow()
3: --INI--
4: precision=14
5: --SKIPIF--
6: <?php
7: if (PHP_INT_SIZE != 4) die("skip this test is for 32bit platform only");
8: ?>
9: --FILE--
10: <?php
11: $bases = array(23,
12: -23,
13: 23.1,
14: -23.1,
15: 2.345e1,
16: -2.345e1,
17: 0x17,
18: 027,
19: "23",
20: "23.45",
21: "2.345e1",
22: PHP_INT_MAX,
23: -PHP_INT_MAX - 1);
24:
25: $exponents = array(0,
26: 1,
27: -1,
28: 2,
29: -2,
30: 3,
31: -3,
32: 2.5,
33: -2.5,
34: 500,
35: -500,
36: 2147483647,
37: -2147483648);
38:
39: foreach($bases as $base) {
40: echo "\n\nBase = $base";
41: foreach($exponents as $exponent) {
42: echo "\n..... Exponent = $exponent Result = ";
43: $res = pow($base, $exponent);
44: echo $res;
45: }
46: echo "\n\n";
47: }
48: ?>
49: ===Done===
50: --EXPECT--
51: Base = 23
52: ..... Exponent = 0 Result = 1
53: ..... Exponent = 1 Result = 23
54: ..... Exponent = -1 Result = 0.043478260869565
55: ..... Exponent = 2 Result = 529
56: ..... Exponent = -2 Result = 0.001890359168242
57: ..... Exponent = 3 Result = 12167
58: ..... Exponent = -3 Result = 8.2189529053999E-5
59: ..... Exponent = 2.5 Result = 2536.9948758324
60: ..... Exponent = -2.5 Result = 0.00039416713432339
61: ..... Exponent = 500 Result = INF
62: ..... Exponent = -500 Result = 0
63: ..... Exponent = 2147483647 Result = INF
64: ..... Exponent = -2147483648 Result = 0
65:
66:
67:
68: Base = -23
69: ..... Exponent = 0 Result = 1
70: ..... Exponent = 1 Result = -23
71: ..... Exponent = -1 Result = -0.043478260869565
72: ..... Exponent = 2 Result = 529
73: ..... Exponent = -2 Result = 0.001890359168242
74: ..... Exponent = 3 Result = -12167
75: ..... Exponent = -3 Result = -8.2189529053999E-5
76: ..... Exponent = 2.5 Result = NAN
77: ..... Exponent = -2.5 Result = NAN
78: ..... Exponent = 500 Result = INF
79: ..... Exponent = -500 Result = 0
80: ..... Exponent = 2147483647 Result = -INF
81: ..... Exponent = -2147483648 Result = 0
82:
83:
84:
85: Base = 23.1
86: ..... Exponent = 0 Result = 1
87: ..... Exponent = 1 Result = 23.1
88: ..... Exponent = -1 Result = 0.043290043290043
89: ..... Exponent = 2 Result = 533.61
90: ..... Exponent = -2 Result = 0.0018740278480538
91: ..... Exponent = 3 Result = 12326.391
92: ..... Exponent = -3 Result = 8.1126746668997E-5
93: ..... Exponent = 2.5 Result = 2564.6608940579
94: ..... Exponent = -2.5 Result = 0.00038991509650141
95: ..... Exponent = 500 Result = INF
96: ..... Exponent = -500 Result = 0
97: ..... Exponent = 2147483647 Result = INF
98: ..... Exponent = -2147483648 Result = 0
99:
100:
101:
102: Base = -23.1
103: ..... Exponent = 0 Result = 1
104: ..... Exponent = 1 Result = -23.1
105: ..... Exponent = -1 Result = -0.043290043290043
106: ..... Exponent = 2 Result = 533.61
107: ..... Exponent = -2 Result = 0.0018740278480538
108: ..... Exponent = 3 Result = -12326.391
109: ..... Exponent = -3 Result = -8.1126746668997E-5
110: ..... Exponent = 2.5 Result = NAN
111: ..... Exponent = -2.5 Result = NAN
112: ..... Exponent = 500 Result = INF
113: ..... Exponent = -500 Result = 0
114: ..... Exponent = 2147483647 Result = -INF
115: ..... Exponent = -2147483648 Result = 0
116:
117:
118:
119: Base = 23.45
120: ..... Exponent = 0 Result = 1
121: ..... Exponent = 1 Result = 23.45
122: ..... Exponent = -1 Result = 0.042643923240938
123: ..... Exponent = 2 Result = 549.9025
124: ..... Exponent = -2 Result = 0.001818504189379
125: ..... Exponent = 3 Result = 12895.213625
126: ..... Exponent = -3 Result = 7.7548153065204E-5
127: ..... Exponent = 2.5 Result = 2662.9138571162
128: ..... Exponent = -2.5 Result = 0.00037552848257846
129: ..... Exponent = 500 Result = INF
130: ..... Exponent = -500 Result = 0
131: ..... Exponent = 2147483647 Result = INF
132: ..... Exponent = -2147483648 Result = 0
133:
134:
135:
136: Base = -23.45
137: ..... Exponent = 0 Result = 1
138: ..... Exponent = 1 Result = -23.45
139: ..... Exponent = -1 Result = -0.042643923240938
140: ..... Exponent = 2 Result = 549.9025
141: ..... Exponent = -2 Result = 0.001818504189379
142: ..... Exponent = 3 Result = -12895.213625
143: ..... Exponent = -3 Result = -7.7548153065204E-5
144: ..... Exponent = 2.5 Result = NAN
145: ..... Exponent = -2.5 Result = NAN
146: ..... Exponent = 500 Result = INF
147: ..... Exponent = -500 Result = 0
148: ..... Exponent = 2147483647 Result = -INF
149: ..... Exponent = -2147483648 Result = 0
150:
151:
152:
153: Base = 23
154: ..... Exponent = 0 Result = 1
155: ..... Exponent = 1 Result = 23
156: ..... Exponent = -1 Result = 0.043478260869565
157: ..... Exponent = 2 Result = 529
158: ..... Exponent = -2 Result = 0.001890359168242
159: ..... Exponent = 3 Result = 12167
160: ..... Exponent = -3 Result = 8.2189529053999E-5
161: ..... Exponent = 2.5 Result = 2536.9948758324
162: ..... Exponent = -2.5 Result = 0.00039416713432339
163: ..... Exponent = 500 Result = INF
164: ..... Exponent = -500 Result = 0
165: ..... Exponent = 2147483647 Result = INF
166: ..... Exponent = -2147483648 Result = 0
167:
168:
169:
170: Base = 23
171: ..... Exponent = 0 Result = 1
172: ..... Exponent = 1 Result = 23
173: ..... Exponent = -1 Result = 0.043478260869565
174: ..... Exponent = 2 Result = 529
175: ..... Exponent = -2 Result = 0.001890359168242
176: ..... Exponent = 3 Result = 12167
177: ..... Exponent = -3 Result = 8.2189529053999E-5
178: ..... Exponent = 2.5 Result = 2536.9948758324
179: ..... Exponent = -2.5 Result = 0.00039416713432339
180: ..... Exponent = 500 Result = INF
181: ..... Exponent = -500 Result = 0
182: ..... Exponent = 2147483647 Result = INF
183: ..... Exponent = -2147483648 Result = 0
184:
185:
186:
187: Base = 23
188: ..... Exponent = 0 Result = 1
189: ..... Exponent = 1 Result = 23
190: ..... Exponent = -1 Result = 0.043478260869565
191: ..... Exponent = 2 Result = 529
192: ..... Exponent = -2 Result = 0.001890359168242
193: ..... Exponent = 3 Result = 12167
194: ..... Exponent = -3 Result = 8.2189529053999E-5
195: ..... Exponent = 2.5 Result = 2536.9948758324
196: ..... Exponent = -2.5 Result = 0.00039416713432339
197: ..... Exponent = 500 Result = INF
198: ..... Exponent = -500 Result = 0
199: ..... Exponent = 2147483647 Result = INF
200: ..... Exponent = -2147483648 Result = 0
201:
202:
203:
204: Base = 23.45
205: ..... Exponent = 0 Result = 1
206: ..... Exponent = 1 Result = 23.45
207: ..... Exponent = -1 Result = 0.042643923240938
208: ..... Exponent = 2 Result = 549.9025
209: ..... Exponent = -2 Result = 0.001818504189379
210: ..... Exponent = 3 Result = 12895.213625
211: ..... Exponent = -3 Result = 7.7548153065204E-5
212: ..... Exponent = 2.5 Result = 2662.9138571162
213: ..... Exponent = -2.5 Result = 0.00037552848257846
214: ..... Exponent = 500 Result = INF
215: ..... Exponent = -500 Result = 0
216: ..... Exponent = 2147483647 Result = INF
217: ..... Exponent = -2147483648 Result = 0
218:
219:
220:
221: Base = 2.345e1
222: ..... Exponent = 0 Result = 1
223: ..... Exponent = 1 Result = 23.45
224: ..... Exponent = -1 Result = 0.042643923240938
225: ..... Exponent = 2 Result = 549.9025
226: ..... Exponent = -2 Result = 0.001818504189379
227: ..... Exponent = 3 Result = 12895.213625
228: ..... Exponent = -3 Result = 7.7548153065204E-5
229: ..... Exponent = 2.5 Result = 2662.9138571162
230: ..... Exponent = -2.5 Result = 0.00037552848257846
231: ..... Exponent = 500 Result = INF
232: ..... Exponent = -500 Result = 0
233: ..... Exponent = 2147483647 Result = INF
234: ..... Exponent = -2147483648 Result = 0
235:
236:
237:
238: Base = 2147483647
239: ..... Exponent = 0 Result = 1
240: ..... Exponent = 1 Result = 2147483647
241: ..... Exponent = -1 Result = 4.6566128752458E-10
242: ..... Exponent = 2 Result = 4.6116860141324E+18
243: ..... Exponent = -2 Result = 2.1684043469905E-19
244: ..... Exponent = 3 Result = 9.903520300448E+27
245: ..... Exponent = -3 Result = 1.0097419600935E-28
246: ..... Exponent = 2.5 Result = 2.1370991100146E+23
247: ..... Exponent = -2.5 Result = 4.6792401686657E-24
248: ..... Exponent = 500 Result = INF
249: ..... Exponent = -500 Result = 0
250: ..... Exponent = 2147483647 Result = INF
251: ..... Exponent = -2147483648 Result = 0
252:
253:
254:
255: Base = -2147483648
256: ..... Exponent = 0 Result = 1
257: ..... Exponent = 1 Result = -2147483648
258: ..... Exponent = -1 Result = -4.6566128730774E-10
259: ..... Exponent = 2 Result = 4.6116860184274E+18
260: ..... Exponent = -2 Result = 2.168404344971E-19
261: ..... Exponent = 3 Result = -9.903520314283E+27
262: ..... Exponent = -3 Result = -1.0097419586829E-28
263: ..... Exponent = 2.5 Result = NAN
264: ..... Exponent = -2.5 Result = NAN
265: ..... Exponent = 500 Result = INF
266: ..... Exponent = -500 Result = 0
267: ..... Exponent = 2147483647 Result = -INF
268: ..... Exponent = -2147483648 Result = 0
269:
270: ===Done===
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>