From 1e7e2cc0d2c60aa40208282ffbd373c31e7d86ad Mon Sep 17 00:00:00 2001 From: jorgsowa Date: Tue, 27 Jun 2023 23:20:04 +0200 Subject: [PATCH 01/15] Extended tests of bcmath function --- ext/bcmath/tests/bcadd_basic.phpt | 344 ++++++++++++++++++++++ ext/bcmath/tests/bcadd_large_numbers.phpt | 264 +++++++++++++++++ ext/bcmath/tests/bcadd_variation001.phpt | 22 -- ext/bcmath/tests/bcadd_zero.phpt | 184 ++++++++++++ 4 files changed, 792 insertions(+), 22 deletions(-) create mode 100644 ext/bcmath/tests/bcadd_basic.phpt create mode 100644 ext/bcmath/tests/bcadd_large_numbers.phpt delete mode 100644 ext/bcmath/tests/bcadd_variation001.phpt create mode 100644 ext/bcmath/tests/bcadd_zero.phpt diff --git a/ext/bcmath/tests/bcadd_basic.phpt b/ext/bcmath/tests/bcadd_basic.phpt new file mode 100644 index 0000000000000..fd8d0587e7ccf --- /dev/null +++ b/ext/bcmath/tests/bcadd_basic.phpt @@ -0,0 +1,344 @@ +--TEST-- +bcadd() function basic numbers +--EXTENSIONS-- +bcmath +--INI-- +bcmath.scale=0 +--FILE-- + +--EXPECT-- +Number "15" (scale 0) + 15 + 15 = 30 + 15 + -15 = 0 + 15 + 1 = 16 + 15 + -9 = 6 + 15 + 14.14 = 29 + 15 + -16.60 = -1 + 15 + 0.15 = 15 + 15 + -0.01 = 14 + 15 + 0 = 15 + 15 + 0.00 = 15 + 15 + -0 = 15 + 15 + -0.00 = 15 + 15 + 15151324141414.412312232141241 = 15151324141429 + 15 + -132132245132134.1515123765412 = -132132245132119 + 15 + 141241241241241248267654747412 = 141241241241241248267654747427 + 15 + -149143276547656984948124912 = -149143276547656984948124897 + 15 + 0.1322135476547459213732911312 = 15 + 15 + -0.123912932193769965476541321 = 14 + +Number "-15" (scale 0) + -15 + 15 = 0 + -15 + -15 = -30 + -15 + 1 = -14 + -15 + -9 = -24 + -15 + 14.14 = 0 + -15 + -16.60 = -31 + -15 + 0.15 = -14 + -15 + -0.01 = -15 + -15 + 0 = -15 + -15 + 0.00 = -15 + -15 + -0 = -15 + -15 + -0.00 = -15 + -15 + 15151324141414.412312232141241 = 15151324141399 + -15 + -132132245132134.1515123765412 = -132132245132149 + -15 + 141241241241241248267654747412 = 141241241241241248267654747397 + -15 + -149143276547656984948124912 = -149143276547656984948124927 + -15 + 0.1322135476547459213732911312 = -14 + -15 + -0.123912932193769965476541321 = -15 + +Number "1" (scale 0) + 1 + 15 = 16 + 1 + -15 = -14 + 1 + 1 = 2 + 1 + -9 = -8 + 1 + 14.14 = 15 + 1 + -16.60 = -15 + 1 + 0.15 = 1 + 1 + -0.01 = 0 + 1 + 0 = 1 + 1 + 0.00 = 1 + 1 + -0 = 1 + 1 + -0.00 = 1 + 1 + 15151324141414.412312232141241 = 15151324141415 + 1 + -132132245132134.1515123765412 = -132132245132133 + 1 + 141241241241241248267654747412 = 141241241241241248267654747413 + 1 + -149143276547656984948124912 = -149143276547656984948124911 + 1 + 0.1322135476547459213732911312 = 1 + 1 + -0.123912932193769965476541321 = 0 + +Number "-9" (scale 0) + -9 + 15 = 6 + -9 + -15 = -24 + -9 + 1 = -8 + -9 + -9 = -18 + -9 + 14.14 = 5 + -9 + -16.60 = -25 + -9 + 0.15 = -8 + -9 + -0.01 = -9 + -9 + 0 = -9 + -9 + 0.00 = -9 + -9 + -0 = -9 + -9 + -0.00 = -9 + -9 + 15151324141414.412312232141241 = 15151324141405 + -9 + -132132245132134.1515123765412 = -132132245132143 + -9 + 141241241241241248267654747412 = 141241241241241248267654747403 + -9 + -149143276547656984948124912 = -149143276547656984948124921 + -9 + 0.1322135476547459213732911312 = -8 + -9 + -0.123912932193769965476541321 = -9 + +Number "14.14" (scale 0) + 14.14 + 15 = 29 + 14.14 + -15 = 0 + 14.14 + 1 = 15 + 14.14 + -9 = 5 + 14.14 + 14.14 = 28 + 14.14 + -16.60 = -2 + 14.14 + 0.15 = 14 + 14.14 + -0.01 = 14 + 14.14 + 0 = 14 + 14.14 + 0.00 = 14 + 14.14 + -0 = 14 + 14.14 + -0.00 = 14 + 14.14 + 15151324141414.412312232141241 = 15151324141428 + 14.14 + -132132245132134.1515123765412 = -132132245132120 + 14.14 + 141241241241241248267654747412 = 141241241241241248267654747426 + 14.14 + -149143276547656984948124912 = -149143276547656984948124897 + 14.14 + 0.1322135476547459213732911312 = 14 + 14.14 + -0.123912932193769965476541321 = 14 + +Number "-16.60" (scale 0) +-16.60 + 15 = -1 +-16.60 + -15 = -31 +-16.60 + 1 = -15 +-16.60 + -9 = -25 +-16.60 + 14.14 = -2 +-16.60 + -16.60 = -33 +-16.60 + 0.15 = -16 +-16.60 + -0.01 = -16 +-16.60 + 0 = -16 +-16.60 + 0.00 = -16 +-16.60 + -0 = -16 +-16.60 + -0.00 = -16 +-16.60 + 15151324141414.412312232141241 = 15151324141397 +-16.60 + -132132245132134.1515123765412 = -132132245132150 +-16.60 + 141241241241241248267654747412 = 141241241241241248267654747395 +-16.60 + -149143276547656984948124912 = -149143276547656984948124928 +-16.60 + 0.1322135476547459213732911312 = -16 +-16.60 + -0.123912932193769965476541321 = -16 + +Number "0.15" (scale 0) + 0.15 + 15 = 15 + 0.15 + -15 = -14 + 0.15 + 1 = 1 + 0.15 + -9 = -8 + 0.15 + 14.14 = 14 + 0.15 + -16.60 = -16 + 0.15 + 0.15 = 0 + 0.15 + -0.01 = 0 + 0.15 + 0 = 0 + 0.15 + 0.00 = 0 + 0.15 + -0 = 0 + 0.15 + -0.00 = 0 + 0.15 + 15151324141414.412312232141241 = 15151324141414 + 0.15 + -132132245132134.1515123765412 = -132132245132134 + 0.15 + 141241241241241248267654747412 = 141241241241241248267654747412 + 0.15 + -149143276547656984948124912 = -149143276547656984948124911 + 0.15 + 0.1322135476547459213732911312 = 0 + 0.15 + -0.123912932193769965476541321 = 0 + +Number "-0.01" (scale 0) + -0.01 + 15 = 14 + -0.01 + -15 = -15 + -0.01 + 1 = 0 + -0.01 + -9 = -9 + -0.01 + 14.14 = 14 + -0.01 + -16.60 = -16 + -0.01 + 0.15 = 0 + -0.01 + -0.01 = 0 + -0.01 + 0 = 0 + -0.01 + 0.00 = 0 + -0.01 + -0 = 0 + -0.01 + -0.00 = 0 + -0.01 + 15151324141414.412312232141241 = 15151324141414 + -0.01 + -132132245132134.1515123765412 = -132132245132134 + -0.01 + 141241241241241248267654747412 = 141241241241241248267654747411 + -0.01 + -149143276547656984948124912 = -149143276547656984948124912 + -0.01 + 0.1322135476547459213732911312 = 0 + -0.01 + -0.123912932193769965476541321 = 0 + +Number "15" (scale 10) + 15 + 15 = 30.0000000000 + 15 + -15 = 0.0000000000 + 15 + 1 = 16.0000000000 + 15 + -9 = 6.0000000000 + 15 + 14.14 = 29.1400000000 + 15 + -16.60 = -1.6000000000 + 15 + 0.15 = 15.1500000000 + 15 + -0.01 = 14.9900000000 + 15 + 0 = 15.0000000000 + 15 + 0.00 = 15.0000000000 + 15 + -0 = 15.0000000000 + 15 + -0.00 = 15.0000000000 + 15 + 15151324141414.412312232141241 = 15151324141429.4123122321 + 15 + -132132245132134.1515123765412 = -132132245132119.1515123765 + 15 + 141241241241241248267654747412 = 141241241241241248267654747427.0000000000 + 15 + -149143276547656984948124912 = -149143276547656984948124897.0000000000 + 15 + 0.1322135476547459213732911312 = 15.1322135476 + 15 + -0.123912932193769965476541321 = 14.8760870678 + +Number "-15" (scale 10) + -15 + 15 = 0.0000000000 + -15 + -15 = -30.0000000000 + -15 + 1 = -14.0000000000 + -15 + -9 = -24.0000000000 + -15 + 14.14 = -0.8600000000 + -15 + -16.60 = -31.6000000000 + -15 + 0.15 = -14.8500000000 + -15 + -0.01 = -15.0100000000 + -15 + 0 = -15.0000000000 + -15 + 0.00 = -15.0000000000 + -15 + -0 = -15.0000000000 + -15 + -0.00 = -15.0000000000 + -15 + 15151324141414.412312232141241 = 15151324141399.4123122321 + -15 + -132132245132134.1515123765412 = -132132245132149.1515123765 + -15 + 141241241241241248267654747412 = 141241241241241248267654747397.0000000000 + -15 + -149143276547656984948124912 = -149143276547656984948124927.0000000000 + -15 + 0.1322135476547459213732911312 = -14.8677864523 + -15 + -0.123912932193769965476541321 = -15.1239129321 + +Number "1" (scale 10) + 1 + 15 = 16.0000000000 + 1 + -15 = -14.0000000000 + 1 + 1 = 2.0000000000 + 1 + -9 = -8.0000000000 + 1 + 14.14 = 15.1400000000 + 1 + -16.60 = -15.6000000000 + 1 + 0.15 = 1.1500000000 + 1 + -0.01 = 0.9900000000 + 1 + 0 = 1.0000000000 + 1 + 0.00 = 1.0000000000 + 1 + -0 = 1.0000000000 + 1 + -0.00 = 1.0000000000 + 1 + 15151324141414.412312232141241 = 15151324141415.4123122321 + 1 + -132132245132134.1515123765412 = -132132245132133.1515123765 + 1 + 141241241241241248267654747412 = 141241241241241248267654747413.0000000000 + 1 + -149143276547656984948124912 = -149143276547656984948124911.0000000000 + 1 + 0.1322135476547459213732911312 = 1.1322135476 + 1 + -0.123912932193769965476541321 = 0.8760870678 + +Number "-9" (scale 10) + -9 + 15 = 6.0000000000 + -9 + -15 = -24.0000000000 + -9 + 1 = -8.0000000000 + -9 + -9 = -18.0000000000 + -9 + 14.14 = 5.1400000000 + -9 + -16.60 = -25.6000000000 + -9 + 0.15 = -8.8500000000 + -9 + -0.01 = -9.0100000000 + -9 + 0 = -9.0000000000 + -9 + 0.00 = -9.0000000000 + -9 + -0 = -9.0000000000 + -9 + -0.00 = -9.0000000000 + -9 + 15151324141414.412312232141241 = 15151324141405.4123122321 + -9 + -132132245132134.1515123765412 = -132132245132143.1515123765 + -9 + 141241241241241248267654747412 = 141241241241241248267654747403.0000000000 + -9 + -149143276547656984948124912 = -149143276547656984948124921.0000000000 + -9 + 0.1322135476547459213732911312 = -8.8677864523 + -9 + -0.123912932193769965476541321 = -9.1239129321 + +Number "14.14" (scale 10) + 14.14 + 15 = 29.1400000000 + 14.14 + -15 = -0.8600000000 + 14.14 + 1 = 15.1400000000 + 14.14 + -9 = 5.1400000000 + 14.14 + 14.14 = 28.2800000000 + 14.14 + -16.60 = -2.4600000000 + 14.14 + 0.15 = 14.2900000000 + 14.14 + -0.01 = 14.1300000000 + 14.14 + 0 = 14.1400000000 + 14.14 + 0.00 = 14.1400000000 + 14.14 + -0 = 14.1400000000 + 14.14 + -0.00 = 14.1400000000 + 14.14 + 15151324141414.412312232141241 = 15151324141428.5523122321 + 14.14 + -132132245132134.1515123765412 = -132132245132120.0115123765 + 14.14 + 141241241241241248267654747412 = 141241241241241248267654747426.1400000000 + 14.14 + -149143276547656984948124912 = -149143276547656984948124897.8600000000 + 14.14 + 0.1322135476547459213732911312 = 14.2722135476 + 14.14 + -0.123912932193769965476541321 = 14.0160870678 + +Number "-16.60" (scale 10) +-16.60 + 15 = -1.6000000000 +-16.60 + -15 = -31.6000000000 +-16.60 + 1 = -15.6000000000 +-16.60 + -9 = -25.6000000000 +-16.60 + 14.14 = -2.4600000000 +-16.60 + -16.60 = -33.2000000000 +-16.60 + 0.15 = -16.4500000000 +-16.60 + -0.01 = -16.6100000000 +-16.60 + 0 = -16.6000000000 +-16.60 + 0.00 = -16.6000000000 +-16.60 + -0 = -16.6000000000 +-16.60 + -0.00 = -16.6000000000 +-16.60 + 15151324141414.412312232141241 = 15151324141397.8123122321 +-16.60 + -132132245132134.1515123765412 = -132132245132150.7515123765 +-16.60 + 141241241241241248267654747412 = 141241241241241248267654747395.4000000000 +-16.60 + -149143276547656984948124912 = -149143276547656984948124928.6000000000 +-16.60 + 0.1322135476547459213732911312 = -16.4677864523 +-16.60 + -0.123912932193769965476541321 = -16.7239129321 + +Number "0.15" (scale 10) + 0.15 + 15 = 15.1500000000 + 0.15 + -15 = -14.8500000000 + 0.15 + 1 = 1.1500000000 + 0.15 + -9 = -8.8500000000 + 0.15 + 14.14 = 14.2900000000 + 0.15 + -16.60 = -16.4500000000 + 0.15 + 0.15 = 0.3000000000 + 0.15 + -0.01 = 0.1400000000 + 0.15 + 0 = 0.1500000000 + 0.15 + 0.00 = 0.1500000000 + 0.15 + -0 = 0.1500000000 + 0.15 + -0.00 = 0.1500000000 + 0.15 + 15151324141414.412312232141241 = 15151324141414.5623122321 + 0.15 + -132132245132134.1515123765412 = -132132245132134.0015123765 + 0.15 + 141241241241241248267654747412 = 141241241241241248267654747412.1500000000 + 0.15 + -149143276547656984948124912 = -149143276547656984948124911.8500000000 + 0.15 + 0.1322135476547459213732911312 = 0.2822135476 + 0.15 + -0.123912932193769965476541321 = 0.0260870678 + +Number "-0.01" (scale 10) + -0.01 + 15 = 14.9900000000 + -0.01 + -15 = -15.0100000000 + -0.01 + 1 = 0.9900000000 + -0.01 + -9 = -9.0100000000 + -0.01 + 14.14 = 14.1300000000 + -0.01 + -16.60 = -16.6100000000 + -0.01 + 0.15 = 0.1400000000 + -0.01 + -0.01 = -0.0200000000 + -0.01 + 0 = -0.0100000000 + -0.01 + 0.00 = -0.0100000000 + -0.01 + -0 = -0.0100000000 + -0.01 + -0.00 = -0.0100000000 + -0.01 + 15151324141414.412312232141241 = 15151324141414.4023122321 + -0.01 + -132132245132134.1515123765412 = -132132245132134.1615123765 + -0.01 + 141241241241241248267654747412 = 141241241241241248267654747411.9900000000 + -0.01 + -149143276547656984948124912 = -149143276547656984948124912.0100000000 + -0.01 + 0.1322135476547459213732911312 = 0.1222135476 + -0.01 + -0.123912932193769965476541321 = -0.1339129321 \ No newline at end of file diff --git a/ext/bcmath/tests/bcadd_large_numbers.phpt b/ext/bcmath/tests/bcadd_large_numbers.phpt new file mode 100644 index 0000000000000..3a0022bcd78e2 --- /dev/null +++ b/ext/bcmath/tests/bcadd_large_numbers.phpt @@ -0,0 +1,264 @@ +--TEST-- +bcadd() function with large numbers +--EXTENSIONS-- +bcmath +--INI-- +bcmath.scale=0 +--FILE-- + +--EXPECT-- +Number "15151324141414.412312232141241" (scale 0) +15151324141414.412312232141241 + 15151324141414.412312232141241 = 30302648282828 +15151324141414.412312232141241 + -132132245132134.1515123765412 = -116980920990719 +15151324141414.412312232141241 + 141241241241241248267654747412 = 141241241241241263418978888826 +15151324141414.412312232141241 + -149143276547656984948124912 = -149143276547641833623983497 +15151324141414.412312232141241 + 0.1322135476547459213732911312 = 15151324141414 +15151324141414.412312232141241 + -0.123912932193769965476541321 = 15151324141414 +15151324141414.412312232141241 + 0 = 15151324141414 +15151324141414.412312232141241 + 0.00 = 15151324141414 +15151324141414.412312232141241 + -0 = 15151324141414 +15151324141414.412312232141241 + -0.00 = 15151324141414 +15151324141414.412312232141241 + 15 = 15151324141429 +15151324141414.412312232141241 + -15 = 15151324141399 +15151324141414.412312232141241 + 1 = 15151324141415 +15151324141414.412312232141241 + -9 = 15151324141405 +15151324141414.412312232141241 + 14.14 = 15151324141428 +15151324141414.412312232141241 + -16.60 = 15151324141397 +15151324141414.412312232141241 + 0.15 = 15151324141414 +15151324141414.412312232141241 + -0.01 = 15151324141414 + +Number "-132132245132134.1515123765412" (scale 0) +-132132245132134.1515123765412 + 15151324141414.412312232141241 = -116980920990719 +-132132245132134.1515123765412 + -132132245132134.1515123765412 = -264264490264268 +-132132245132134.1515123765412 + 141241241241241248267654747412 = 141241241241241116135409615277 +-132132245132134.1515123765412 + -149143276547656984948124912 = -149143276547789117193257046 +-132132245132134.1515123765412 + 0.1322135476547459213732911312 = -132132245132134 +-132132245132134.1515123765412 + -0.123912932193769965476541321 = -132132245132134 +-132132245132134.1515123765412 + 0 = -132132245132134 +-132132245132134.1515123765412 + 0.00 = -132132245132134 +-132132245132134.1515123765412 + -0 = -132132245132134 +-132132245132134.1515123765412 + -0.00 = -132132245132134 +-132132245132134.1515123765412 + 15 = -132132245132119 +-132132245132134.1515123765412 + -15 = -132132245132149 +-132132245132134.1515123765412 + 1 = -132132245132133 +-132132245132134.1515123765412 + -9 = -132132245132143 +-132132245132134.1515123765412 + 14.14 = -132132245132120 +-132132245132134.1515123765412 + -16.60 = -132132245132150 +-132132245132134.1515123765412 + 0.15 = -132132245132134 +-132132245132134.1515123765412 + -0.01 = -132132245132134 + +Number "141241241241241248267654747412" (scale 0) +141241241241241248267654747412 + 15151324141414.412312232141241 = 141241241241241263418978888826 +141241241241241248267654747412 + -132132245132134.1515123765412 = 141241241241241116135409615277 +141241241241241248267654747412 + 141241241241241248267654747412 = 282482482482482496535309494824 +141241241241241248267654747412 + -149143276547656984948124912 = 141092097964693591282706622500 +141241241241241248267654747412 + 0.1322135476547459213732911312 = 141241241241241248267654747412 +141241241241241248267654747412 + -0.123912932193769965476541321 = 141241241241241248267654747411 +141241241241241248267654747412 + 0 = 141241241241241248267654747412 +141241241241241248267654747412 + 0.00 = 141241241241241248267654747412 +141241241241241248267654747412 + -0 = 141241241241241248267654747412 +141241241241241248267654747412 + -0.00 = 141241241241241248267654747412 +141241241241241248267654747412 + 15 = 141241241241241248267654747427 +141241241241241248267654747412 + -15 = 141241241241241248267654747397 +141241241241241248267654747412 + 1 = 141241241241241248267654747413 +141241241241241248267654747412 + -9 = 141241241241241248267654747403 +141241241241241248267654747412 + 14.14 = 141241241241241248267654747426 +141241241241241248267654747412 + -16.60 = 141241241241241248267654747395 +141241241241241248267654747412 + 0.15 = 141241241241241248267654747412 +141241241241241248267654747412 + -0.01 = 141241241241241248267654747411 + +Number "-149143276547656984948124912" (scale 0) +-149143276547656984948124912 + 15151324141414.412312232141241 = -149143276547641833623983497 +-149143276547656984948124912 + -132132245132134.1515123765412 = -149143276547789117193257046 +-149143276547656984948124912 + 141241241241241248267654747412 = 141092097964693591282706622500 +-149143276547656984948124912 + -149143276547656984948124912 = -298286553095313969896249824 +-149143276547656984948124912 + 0.1322135476547459213732911312 = -149143276547656984948124911 +-149143276547656984948124912 + -0.123912932193769965476541321 = -149143276547656984948124912 +-149143276547656984948124912 + 0 = -149143276547656984948124912 +-149143276547656984948124912 + 0.00 = -149143276547656984948124912 +-149143276547656984948124912 + -0 = -149143276547656984948124912 +-149143276547656984948124912 + -0.00 = -149143276547656984948124912 +-149143276547656984948124912 + 15 = -149143276547656984948124897 +-149143276547656984948124912 + -15 = -149143276547656984948124927 +-149143276547656984948124912 + 1 = -149143276547656984948124911 +-149143276547656984948124912 + -9 = -149143276547656984948124921 +-149143276547656984948124912 + 14.14 = -149143276547656984948124897 +-149143276547656984948124912 + -16.60 = -149143276547656984948124928 +-149143276547656984948124912 + 0.15 = -149143276547656984948124911 +-149143276547656984948124912 + -0.01 = -149143276547656984948124912 + +Number "0.1322135476547459213732911312" (scale 0) +0.1322135476547459213732911312 + 15151324141414.412312232141241 = 15151324141414 +0.1322135476547459213732911312 + -132132245132134.1515123765412 = -132132245132134 +0.1322135476547459213732911312 + 141241241241241248267654747412 = 141241241241241248267654747412 +0.1322135476547459213732911312 + -149143276547656984948124912 = -149143276547656984948124911 +0.1322135476547459213732911312 + 0.1322135476547459213732911312 = 0 +0.1322135476547459213732911312 + -0.123912932193769965476541321 = 0 +0.1322135476547459213732911312 + 0 = 0 +0.1322135476547459213732911312 + 0.00 = 0 +0.1322135476547459213732911312 + -0 = 0 +0.1322135476547459213732911312 + -0.00 = 0 +0.1322135476547459213732911312 + 15 = 15 +0.1322135476547459213732911312 + -15 = -14 +0.1322135476547459213732911312 + 1 = 1 +0.1322135476547459213732911312 + -9 = -8 +0.1322135476547459213732911312 + 14.14 = 14 +0.1322135476547459213732911312 + -16.60 = -16 +0.1322135476547459213732911312 + 0.15 = 0 +0.1322135476547459213732911312 + -0.01 = 0 + +Number "-0.123912932193769965476541321" (scale 0) +-0.123912932193769965476541321 + 15151324141414.412312232141241 = 15151324141414 +-0.123912932193769965476541321 + -132132245132134.1515123765412 = -132132245132134 +-0.123912932193769965476541321 + 141241241241241248267654747412 = 141241241241241248267654747411 +-0.123912932193769965476541321 + -149143276547656984948124912 = -149143276547656984948124912 +-0.123912932193769965476541321 + 0.1322135476547459213732911312 = 0 +-0.123912932193769965476541321 + -0.123912932193769965476541321 = 0 +-0.123912932193769965476541321 + 0 = 0 +-0.123912932193769965476541321 + 0.00 = 0 +-0.123912932193769965476541321 + -0 = 0 +-0.123912932193769965476541321 + -0.00 = 0 +-0.123912932193769965476541321 + 15 = 14 +-0.123912932193769965476541321 + -15 = -15 +-0.123912932193769965476541321 + 1 = 0 +-0.123912932193769965476541321 + -9 = -9 +-0.123912932193769965476541321 + 14.14 = 14 +-0.123912932193769965476541321 + -16.60 = -16 +-0.123912932193769965476541321 + 0.15 = 0 +-0.123912932193769965476541321 + -0.01 = 0 + +Number "15151324141414.412312232141241" (scale 10) +15151324141414.412312232141241 + 15151324141414.412312232141241 = 30302648282828.8246244642 +15151324141414.412312232141241 + -132132245132134.1515123765412 = -116980920990719.7392001443 +15151324141414.412312232141241 + 141241241241241248267654747412 = 141241241241241263418978888826.4123122321 +15151324141414.412312232141241 + -149143276547656984948124912 = -149143276547641833623983497.5876877678 +15151324141414.412312232141241 + 0.1322135476547459213732911312 = 15151324141414.5445257797 +15151324141414.412312232141241 + -0.123912932193769965476541321 = 15151324141414.2883992999 +15151324141414.412312232141241 + 0 = 15151324141414.4123122321 +15151324141414.412312232141241 + 0.00 = 15151324141414.4123122321 +15151324141414.412312232141241 + -0 = 15151324141414.4123122321 +15151324141414.412312232141241 + -0.00 = 15151324141414.4123122321 +15151324141414.412312232141241 + 15 = 15151324141429.4123122321 +15151324141414.412312232141241 + -15 = 15151324141399.4123122321 +15151324141414.412312232141241 + 1 = 15151324141415.4123122321 +15151324141414.412312232141241 + -9 = 15151324141405.4123122321 +15151324141414.412312232141241 + 14.14 = 15151324141428.5523122321 +15151324141414.412312232141241 + -16.60 = 15151324141397.8123122321 +15151324141414.412312232141241 + 0.15 = 15151324141414.5623122321 +15151324141414.412312232141241 + -0.01 = 15151324141414.4023122321 + +Number "-132132245132134.1515123765412" (scale 10) +-132132245132134.1515123765412 + 15151324141414.412312232141241 = -116980920990719.7392001443 +-132132245132134.1515123765412 + -132132245132134.1515123765412 = -264264490264268.3030247530 +-132132245132134.1515123765412 + 141241241241241248267654747412 = 141241241241241116135409615277.8484876234 +-132132245132134.1515123765412 + -149143276547656984948124912 = -149143276547789117193257046.1515123765 +-132132245132134.1515123765412 + 0.1322135476547459213732911312 = -132132245132134.0192988288 +-132132245132134.1515123765412 + -0.123912932193769965476541321 = -132132245132134.2754253087 +-132132245132134.1515123765412 + 0 = -132132245132134.1515123765 +-132132245132134.1515123765412 + 0.00 = -132132245132134.1515123765 +-132132245132134.1515123765412 + -0 = -132132245132134.1515123765 +-132132245132134.1515123765412 + -0.00 = -132132245132134.1515123765 +-132132245132134.1515123765412 + 15 = -132132245132119.1515123765 +-132132245132134.1515123765412 + -15 = -132132245132149.1515123765 +-132132245132134.1515123765412 + 1 = -132132245132133.1515123765 +-132132245132134.1515123765412 + -9 = -132132245132143.1515123765 +-132132245132134.1515123765412 + 14.14 = -132132245132120.0115123765 +-132132245132134.1515123765412 + -16.60 = -132132245132150.7515123765 +-132132245132134.1515123765412 + 0.15 = -132132245132134.0015123765 +-132132245132134.1515123765412 + -0.01 = -132132245132134.1615123765 + +Number "141241241241241248267654747412" (scale 10) +141241241241241248267654747412 + 15151324141414.412312232141241 = 141241241241241263418978888826.4123122321 +141241241241241248267654747412 + -132132245132134.1515123765412 = 141241241241241116135409615277.8484876234 +141241241241241248267654747412 + 141241241241241248267654747412 = 282482482482482496535309494824.0000000000 +141241241241241248267654747412 + -149143276547656984948124912 = 141092097964693591282706622500.0000000000 +141241241241241248267654747412 + 0.1322135476547459213732911312 = 141241241241241248267654747412.1322135476 +141241241241241248267654747412 + -0.123912932193769965476541321 = 141241241241241248267654747411.8760870678 +141241241241241248267654747412 + 0 = 141241241241241248267654747412.0000000000 +141241241241241248267654747412 + 0.00 = 141241241241241248267654747412.0000000000 +141241241241241248267654747412 + -0 = 141241241241241248267654747412.0000000000 +141241241241241248267654747412 + -0.00 = 141241241241241248267654747412.0000000000 +141241241241241248267654747412 + 15 = 141241241241241248267654747427.0000000000 +141241241241241248267654747412 + -15 = 141241241241241248267654747397.0000000000 +141241241241241248267654747412 + 1 = 141241241241241248267654747413.0000000000 +141241241241241248267654747412 + -9 = 141241241241241248267654747403.0000000000 +141241241241241248267654747412 + 14.14 = 141241241241241248267654747426.1400000000 +141241241241241248267654747412 + -16.60 = 141241241241241248267654747395.4000000000 +141241241241241248267654747412 + 0.15 = 141241241241241248267654747412.1500000000 +141241241241241248267654747412 + -0.01 = 141241241241241248267654747411.9900000000 + +Number "-149143276547656984948124912" (scale 10) +-149143276547656984948124912 + 15151324141414.412312232141241 = -149143276547641833623983497.5876877678 +-149143276547656984948124912 + -132132245132134.1515123765412 = -149143276547789117193257046.1515123765 +-149143276547656984948124912 + 141241241241241248267654747412 = 141092097964693591282706622500.0000000000 +-149143276547656984948124912 + -149143276547656984948124912 = -298286553095313969896249824.0000000000 +-149143276547656984948124912 + 0.1322135476547459213732911312 = -149143276547656984948124911.8677864523 +-149143276547656984948124912 + -0.123912932193769965476541321 = -149143276547656984948124912.1239129321 +-149143276547656984948124912 + 0 = -149143276547656984948124912.0000000000 +-149143276547656984948124912 + 0.00 = -149143276547656984948124912.0000000000 +-149143276547656984948124912 + -0 = -149143276547656984948124912.0000000000 +-149143276547656984948124912 + -0.00 = -149143276547656984948124912.0000000000 +-149143276547656984948124912 + 15 = -149143276547656984948124897.0000000000 +-149143276547656984948124912 + -15 = -149143276547656984948124927.0000000000 +-149143276547656984948124912 + 1 = -149143276547656984948124911.0000000000 +-149143276547656984948124912 + -9 = -149143276547656984948124921.0000000000 +-149143276547656984948124912 + 14.14 = -149143276547656984948124897.8600000000 +-149143276547656984948124912 + -16.60 = -149143276547656984948124928.6000000000 +-149143276547656984948124912 + 0.15 = -149143276547656984948124911.8500000000 +-149143276547656984948124912 + -0.01 = -149143276547656984948124912.0100000000 + +Number "0.1322135476547459213732911312" (scale 10) +0.1322135476547459213732911312 + 15151324141414.412312232141241 = 15151324141414.5445257797 +0.1322135476547459213732911312 + -132132245132134.1515123765412 = -132132245132134.0192988288 +0.1322135476547459213732911312 + 141241241241241248267654747412 = 141241241241241248267654747412.1322135476 +0.1322135476547459213732911312 + -149143276547656984948124912 = -149143276547656984948124911.8677864523 +0.1322135476547459213732911312 + 0.1322135476547459213732911312 = 0.2644270953 +0.1322135476547459213732911312 + -0.123912932193769965476541321 = 0.0083006154 +0.1322135476547459213732911312 + 0 = 0.1322135476 +0.1322135476547459213732911312 + 0.00 = 0.1322135476 +0.1322135476547459213732911312 + -0 = 0.1322135476 +0.1322135476547459213732911312 + -0.00 = 0.1322135476 +0.1322135476547459213732911312 + 15 = 15.1322135476 +0.1322135476547459213732911312 + -15 = -14.8677864523 +0.1322135476547459213732911312 + 1 = 1.1322135476 +0.1322135476547459213732911312 + -9 = -8.8677864523 +0.1322135476547459213732911312 + 14.14 = 14.2722135476 +0.1322135476547459213732911312 + -16.60 = -16.4677864523 +0.1322135476547459213732911312 + 0.15 = 0.2822135476 +0.1322135476547459213732911312 + -0.01 = 0.1222135476 + +Number "-0.123912932193769965476541321" (scale 10) +-0.123912932193769965476541321 + 15151324141414.412312232141241 = 15151324141414.2883992999 +-0.123912932193769965476541321 + -132132245132134.1515123765412 = -132132245132134.2754253087 +-0.123912932193769965476541321 + 141241241241241248267654747412 = 141241241241241248267654747411.8760870678 +-0.123912932193769965476541321 + -149143276547656984948124912 = -149143276547656984948124912.1239129321 +-0.123912932193769965476541321 + 0.1322135476547459213732911312 = 0.0083006154 +-0.123912932193769965476541321 + -0.123912932193769965476541321 = -0.2478258643 +-0.123912932193769965476541321 + 0 = -0.1239129321 +-0.123912932193769965476541321 + 0.00 = -0.1239129321 +-0.123912932193769965476541321 + -0 = -0.1239129321 +-0.123912932193769965476541321 + -0.00 = -0.1239129321 +-0.123912932193769965476541321 + 15 = 14.8760870678 +-0.123912932193769965476541321 + -15 = -15.1239129321 +-0.123912932193769965476541321 + 1 = 0.8760870678 +-0.123912932193769965476541321 + -9 = -9.1239129321 +-0.123912932193769965476541321 + 14.14 = 14.0160870678 +-0.123912932193769965476541321 + -16.60 = -16.7239129321 +-0.123912932193769965476541321 + 0.15 = 0.0260870678 +-0.123912932193769965476541321 + -0.01 = -0.1339129321 diff --git a/ext/bcmath/tests/bcadd_variation001.phpt b/ext/bcmath/tests/bcadd_variation001.phpt deleted file mode 100644 index d6bd89b52231d..0000000000000 --- a/ext/bcmath/tests/bcadd_variation001.phpt +++ /dev/null @@ -1,22 +0,0 @@ ---TEST-- -bcadd() with non-integers ---EXTENSIONS-- -bcmath ---INI-- -bcmath.scale=5 ---FILE-- - ---EXPECT-- -6.50 -6.50 --5.1 --5.1 -3.03000 --11.57000 diff --git a/ext/bcmath/tests/bcadd_zero.phpt b/ext/bcmath/tests/bcadd_zero.phpt new file mode 100644 index 0000000000000..441782a020db0 --- /dev/null +++ b/ext/bcmath/tests/bcadd_zero.phpt @@ -0,0 +1,184 @@ +--TEST-- +bcadd() function with zero +--EXTENSIONS-- +bcmath +--INI-- +bcmath.scale=0 +--FILE-- + +--EXPECT-- +Number "0" (scale 0) + 0 + 0 = 0 + 0 + 0.00 = 0 + 0 + -0 = 0 + 0 + -0.00 = 0 + 0 + 15 = 15 + 0 + -15 = -15 + 0 + 1 = 1 + 0 + -9 = -9 + 0 + 14.14 = 14 + 0 + -16.60 = -16 + 0 + 0.15 = 0 + 0 + -0.01 = 0 + 0 + 15151324141414.412312232141241 = 15151324141414 + 0 + -132132245132134.1515123765412 = -132132245132134 + 0 + 141241241241241248267654747412 = 141241241241241248267654747412 + 0 + -149143276547656984948124912 = -149143276547656984948124912 + 0 + 0.1322135476547459213732911312 = 0 + 0 + -0.123912932193769965476541321 = 0 + +Number "0.00" (scale 0) + 0.00 + 0 = 0 + 0.00 + 0.00 = 0 + 0.00 + -0 = 0 + 0.00 + -0.00 = 0 + 0.00 + 15 = 15 + 0.00 + -15 = -15 + 0.00 + 1 = 1 + 0.00 + -9 = -9 + 0.00 + 14.14 = 14 + 0.00 + -16.60 = -16 + 0.00 + 0.15 = 0 + 0.00 + -0.01 = 0 + 0.00 + 15151324141414.412312232141241 = 15151324141414 + 0.00 + -132132245132134.1515123765412 = -132132245132134 + 0.00 + 141241241241241248267654747412 = 141241241241241248267654747412 + 0.00 + -149143276547656984948124912 = -149143276547656984948124912 + 0.00 + 0.1322135476547459213732911312 = 0 + 0.00 + -0.123912932193769965476541321 = 0 + +Number "-0" (scale 0) + -0 + 0 = 0 + -0 + 0.00 = 0 + -0 + -0 = 0 + -0 + -0.00 = 0 + -0 + 15 = 15 + -0 + -15 = -15 + -0 + 1 = 1 + -0 + -9 = -9 + -0 + 14.14 = 14 + -0 + -16.60 = -16 + -0 + 0.15 = 0 + -0 + -0.01 = 0 + -0 + 15151324141414.412312232141241 = 15151324141414 + -0 + -132132245132134.1515123765412 = -132132245132134 + -0 + 141241241241241248267654747412 = 141241241241241248267654747412 + -0 + -149143276547656984948124912 = -149143276547656984948124912 + -0 + 0.1322135476547459213732911312 = 0 + -0 + -0.123912932193769965476541321 = 0 + +Number "-0.00" (scale 0) + -0.00 + 0 = 0 + -0.00 + 0.00 = 0 + -0.00 + -0 = 0 + -0.00 + -0.00 = 0 + -0.00 + 15 = 15 + -0.00 + -15 = -15 + -0.00 + 1 = 1 + -0.00 + -9 = -9 + -0.00 + 14.14 = 14 + -0.00 + -16.60 = -16 + -0.00 + 0.15 = 0 + -0.00 + -0.01 = 0 + -0.00 + 15151324141414.412312232141241 = 15151324141414 + -0.00 + -132132245132134.1515123765412 = -132132245132134 + -0.00 + 141241241241241248267654747412 = 141241241241241248267654747412 + -0.00 + -149143276547656984948124912 = -149143276547656984948124912 + -0.00 + 0.1322135476547459213732911312 = 0 + -0.00 + -0.123912932193769965476541321 = 0 + +Number "0" (scale 10) + 0 + 0 = 0.0000000000 + 0 + 0.00 = 0.0000000000 + 0 + -0 = 0.0000000000 + 0 + -0.00 = 0.0000000000 + 0 + 15 = 15.0000000000 + 0 + -15 = -15.0000000000 + 0 + 1 = 1.0000000000 + 0 + -9 = -9.0000000000 + 0 + 14.14 = 14.1400000000 + 0 + -16.60 = -16.6000000000 + 0 + 0.15 = 0.1500000000 + 0 + -0.01 = -0.0100000000 + 0 + 15151324141414.412312232141241 = 15151324141414.4123122321 + 0 + -132132245132134.1515123765412 = -132132245132134.1515123765 + 0 + 141241241241241248267654747412 = 141241241241241248267654747412.0000000000 + 0 + -149143276547656984948124912 = -149143276547656984948124912.0000000000 + 0 + 0.1322135476547459213732911312 = 0.1322135476 + 0 + -0.123912932193769965476541321 = -0.1239129321 + +Number "0.00" (scale 10) + 0.00 + 0 = 0.0000000000 + 0.00 + 0.00 = 0.0000000000 + 0.00 + -0 = 0.0000000000 + 0.00 + -0.00 = 0.0000000000 + 0.00 + 15 = 15.0000000000 + 0.00 + -15 = -15.0000000000 + 0.00 + 1 = 1.0000000000 + 0.00 + -9 = -9.0000000000 + 0.00 + 14.14 = 14.1400000000 + 0.00 + -16.60 = -16.6000000000 + 0.00 + 0.15 = 0.1500000000 + 0.00 + -0.01 = -0.0100000000 + 0.00 + 15151324141414.412312232141241 = 15151324141414.4123122321 + 0.00 + -132132245132134.1515123765412 = -132132245132134.1515123765 + 0.00 + 141241241241241248267654747412 = 141241241241241248267654747412.0000000000 + 0.00 + -149143276547656984948124912 = -149143276547656984948124912.0000000000 + 0.00 + 0.1322135476547459213732911312 = 0.1322135476 + 0.00 + -0.123912932193769965476541321 = -0.1239129321 + +Number "-0" (scale 10) + -0 + 0 = 0.0000000000 + -0 + 0.00 = 0.0000000000 + -0 + -0 = 0.0000000000 + -0 + -0.00 = 0.0000000000 + -0 + 15 = 15.0000000000 + -0 + -15 = -15.0000000000 + -0 + 1 = 1.0000000000 + -0 + -9 = -9.0000000000 + -0 + 14.14 = 14.1400000000 + -0 + -16.60 = -16.6000000000 + -0 + 0.15 = 0.1500000000 + -0 + -0.01 = -0.0100000000 + -0 + 15151324141414.412312232141241 = 15151324141414.4123122321 + -0 + -132132245132134.1515123765412 = -132132245132134.1515123765 + -0 + 141241241241241248267654747412 = 141241241241241248267654747412.0000000000 + -0 + -149143276547656984948124912 = -149143276547656984948124912.0000000000 + -0 + 0.1322135476547459213732911312 = 0.1322135476 + -0 + -0.123912932193769965476541321 = -0.1239129321 + +Number "-0.00" (scale 10) + -0.00 + 0 = 0.0000000000 + -0.00 + 0.00 = 0.0000000000 + -0.00 + -0 = 0.0000000000 + -0.00 + -0.00 = 0.0000000000 + -0.00 + 15 = 15.0000000000 + -0.00 + -15 = -15.0000000000 + -0.00 + 1 = 1.0000000000 + -0.00 + -9 = -9.0000000000 + -0.00 + 14.14 = 14.1400000000 + -0.00 + -16.60 = -16.6000000000 + -0.00 + 0.15 = 0.1500000000 + -0.00 + -0.01 = -0.0100000000 + -0.00 + 15151324141414.412312232141241 = 15151324141414.4123122321 + -0.00 + -132132245132134.1515123765412 = -132132245132134.1515123765 + -0.00 + 141241241241241248267654747412 = 141241241241241248267654747412.0000000000 + -0.00 + -149143276547656984948124912 = -149143276547656984948124912.0000000000 + -0.00 + 0.1322135476547459213732911312 = 0.1322135476 + -0.00 + -0.123912932193769965476541321 = -0.1239129321 From 3170607537f7946e227a6f84f9a7d38b0fae22e1 Mon Sep 17 00:00:00 2001 From: Jorg Adam Sowa Date: Wed, 28 Jun 2023 00:27:23 +0200 Subject: [PATCH 02/15] Extended bcmath tests --- ext/bcmath/tests/bcadd.phpt | 2 +- ext/bcmath/tests/bcadd_basic.phpt | 4 +- ext/bcmath/tests/bcadd_large_numbers.phpt | 4 +- ext/bcmath/tests/bcadd_zero.phpt | 4 +- ext/bcmath/tests/bccomp.phpt | 6 + ext/bcmath/tests/bccomp_variation001.phpt | 4 +- ext/bcmath/tests/bccomp_variation002.phpt | 4 +- ext/bcmath/tests/bcdiv.phpt | 2 +- ext/bcmath/tests/bcdiv_basic.phpt | 279 ++++++++++++++++++ ext/bcmath/tests/bcdiv_error1.phpt | 14 + ext/bcmath/tests/bcdiv_large_numbers.phpt | 215 ++++++++++++++ ext/bcmath/tests/bcdiv_zero.phpt | 151 ++++++++++ ext/bcmath/tests/bcmod_error2.phpt | 12 + ext/bcmath/tests/bcmod_large_numbers.phpt | 216 ++++++++++++++ ext/bcmath/tests/bcmod_zero.phpt | 152 ++++++++++ ext/bcmath/tests/bcmul_basic.phpt | 343 ++++++++++++++++++++++ ext/bcmath/tests/bcmul_large_numbers.phpt | 263 +++++++++++++++++ ext/bcmath/tests/bcmul_zero.phpt | 151 ++++++++++ ext/bcmath/tests/bcpow.phpt | 2 + ext/bcmath/tests/bcpow_error1.phpt | 6 + ext/bcmath/tests/bcpow_error2.phpt | 7 + ext/bcmath/tests/bcpow_variation001.phpt | 12 - 22 files changed, 1831 insertions(+), 22 deletions(-) create mode 100644 ext/bcmath/tests/bcdiv_basic.phpt create mode 100644 ext/bcmath/tests/bcdiv_large_numbers.phpt create mode 100644 ext/bcmath/tests/bcdiv_zero.phpt create mode 100644 ext/bcmath/tests/bcmod_large_numbers.phpt create mode 100644 ext/bcmath/tests/bcmod_zero.phpt create mode 100644 ext/bcmath/tests/bcmul_basic.phpt create mode 100644 ext/bcmath/tests/bcmul_large_numbers.phpt create mode 100644 ext/bcmath/tests/bcmul_zero.phpt delete mode 100644 ext/bcmath/tests/bcpow_variation001.phpt diff --git a/ext/bcmath/tests/bcadd.phpt b/ext/bcmath/tests/bcadd.phpt index fa4be8acbe1ae..b5a77da513a48 100644 --- a/ext/bcmath/tests/bcadd.phpt +++ b/ext/bcmath/tests/bcadd.phpt @@ -1,5 +1,5 @@ --TEST-- -bcadd() function +bcadd() function - basic tests --EXTENSIONS-- bcmath --INI-- diff --git a/ext/bcmath/tests/bcadd_basic.phpt b/ext/bcmath/tests/bcadd_basic.phpt index fd8d0587e7ccf..7f33cc2174030 100644 --- a/ext/bcmath/tests/bcadd_basic.phpt +++ b/ext/bcmath/tests/bcadd_basic.phpt @@ -1,5 +1,5 @@ --TEST-- -bcadd() function basic numbers +bcadd() function - extended basic tests --EXTENSIONS-- bcmath --INI-- @@ -15,7 +15,7 @@ foreach($scales as $scale) { foreach($basicNumbers as $firstNumber) { echo "Number \"$firstNumber\" (scale $scale)\n"; foreach(array_merge($basicNumbers, $allTestNumbers) as $secondNumber) { - echo str_pad($firstNumber,6, ' ', STR_PAD_LEFT), " + ", str_pad($secondNumber,30), ' = ' ,bcadd($firstNumber, $secondNumber, $scale),"\n"; + echo str_pad($firstNumber, 6, ' ', STR_PAD_LEFT), " + ", str_pad($secondNumber, 30), ' = ', bcadd($firstNumber, $secondNumber, $scale),"\n"; } echo "\n"; } diff --git a/ext/bcmath/tests/bcadd_large_numbers.phpt b/ext/bcmath/tests/bcadd_large_numbers.phpt index 3a0022bcd78e2..594a8c0e1b547 100644 --- a/ext/bcmath/tests/bcadd_large_numbers.phpt +++ b/ext/bcmath/tests/bcadd_large_numbers.phpt @@ -1,5 +1,5 @@ --TEST-- -bcadd() function with large numbers +bcadd() function - tests with large numbers --EXTENSIONS-- bcmath --INI-- @@ -15,7 +15,7 @@ foreach($scales as $scale) { foreach($basicNumbers as $firstNumber) { echo "Number \"$firstNumber\" (scale $scale)\n"; foreach(array_merge($basicNumbers, $allTestNumbers) as $secondNumber) { - echo str_pad($firstNumber,6, ' ', STR_PAD_LEFT), " + ", str_pad($secondNumber,30), ' = ' ,bcadd($firstNumber, $secondNumber, $scale),"\n"; + echo $firstNumber, " + ", str_pad($secondNumber,30), ' = ' ,bcadd($firstNumber, $secondNumber, $scale),"\n"; } echo "\n"; } diff --git a/ext/bcmath/tests/bcadd_zero.phpt b/ext/bcmath/tests/bcadd_zero.phpt index 441782a020db0..358eac3c6c66a 100644 --- a/ext/bcmath/tests/bcadd_zero.phpt +++ b/ext/bcmath/tests/bcadd_zero.phpt @@ -1,5 +1,5 @@ --TEST-- -bcadd() function with zero +bcadd() function - tests with number zero --EXTENSIONS-- bcmath --INI-- @@ -15,7 +15,7 @@ foreach($scales as $scale) { foreach($basicNumbers as $firstNumber) { echo "Number \"$firstNumber\" (scale $scale)\n"; foreach(array_merge($basicNumbers, $allTestNumbers) as $secondNumber) { - echo str_pad($firstNumber,6, ' ', STR_PAD_LEFT), " + ", str_pad($secondNumber,30), ' = ' ,bcadd($firstNumber, $secondNumber, $scale),"\n"; + echo str_pad($firstNumber, 6, ' ', STR_PAD_LEFT), " + ", str_pad($secondNumber, 30), ' = ', bcadd($firstNumber, $secondNumber, $scale),"\n"; } echo "\n"; } diff --git a/ext/bcmath/tests/bccomp.phpt b/ext/bcmath/tests/bccomp.phpt index ba2fc79532505..2fffddebe836d 100644 --- a/ext/bcmath/tests/bccomp.phpt +++ b/ext/bcmath/tests/bccomp.phpt @@ -10,9 +10,15 @@ echo bccomp("-1", "5", 4),"\n"; echo bccomp("1928372132132819737213", "8728932001983192837219398127471"),"\n"; echo bccomp("1.00000000000000000001", "1", 2),"\n"; echo bccomp("97321", "2321"),"\n"; +echo bccomp("0", "14"),"\n"; +echo bccomp("1", "0"),"\n"; +echo bccomp("0.000", "0", 3); ?> --EXPECT-- -1 -1 0 1 +-1 +1 +0 \ No newline at end of file diff --git a/ext/bcmath/tests/bccomp_variation001.phpt b/ext/bcmath/tests/bccomp_variation001.phpt index 1aa2387c7f5b3..78256b7f1255b 100644 --- a/ext/bcmath/tests/bccomp_variation001.phpt +++ b/ext/bcmath/tests/bccomp_variation001.phpt @@ -8,9 +8,11 @@ bcmath.scale=0 --EXPECT-- 0 1 -1 +1 \ No newline at end of file diff --git a/ext/bcmath/tests/bccomp_variation002.phpt b/ext/bcmath/tests/bccomp_variation002.phpt index eb9655083ca3f..e6dea64dc24d8 100644 --- a/ext/bcmath/tests/bccomp_variation002.phpt +++ b/ext/bcmath/tests/bccomp_variation002.phpt @@ -11,7 +11,8 @@ echo bccomp("-2", "2", "1")."\n"; echo bccomp("-2.29", "-2.3", "2")."\n"; echo bccomp("-2.29", "2.3", "2")."\n"; echo bccomp("2.29", "-2.3", "2")."\n"; -echo bccomp("-2.29", "-2.3", "1"); +echo bccomp("-2.29", "-2.3", "1")."\n"; +echo bccomp("-2.29", "0", "1"); ?> --EXPECT-- 0 @@ -20,3 +21,4 @@ echo bccomp("-2.29", "-2.3", "1"); -1 1 1 +-1 \ No newline at end of file diff --git a/ext/bcmath/tests/bcdiv.phpt b/ext/bcmath/tests/bcdiv.phpt index 0ae0069ce5f09..042f0cfb127b7 100644 --- a/ext/bcmath/tests/bcdiv.phpt +++ b/ext/bcmath/tests/bcdiv.phpt @@ -1,5 +1,5 @@ --TEST-- -bcdiv() function +bcdiv() function - basic tests --EXTENSIONS-- bcmath --INI-- diff --git a/ext/bcmath/tests/bcdiv_basic.phpt b/ext/bcmath/tests/bcdiv_basic.phpt new file mode 100644 index 0000000000000..62d6acfb8e844 --- /dev/null +++ b/ext/bcmath/tests/bcdiv_basic.phpt @@ -0,0 +1,279 @@ +--TEST-- +bcdiv() function - extended basic tests +--EXTENSIONS-- +bcmath +--INI-- +bcmath.scale=0 +--FILE-- + +--EXPECT-- +Number "15" (scale 0) +15 ÷ 15 = 1 +15 ÷ -15 = -1 +15 ÷ 1 = 15 +15 ÷ -9 = -1 +15 ÷ 14.14 = 1 +15 ÷ -16.60 = 0 +15 ÷ 0.15 = 100 +15 ÷ -0.01 = -1500 +15 ÷ 15151324141414.412312232141241 = 0 +15 ÷ -132132245132134.1515123765412 = 0 +15 ÷ 141241241241241248267654747412 = 0 +15 ÷ -149143276547656984948124912 = 0 +15 ÷ 0.1322135476547459213732911312 = 113 +15 ÷ -0.123912932193769965476541321 = -121 + +Number "-15" (scale 0) +-15 ÷ 15 = -1 +-15 ÷ -15 = 1 +-15 ÷ 1 = -15 +-15 ÷ -9 = 1 +-15 ÷ 14.14 = -1 +-15 ÷ -16.60 = 0 +-15 ÷ 0.15 = -100 +-15 ÷ -0.01 = 1500 +-15 ÷ 15151324141414.412312232141241 = 0 +-15 ÷ -132132245132134.1515123765412 = 0 +-15 ÷ 141241241241241248267654747412 = 0 +-15 ÷ -149143276547656984948124912 = 0 +-15 ÷ 0.1322135476547459213732911312 = -113 +-15 ÷ -0.123912932193769965476541321 = 121 + +Number "1" (scale 0) +1 ÷ 15 = 0 +1 ÷ -15 = 0 +1 ÷ 1 = 1 +1 ÷ -9 = 0 +1 ÷ 14.14 = 0 +1 ÷ -16.60 = 0 +1 ÷ 0.15 = 6 +1 ÷ -0.01 = -100 +1 ÷ 15151324141414.412312232141241 = 0 +1 ÷ -132132245132134.1515123765412 = 0 +1 ÷ 141241241241241248267654747412 = 0 +1 ÷ -149143276547656984948124912 = 0 +1 ÷ 0.1322135476547459213732911312 = 7 +1 ÷ -0.123912932193769965476541321 = -8 + +Number "-9" (scale 0) +-9 ÷ 15 = 0 +-9 ÷ -15 = 0 +-9 ÷ 1 = -9 +-9 ÷ -9 = 1 +-9 ÷ 14.14 = 0 +-9 ÷ -16.60 = 0 +-9 ÷ 0.15 = -60 +-9 ÷ -0.01 = 900 +-9 ÷ 15151324141414.412312232141241 = 0 +-9 ÷ -132132245132134.1515123765412 = 0 +-9 ÷ 141241241241241248267654747412 = 0 +-9 ÷ -149143276547656984948124912 = 0 +-9 ÷ 0.1322135476547459213732911312 = -68 +-9 ÷ -0.123912932193769965476541321 = 72 + +Number "14.14" (scale 0) +14.14 ÷ 15 = 0 +14.14 ÷ -15 = 0 +14.14 ÷ 1 = 14 +14.14 ÷ -9 = -1 +14.14 ÷ 14.14 = 1 +14.14 ÷ -16.60 = 0 +14.14 ÷ 0.15 = 94 +14.14 ÷ -0.01 = -1414 +14.14 ÷ 15151324141414.412312232141241 = 0 +14.14 ÷ -132132245132134.1515123765412 = 0 +14.14 ÷ 141241241241241248267654747412 = 0 +14.14 ÷ -149143276547656984948124912 = 0 +14.14 ÷ 0.1322135476547459213732911312 = 106 +14.14 ÷ -0.123912932193769965476541321 = -114 + +Number "-16.60" (scale 0) +-16.60 ÷ 15 = -1 +-16.60 ÷ -15 = 1 +-16.60 ÷ 1 = -16 +-16.60 ÷ -9 = 1 +-16.60 ÷ 14.14 = -1 +-16.60 ÷ -16.60 = 1 +-16.60 ÷ 0.15 = -110 +-16.60 ÷ -0.01 = 1660 +-16.60 ÷ 15151324141414.412312232141241 = 0 +-16.60 ÷ -132132245132134.1515123765412 = 0 +-16.60 ÷ 141241241241241248267654747412 = 0 +-16.60 ÷ -149143276547656984948124912 = 0 +-16.60 ÷ 0.1322135476547459213732911312 = -125 +-16.60 ÷ -0.123912932193769965476541321 = 133 + +Number "0.15" (scale 0) +0.15 ÷ 15 = 0 +0.15 ÷ -15 = 0 +0.15 ÷ 1 = 0 +0.15 ÷ -9 = 0 +0.15 ÷ 14.14 = 0 +0.15 ÷ -16.60 = 0 +0.15 ÷ 0.15 = 1 +0.15 ÷ -0.01 = -15 +0.15 ÷ 15151324141414.412312232141241 = 0 +0.15 ÷ -132132245132134.1515123765412 = 0 +0.15 ÷ 141241241241241248267654747412 = 0 +0.15 ÷ -149143276547656984948124912 = 0 +0.15 ÷ 0.1322135476547459213732911312 = 1 +0.15 ÷ -0.123912932193769965476541321 = -1 + +Number "-0.01" (scale 0) +-0.01 ÷ 15 = 0 +-0.01 ÷ -15 = 0 +-0.01 ÷ 1 = 0 +-0.01 ÷ -9 = 0 +-0.01 ÷ 14.14 = 0 +-0.01 ÷ -16.60 = 0 +-0.01 ÷ 0.15 = 0 +-0.01 ÷ -0.01 = 1 +-0.01 ÷ 15151324141414.412312232141241 = 0 +-0.01 ÷ -132132245132134.1515123765412 = 0 +-0.01 ÷ 141241241241241248267654747412 = 0 +-0.01 ÷ -149143276547656984948124912 = 0 +-0.01 ÷ 0.1322135476547459213732911312 = 0 +-0.01 ÷ -0.123912932193769965476541321 = 0 + +Number "15" (scale 10) +15 ÷ 15 = 1.0000000000 +15 ÷ -15 = -1.0000000000 +15 ÷ 1 = 15.0000000000 +15 ÷ -9 = -1.6666666666 +15 ÷ 14.14 = 1.0608203677 +15 ÷ -16.60 = -0.9036144578 +15 ÷ 0.15 = 100.0000000000 +15 ÷ -0.01 = -1500.0000000000 +15 ÷ 15151324141414.412312232141241 = 0.0000000000 +15 ÷ -132132245132134.1515123765412 = 0.0000000000 +15 ÷ 141241241241241248267654747412 = 0.0000000000 +15 ÷ -149143276547656984948124912 = 0.0000000000 +15 ÷ 0.1322135476547459213732911312 = 113.4528213339 +15 ÷ -0.123912932193769965476541321 = -121.0527402946 + +Number "-15" (scale 10) +-15 ÷ 15 = -1.0000000000 +-15 ÷ -15 = 1.0000000000 +-15 ÷ 1 = -15.0000000000 +-15 ÷ -9 = 1.6666666666 +-15 ÷ 14.14 = -1.0608203677 +-15 ÷ -16.60 = 0.9036144578 +-15 ÷ 0.15 = -100.0000000000 +-15 ÷ -0.01 = 1500.0000000000 +-15 ÷ 15151324141414.412312232141241 = 0.0000000000 +-15 ÷ -132132245132134.1515123765412 = 0.0000000000 +-15 ÷ 141241241241241248267654747412 = 0.0000000000 +-15 ÷ -149143276547656984948124912 = 0.0000000000 +-15 ÷ 0.1322135476547459213732911312 = -113.4528213339 +-15 ÷ -0.123912932193769965476541321 = 121.0527402946 + +Number "1" (scale 10) +1 ÷ 15 = 0.0666666666 +1 ÷ -15 = -0.0666666666 +1 ÷ 1 = 1.0000000000 +1 ÷ -9 = -0.1111111111 +1 ÷ 14.14 = 0.0707213578 +1 ÷ -16.60 = -0.0602409638 +1 ÷ 0.15 = 6.6666666666 +1 ÷ -0.01 = -100.0000000000 +1 ÷ 15151324141414.412312232141241 = 0.0000000000 +1 ÷ -132132245132134.1515123765412 = 0.0000000000 +1 ÷ 141241241241241248267654747412 = 0.0000000000 +1 ÷ -149143276547656984948124912 = 0.0000000000 +1 ÷ 0.1322135476547459213732911312 = 7.5635214222 +1 ÷ -0.123912932193769965476541321 = -8.0701826863 + +Number "-9" (scale 10) +-9 ÷ 15 = -0.6000000000 +-9 ÷ -15 = 0.6000000000 +-9 ÷ 1 = -9.0000000000 +-9 ÷ -9 = 1.0000000000 +-9 ÷ 14.14 = -0.6364922206 +-9 ÷ -16.60 = 0.5421686746 +-9 ÷ 0.15 = -60.0000000000 +-9 ÷ -0.01 = 900.0000000000 +-9 ÷ 15151324141414.412312232141241 = 0.0000000000 +-9 ÷ -132132245132134.1515123765412 = 0.0000000000 +-9 ÷ 141241241241241248267654747412 = 0.0000000000 +-9 ÷ -149143276547656984948124912 = 0.0000000000 +-9 ÷ 0.1322135476547459213732911312 = -68.0716928003 +-9 ÷ -0.123912932193769965476541321 = 72.6316441767 + +Number "14.14" (scale 10) +14.14 ÷ 15 = 0.9426666666 +14.14 ÷ -15 = -0.9426666666 +14.14 ÷ 1 = 14.1400000000 +14.14 ÷ -9 = -1.5711111111 +14.14 ÷ 14.14 = 1.0000000000 +14.14 ÷ -16.60 = -0.8518072289 +14.14 ÷ 0.15 = 94.2666666666 +14.14 ÷ -0.01 = -1414.0000000000 +14.14 ÷ 15151324141414.412312232141241 = 0.0000000000 +14.14 ÷ -132132245132134.1515123765412 = 0.0000000000 +14.14 ÷ 141241241241241248267654747412 = 0.0000000000 +14.14 ÷ -149143276547656984948124912 = 0.0000000000 +14.14 ÷ 0.1322135476547459213732911312 = 106.9481929107 +14.14 ÷ -0.123912932193769965476541321 = -114.1123831844 + +Number "-16.60" (scale 10) +-16.60 ÷ 15 = -1.1066666666 +-16.60 ÷ -15 = 1.1066666666 +-16.60 ÷ 1 = -16.6000000000 +-16.60 ÷ -9 = 1.8444444444 +-16.60 ÷ 14.14 = -1.1739745403 +-16.60 ÷ -16.60 = 1.0000000000 +-16.60 ÷ 0.15 = -110.6666666666 +-16.60 ÷ -0.01 = 1660.0000000000 +-16.60 ÷ 15151324141414.412312232141241 = 0.0000000000 +-16.60 ÷ -132132245132134.1515123765412 = 0.0000000000 +-16.60 ÷ 141241241241241248267654747412 = 0.0000000000 +-16.60 ÷ -149143276547656984948124912 = 0.0000000000 +-16.60 ÷ 0.1322135476547459213732911312 = -125.5544556095 +-16.60 ÷ -0.123912932193769965476541321 = 133.9650325927 + +Number "0.15" (scale 10) +0.15 ÷ 15 = 0.0100000000 +0.15 ÷ -15 = -0.0100000000 +0.15 ÷ 1 = 0.1500000000 +0.15 ÷ -9 = -0.0166666666 +0.15 ÷ 14.14 = 0.0106082036 +0.15 ÷ -16.60 = -0.0090361445 +0.15 ÷ 0.15 = 1.0000000000 +0.15 ÷ -0.01 = -15.0000000000 +0.15 ÷ 15151324141414.412312232141241 = 0.0000000000 +0.15 ÷ -132132245132134.1515123765412 = 0.0000000000 +0.15 ÷ 141241241241241248267654747412 = 0.0000000000 +0.15 ÷ -149143276547656984948124912 = 0.0000000000 +0.15 ÷ 0.1322135476547459213732911312 = 1.1345282133 +0.15 ÷ -0.123912932193769965476541321 = -1.2105274029 + +Number "-0.01" (scale 10) +-0.01 ÷ 15 = -0.0006666666 +-0.01 ÷ -15 = 0.0006666666 +-0.01 ÷ 1 = -0.0100000000 +-0.01 ÷ -9 = 0.0011111111 +-0.01 ÷ 14.14 = -0.0007072135 +-0.01 ÷ -16.60 = 0.0006024096 +-0.01 ÷ 0.15 = -0.0666666666 +-0.01 ÷ -0.01 = 1.0000000000 +-0.01 ÷ 15151324141414.412312232141241 = 0.0000000000 +-0.01 ÷ -132132245132134.1515123765412 = 0.0000000000 +-0.01 ÷ 141241241241241248267654747412 = 0.0000000000 +-0.01 ÷ -149143276547656984948124912 = 0.0000000000 +-0.01 ÷ 0.1322135476547459213732911312 = -0.0756352142 +-0.01 ÷ -0.123912932193769965476541321 = 0.0807018268 \ No newline at end of file diff --git a/ext/bcmath/tests/bcdiv_error1.phpt b/ext/bcmath/tests/bcdiv_error1.phpt index 7b5908f55561c..b6af64d69af36 100644 --- a/ext/bcmath/tests/bcdiv_error1.phpt +++ b/ext/bcmath/tests/bcdiv_error1.phpt @@ -13,6 +13,20 @@ try { } catch (DivisionByZeroError $ex) { echo $ex->getMessage(), PHP_EOL; } + +try { + bcdiv('10.99', '0.00'); +} catch (DivisionByZeroError $ex) { + echo $ex->getMessage(), PHP_EOL; +} + +try { + bcdiv('10.99', '-0.00'); +} catch (DivisionByZeroError $ex) { + echo $ex->getMessage(), PHP_EOL; +} ?> --EXPECT-- Division by zero +Division by zero +Division by zero diff --git a/ext/bcmath/tests/bcdiv_large_numbers.phpt b/ext/bcmath/tests/bcdiv_large_numbers.phpt new file mode 100644 index 0000000000000..0dae5caf527a1 --- /dev/null +++ b/ext/bcmath/tests/bcdiv_large_numbers.phpt @@ -0,0 +1,215 @@ +--TEST-- +bcdiv() function with large numbers +--EXTENSIONS-- +bcmath +--INI-- +bcmath.scale=0 +--FILE-- + +--EXPECT-- +Number "15151324141414.412312232141241" (scale 0) +15151324141414.412312232141241 ÷ 15151324141414.412312232141241 = 1 +15151324141414.412312232141241 ÷ -132132245132134.1515123765412 = 0 +15151324141414.412312232141241 ÷ 141241241241241248267654747412 = 0 +15151324141414.412312232141241 ÷ -149143276547656984948124912 = 0 +15151324141414.412312232141241 ÷ 0.1322135476547459213732911312 = 114597364719231 +15151324141414.412312232141241 ÷ -0.123912932193769965476541321 = -122273953760705 +15151324141414.412312232141241 ÷ 15 = 1010088276094 +15151324141414.412312232141241 ÷ -15 = -1010088276094 +15151324141414.412312232141241 ÷ 1 = 15151324141414 +15151324141414.412312232141241 ÷ -9 = -1683480460157 +15151324141414.412312232141241 ÷ 14.14 = 1071522216507 +15151324141414.412312232141241 ÷ -16.60 = -912730369964 +15151324141414.412312232141241 ÷ 0.15 = 101008827609429 +15151324141414.412312232141241 ÷ -0.01 = -1515132414141441 + +Number "-132132245132134.1515123765412" (scale 0) +-132132245132134.1515123765412 ÷ 15151324141414.412312232141241 = -8 +-132132245132134.1515123765412 ÷ -132132245132134.1515123765412 = 1 +-132132245132134.1515123765412 ÷ 141241241241241248267654747412 = 0 +-132132245132134.1515123765412 ÷ -149143276547656984948124912 = 0 +-132132245132134.1515123765412 ÷ 0.1322135476547459213732911312 = -999385066628541 +-132132245132134.1515123765412 ÷ -0.123912932193769965476541321 = 1066331356968545 +-132132245132134.1515123765412 ÷ 15 = -8808816342142 +-132132245132134.1515123765412 ÷ -15 = 8808816342142 +-132132245132134.1515123765412 ÷ 1 = -132132245132134 +-132132245132134.1515123765412 ÷ -9 = 14681360570237 +-132132245132134.1515123765412 ÷ 14.14 = -9344571791522 +-132132245132134.1515123765412 ÷ -16.60 = 7959773803140 +-132132245132134.1515123765412 ÷ 0.15 = -880881634214227 +-132132245132134.1515123765412 ÷ -0.01 = 13213224513213415 + +Number "141241241241241248267654747412" (scale 0) +141241241241241248267654747412 ÷ 15151324141414.412312232141241 = 9322039441765651 +141241241241241248267654747412 ÷ -132132245132134.1515123765412 = -1068938479778330 +141241241241241248267654747412 ÷ 141241241241241248267654747412 = 1 +141241241241241248267654747412 ÷ -149143276547656984948124912 = -947 +141241241241241248267654747412 ÷ 0.1322135476547459213732911312 = 1068281153835079546834811315187 +141241241241241248267654747412 ÷ -0.123912932193769965476541321 = -1139842619657922251471288994015 +141241241241241248267654747412 ÷ 15 = 9416082749416083217843649827 +141241241241241248267654747412 ÷ -15 = -9416082749416083217843649827 +141241241241241248267654747412 ÷ 1 = 141241241241241248267654747412 +141241241241241248267654747412 ÷ -9 = -15693471249026805363072749712 +141241241241241248267654747412 ÷ 14.14 = 9988772365009989269282513961 +141241241241241248267654747412 ÷ -16.60 = -8508508508508508931786430566 +141241241241241248267654747412 ÷ 0.15 = 941608274941608321784364982746 +141241241241241248267654747412 ÷ -0.01 = -14124124124124124826765474741200 + +Number "-149143276547656984948124912" (scale 0) +-149143276547656984948124912 ÷ 15151324141414.412312232141241 = -9843580346881 +-149143276547656984948124912 ÷ -132132245132134.1515123765412 = 1128742468566 +-149143276547656984948124912 ÷ 141241241241241248267654747412 = 0 +-149143276547656984948124912 ÷ -149143276547656984948124912 = 1 +-149143276547656984948124912 ÷ 0.1322135476547459213732911312 = -1128048367154629906735882014 +-149143276547656984948124912 ÷ -0.123912932193769965476541321 = 1203613488174364568320268735 +-149143276547656984948124912 ÷ 15 = -9942885103177132329874994 +-149143276547656984948124912 ÷ -15 = 9942885103177132329874994 +-149143276547656984948124912 ÷ 1 = -149143276547656984948124912 +-149143276547656984948124912 ÷ -9 = 16571475171961887216458323 +-149143276547656984948124912 ÷ 14.14 = -10547615031658909826600064 +-149143276547656984948124912 ÷ -16.60 = 8984534731786565358320777 +-149143276547656984948124912 ÷ 0.15 = -994288510317713232987499413 +-149143276547656984948124912 ÷ -0.01 = 14914327654765698494812491200 + +Number "0.1322135476547459213732911312" (scale 0) +0.1322135476547459213732911312 ÷ 15151324141414.412312232141241 = 0 +0.1322135476547459213732911312 ÷ -132132245132134.1515123765412 = 0 +0.1322135476547459213732911312 ÷ 141241241241241248267654747412 = 0 +0.1322135476547459213732911312 ÷ -149143276547656984948124912 = 0 +0.1322135476547459213732911312 ÷ 0.1322135476547459213732911312 = 1 +0.1322135476547459213732911312 ÷ -0.123912932193769965476541321 = -1 +0.1322135476547459213732911312 ÷ 15 = 0 +0.1322135476547459213732911312 ÷ -15 = 0 +0.1322135476547459213732911312 ÷ 1 = 0 +0.1322135476547459213732911312 ÷ -9 = 0 +0.1322135476547459213732911312 ÷ 14.14 = 0 +0.1322135476547459213732911312 ÷ -16.60 = 0 +0.1322135476547459213732911312 ÷ 0.15 = 0 +0.1322135476547459213732911312 ÷ -0.01 = -13 + +Number "-0.123912932193769965476541321" (scale 0) +-0.123912932193769965476541321 ÷ 15151324141414.412312232141241 = 0 +-0.123912932193769965476541321 ÷ -132132245132134.1515123765412 = 0 +-0.123912932193769965476541321 ÷ 141241241241241248267654747412 = 0 +-0.123912932193769965476541321 ÷ -149143276547656984948124912 = 0 +-0.123912932193769965476541321 ÷ 0.1322135476547459213732911312 = 0 +-0.123912932193769965476541321 ÷ -0.123912932193769965476541321 = 1 +-0.123912932193769965476541321 ÷ 15 = 0 +-0.123912932193769965476541321 ÷ -15 = 0 +-0.123912932193769965476541321 ÷ 1 = 0 +-0.123912932193769965476541321 ÷ -9 = 0 +-0.123912932193769965476541321 ÷ 14.14 = 0 +-0.123912932193769965476541321 ÷ -16.60 = 0 +-0.123912932193769965476541321 ÷ 0.15 = 0 +-0.123912932193769965476541321 ÷ -0.01 = 12 + +Number "15151324141414.412312232141241" (scale 10) +15151324141414.412312232141241 ÷ 15151324141414.412312232141241 = 1.0000000000 +15151324141414.412312232141241 ÷ -132132245132134.1515123765412 = -0.1146678778 +15151324141414.412312232141241 ÷ 141241241241241248267654747412 = 0.0000000000 +15151324141414.412312232141241 ÷ -149143276547656984948124912 = 0.0000000000 +15151324141414.412312232141241 ÷ 0.1322135476547459213732911312 = 114597364719231.4957119169 +15151324141414.412312232141241 ÷ -0.123912932193769965476541321 = -122273953760705.0772823300 +15151324141414.412312232141241 ÷ 15 = 1010088276094.2941541488 +15151324141414.412312232141241 ÷ -15 = -1010088276094.2941541488 +15151324141414.412312232141241 ÷ 1 = 15151324141414.4123122321 +15151324141414.412312232141241 ÷ -9 = -1683480460157.1569235813 +15151324141414.412312232141241 ÷ 14.14 = 1071522216507.3841804973 +15151324141414.412312232141241 ÷ -16.60 = -912730369964.7236332669 +15151324141414.412312232141241 ÷ 0.15 = 101008827609429.4154148809 +15151324141414.412312232141241 ÷ -0.01 = -1515132414141441.2312232141 + +Number "-132132245132134.1515123765412" (scale 10) +-132132245132134.1515123765412 ÷ 15151324141414.412312232141241 = -8.7208381194 +-132132245132134.1515123765412 ÷ -132132245132134.1515123765412 = 1.0000000000 +-132132245132134.1515123765412 ÷ 141241241241241248267654747412 = 0.0000000000 +-132132245132134.1515123765412 ÷ -149143276547656984948124912 = 0.0000000000 +-132132245132134.1515123765412 ÷ 0.1322135476547459213732911312 = -999385066628541.8940917146 +-132132245132134.1515123765412 ÷ -0.123912932193769965476541321 = 1066331356968545.9568177107 +-132132245132134.1515123765412 ÷ 15 = -8808816342142.2767674917 +-132132245132134.1515123765412 ÷ -15 = 8808816342142.2767674917 +-132132245132134.1515123765412 ÷ 1 = -132132245132134.1515123765 +-132132245132134.1515123765412 ÷ -9 = 14681360570237.1279458196 +-132132245132134.1515123765412 ÷ 14.14 = -9344571791522.9244351044 +-132132245132134.1515123765412 ÷ -16.60 = 7959773803140.6115368901 +-132132245132134.1515123765412 ÷ 0.15 = -880881634214227.6767491769 +-132132245132134.1515123765412 ÷ -0.01 = 13213224513213415.1512376541 + +Number "141241241241241248267654747412" (scale 10) +141241241241241248267654747412 ÷ 15151324141414.412312232141241 = 9322039441765651.5733487418 +141241241241241248267654747412 ÷ -132132245132134.1515123765412 = -1068938479778330.9382445997 +141241241241241248267654747412 ÷ 141241241241241248267654747412 = 1.0000000000 +141241241241241248267654747412 ÷ -149143276547656984948124912 = -947.0171536435 +141241241241241248267654747412 ÷ 0.1322135476547459213732911312 = 1068281153835079546834811315187.2460414102 +141241241241241248267654747412 ÷ -0.123912932193769965476541321 = -1139842619657922251471288994015.5745430452 +141241241241241248267654747412 ÷ 15 = 9416082749416083217843649827.4666666666 +141241241241241248267654747412 ÷ -15 = -9416082749416083217843649827.4666666666 +141241241241241248267654747412 ÷ 1 = 141241241241241248267654747412.0000000000 +141241241241241248267654747412 ÷ -9 = -15693471249026805363072749712.4444444444 +141241241241241248267654747412 ÷ 14.14 = 9988772365009989269282513961.2446958981 +141241241241241248267654747412 ÷ -16.60 = -8508508508508508931786430566.9879518072 +141241241241241248267654747412 ÷ 0.15 = 941608274941608321784364982746.6666666666 +141241241241241248267654747412 ÷ -0.01 = -14124124124124124826765474741200.0000000000 + +Number "-149143276547656984948124912" (scale 10) +-149143276547656984948124912 ÷ 15151324141414.412312232141241 = -9843580346881.4246956668 +-149143276547656984948124912 ÷ -132132245132134.1515123765412 = 1128742468566.3333472319 +-149143276547656984948124912 ÷ 141241241241241248267654747412 = -0.0010559470 +-149143276547656984948124912 ÷ -149143276547656984948124912 = 1.0000000000 +-149143276547656984948124912 ÷ 0.1322135476547459213732911312 = -1128048367154629906735882014.2432613477 +-149143276547656984948124912 ÷ -0.123912932193769965476541321 = 1203613488174364568320268735.7225301437 +-149143276547656984948124912 ÷ 15 = -9942885103177132329874994.1333333333 +-149143276547656984948124912 ÷ -15 = 9942885103177132329874994.1333333333 +-149143276547656984948124912 ÷ 1 = -149143276547656984948124912.0000000000 +-149143276547656984948124912 ÷ -9 = 16571475171961887216458323.5555555555 +-149143276547656984948124912 ÷ 14.14 = -10547615031658909826600064.4978783592 +-149143276547656984948124912 ÷ -16.60 = 8984534731786565358320777.8313253012 +-149143276547656984948124912 ÷ 0.15 = -994288510317713232987499413.3333333333 +-149143276547656984948124912 ÷ -0.01 = 14914327654765698494812491200.0000000000 + +Number "0.1322135476547459213732911312" (scale 10) +0.1322135476547459213732911312 ÷ 15151324141414.412312232141241 = 0.0000000000 +0.1322135476547459213732911312 ÷ -132132245132134.1515123765412 = 0.0000000000 +0.1322135476547459213732911312 ÷ 141241241241241248267654747412 = 0.0000000000 +0.1322135476547459213732911312 ÷ -149143276547656984948124912 = 0.0000000000 +0.1322135476547459213732911312 ÷ 0.1322135476547459213732911312 = 1.0000000000 +0.1322135476547459213732911312 ÷ -0.123912932193769965476541321 = -1.0669874831 +0.1322135476547459213732911312 ÷ 15 = 0.0088142365 +0.1322135476547459213732911312 ÷ -15 = -0.0088142365 +0.1322135476547459213732911312 ÷ 1 = 0.1322135476 +0.1322135476547459213732911312 ÷ -9 = -0.0146903941 +0.1322135476547459213732911312 ÷ 14.14 = 0.0093503216 +0.1322135476547459213732911312 ÷ -16.60 = -0.0079646715 +0.1322135476547459213732911312 ÷ 0.15 = 0.8814236510 +0.1322135476547459213732911312 ÷ -0.01 = -13.2213547654 + +Number "-0.123912932193769965476541321" (scale 10) +-0.123912932193769965476541321 ÷ 15151324141414.412312232141241 = 0.0000000000 +-0.123912932193769965476541321 ÷ -132132245132134.1515123765412 = 0.0000000000 +-0.123912932193769965476541321 ÷ 141241241241241248267654747412 = 0.0000000000 +-0.123912932193769965476541321 ÷ -149143276547656984948124912 = 0.0000000000 +-0.123912932193769965476541321 ÷ 0.1322135476547459213732911312 = -0.9372181171 +-0.123912932193769965476541321 ÷ -0.123912932193769965476541321 = 1.0000000000 +-0.123912932193769965476541321 ÷ 15 = -0.0082608621 +-0.123912932193769965476541321 ÷ -15 = 0.0082608621 +-0.123912932193769965476541321 ÷ 1 = -0.1239129321 +-0.123912932193769965476541321 ÷ -9 = 0.0137681035 +-0.123912932193769965476541321 ÷ 14.14 = -0.0087632908 +-0.123912932193769965476541321 ÷ -16.60 = 0.0074646344 +-0.123912932193769965476541321 ÷ 0.15 = -0.8260862146 +-0.123912932193769965476541321 ÷ -0.01 = 12.3912932193 diff --git a/ext/bcmath/tests/bcdiv_zero.phpt b/ext/bcmath/tests/bcdiv_zero.phpt new file mode 100644 index 0000000000000..9256529429478 --- /dev/null +++ b/ext/bcmath/tests/bcdiv_zero.phpt @@ -0,0 +1,151 @@ +--TEST-- +bcdiv() function - tests with number zero +--EXTENSIONS-- +bcmath +--INI-- +bcmath.scale=0 +--FILE-- + +--EXPECT-- +Number "0" (scale 0) + 0 ÷ 15 = 0 + 0 ÷ -15 = 0 + 0 ÷ 1 = 0 + 0 ÷ -9 = 0 + 0 ÷ 14.14 = 0 + 0 ÷ -16.60 = 0 + 0 ÷ 0.15 = 0 + 0 ÷ -0.01 = 0 + 0 ÷ 15151324141414.412312232141241 = 0 + 0 ÷ -132132245132134.1515123765412 = 0 + 0 ÷ 141241241241241248267654747412 = 0 + 0 ÷ -149143276547656984948124912 = 0 + 0 ÷ 0.1322135476547459213732911312 = 0 + 0 ÷ -0.123912932193769965476541321 = 0 + +Number "0.00" (scale 0) + 0.00 ÷ 15 = 0 + 0.00 ÷ -15 = 0 + 0.00 ÷ 1 = 0 + 0.00 ÷ -9 = 0 + 0.00 ÷ 14.14 = 0 + 0.00 ÷ -16.60 = 0 + 0.00 ÷ 0.15 = 0 + 0.00 ÷ -0.01 = 0 + 0.00 ÷ 15151324141414.412312232141241 = 0 + 0.00 ÷ -132132245132134.1515123765412 = 0 + 0.00 ÷ 141241241241241248267654747412 = 0 + 0.00 ÷ -149143276547656984948124912 = 0 + 0.00 ÷ 0.1322135476547459213732911312 = 0 + 0.00 ÷ -0.123912932193769965476541321 = 0 + +Number "-0" (scale 0) + -0 ÷ 15 = 0 + -0 ÷ -15 = 0 + -0 ÷ 1 = 0 + -0 ÷ -9 = 0 + -0 ÷ 14.14 = 0 + -0 ÷ -16.60 = 0 + -0 ÷ 0.15 = 0 + -0 ÷ -0.01 = 0 + -0 ÷ 15151324141414.412312232141241 = 0 + -0 ÷ -132132245132134.1515123765412 = 0 + -0 ÷ 141241241241241248267654747412 = 0 + -0 ÷ -149143276547656984948124912 = 0 + -0 ÷ 0.1322135476547459213732911312 = 0 + -0 ÷ -0.123912932193769965476541321 = 0 + +Number "-0.00" (scale 0) + -0.00 ÷ 15 = 0 + -0.00 ÷ -15 = 0 + -0.00 ÷ 1 = 0 + -0.00 ÷ -9 = 0 + -0.00 ÷ 14.14 = 0 + -0.00 ÷ -16.60 = 0 + -0.00 ÷ 0.15 = 0 + -0.00 ÷ -0.01 = 0 + -0.00 ÷ 15151324141414.412312232141241 = 0 + -0.00 ÷ -132132245132134.1515123765412 = 0 + -0.00 ÷ 141241241241241248267654747412 = 0 + -0.00 ÷ -149143276547656984948124912 = 0 + -0.00 ÷ 0.1322135476547459213732911312 = 0 + -0.00 ÷ -0.123912932193769965476541321 = 0 + +Number "0" (scale 10) + 0 ÷ 15 = 0.0000000000 + 0 ÷ -15 = 0.0000000000 + 0 ÷ 1 = 0.0000000000 + 0 ÷ -9 = 0.0000000000 + 0 ÷ 14.14 = 0.0000000000 + 0 ÷ -16.60 = 0.0000000000 + 0 ÷ 0.15 = 0.0000000000 + 0 ÷ -0.01 = 0.0000000000 + 0 ÷ 15151324141414.412312232141241 = 0.0000000000 + 0 ÷ -132132245132134.1515123765412 = 0.0000000000 + 0 ÷ 141241241241241248267654747412 = 0.0000000000 + 0 ÷ -149143276547656984948124912 = 0.0000000000 + 0 ÷ 0.1322135476547459213732911312 = 0.0000000000 + 0 ÷ -0.123912932193769965476541321 = 0.0000000000 + +Number "0.00" (scale 10) + 0.00 ÷ 15 = 0.0000000000 + 0.00 ÷ -15 = 0.0000000000 + 0.00 ÷ 1 = 0.0000000000 + 0.00 ÷ -9 = 0.0000000000 + 0.00 ÷ 14.14 = 0.0000000000 + 0.00 ÷ -16.60 = 0.0000000000 + 0.00 ÷ 0.15 = 0.0000000000 + 0.00 ÷ -0.01 = 0.0000000000 + 0.00 ÷ 15151324141414.412312232141241 = 0.0000000000 + 0.00 ÷ -132132245132134.1515123765412 = 0.0000000000 + 0.00 ÷ 141241241241241248267654747412 = 0.0000000000 + 0.00 ÷ -149143276547656984948124912 = 0.0000000000 + 0.00 ÷ 0.1322135476547459213732911312 = 0.0000000000 + 0.00 ÷ -0.123912932193769965476541321 = 0.0000000000 + +Number "-0" (scale 10) + -0 ÷ 15 = 0.0000000000 + -0 ÷ -15 = 0.0000000000 + -0 ÷ 1 = 0.0000000000 + -0 ÷ -9 = 0.0000000000 + -0 ÷ 14.14 = 0.0000000000 + -0 ÷ -16.60 = 0.0000000000 + -0 ÷ 0.15 = 0.0000000000 + -0 ÷ -0.01 = 0.0000000000 + -0 ÷ 15151324141414.412312232141241 = 0.0000000000 + -0 ÷ -132132245132134.1515123765412 = 0.0000000000 + -0 ÷ 141241241241241248267654747412 = 0.0000000000 + -0 ÷ -149143276547656984948124912 = 0.0000000000 + -0 ÷ 0.1322135476547459213732911312 = 0.0000000000 + -0 ÷ -0.123912932193769965476541321 = 0.0000000000 + +Number "-0.00" (scale 10) + -0.00 ÷ 15 = 0.0000000000 + -0.00 ÷ -15 = 0.0000000000 + -0.00 ÷ 1 = 0.0000000000 + -0.00 ÷ -9 = 0.0000000000 + -0.00 ÷ 14.14 = 0.0000000000 + -0.00 ÷ -16.60 = 0.0000000000 + -0.00 ÷ 0.15 = 0.0000000000 + -0.00 ÷ -0.01 = 0.0000000000 + -0.00 ÷ 15151324141414.412312232141241 = 0.0000000000 + -0.00 ÷ -132132245132134.1515123765412 = 0.0000000000 + -0.00 ÷ 141241241241241248267654747412 = 0.0000000000 + -0.00 ÷ -149143276547656984948124912 = 0.0000000000 + -0.00 ÷ 0.1322135476547459213732911312 = 0.0000000000 + -0.00 ÷ -0.123912932193769965476541321 = 0.0000000000 diff --git a/ext/bcmath/tests/bcmod_error2.phpt b/ext/bcmath/tests/bcmod_error2.phpt index 59939b3f08757..37c433fbb89c4 100644 --- a/ext/bcmath/tests/bcmod_error2.phpt +++ b/ext/bcmath/tests/bcmod_error2.phpt @@ -11,6 +11,18 @@ try { } catch (DivisionByZeroError $ex) { echo $ex->getMessage(), PHP_EOL; } +try { + bcmod("10", "0.000"); +} catch (DivisionByZeroError $ex) { + echo $ex->getMessage(), PHP_EOL; +} +try { + bcmod("10", "-0.0"); +} catch (DivisionByZeroError $ex) { + echo $ex->getMessage(), PHP_EOL; +} ?> --EXPECT-- Modulo by zero +Modulo by zero +Modulo by zero diff --git a/ext/bcmath/tests/bcmod_large_numbers.phpt b/ext/bcmath/tests/bcmod_large_numbers.phpt new file mode 100644 index 0000000000000..8426de1605971 --- /dev/null +++ b/ext/bcmath/tests/bcmod_large_numbers.phpt @@ -0,0 +1,216 @@ +--TEST-- +bcdiv() function - tests with large numbers +--EXTENSIONS-- +bcmath +--INI-- +bcmath.scale=0 +--FILE-- + +--EXPECT-- +Number "15151324141414.412312232141241" (scale 0) +15151324141414.412312232141241 mod 15151324141414.412312232141241 = 0 +15151324141414.412312232141241 mod -132132245132134.1515123765412 = 15151324141414 +15151324141414.412312232141241 mod 141241241241241248267654747412 = 15151324141414 +15151324141414.412312232141241 mod -149143276547656984948124912 = 15151324141414 +15151324141414.412312232141241 mod 0.1322135476547459213732911312 = 0 +15151324141414.412312232141241 mod -0.123912932193769965476541321 = 0 +15151324141414.412312232141241 mod 15 = 4 +15151324141414.412312232141241 mod -15 = 4 +15151324141414.412312232141241 mod 1 = 0 +15151324141414.412312232141241 mod -9 = 1 +15151324141414.412312232141241 mod 14.14 = 5 +15151324141414.412312232141241 mod -16.60 = 12 +15151324141414.412312232141241 mod 0.15 = 0 +15151324141414.412312232141241 mod -0.01 = 0 + +Number "-132132245132134.1515123765412" (scale 0) +-132132245132134.1515123765412 mod 15151324141414.412312232141241 = -10921652000818 +-132132245132134.1515123765412 mod -132132245132134.1515123765412 = 0 +-132132245132134.1515123765412 mod 141241241241241248267654747412 = -132132245132134 +-132132245132134.1515123765412 mod -149143276547656984948124912 = -132132245132134 +-132132245132134.1515123765412 mod 0.1322135476547459213732911312 = 0 +-132132245132134.1515123765412 mod -0.123912932193769965476541321 = 0 +-132132245132134.1515123765412 mod 15 = -4 +-132132245132134.1515123765412 mod -15 = -4 +-132132245132134.1515123765412 mod 1 = 0 +-132132245132134.1515123765412 mod -9 = -1 +-132132245132134.1515123765412 mod 14.14 = -13 +-132132245132134.1515123765412 mod -16.60 = -10 +-132132245132134.1515123765412 mod 0.15 = 0 +-132132245132134.1515123765412 mod -0.01 = 0 + +Number "141241241241241248267654747412" (scale 0) +141241241241241248267654747412 mod 15151324141414.412312232141241 = 8686992633814 +141241241241241248267654747412 mod -132132245132134.1515123765412 = 123972365443639 +141241241241241248267654747412 mod 141241241241241248267654747412 = 0 +141241241241241248267654747412 mod -149143276547656984948124912 = 2558350610083521780455748 +141241241241241248267654747412 mod 0.1322135476547459213732911312 = 0 +141241241241241248267654747412 mod -0.123912932193769965476541321 = 0 +141241241241241248267654747412 mod 15 = 7 +141241241241241248267654747412 mod -15 = 7 +141241241241241248267654747412 mod 1 = 0 +141241241241241248267654747412 mod -9 = 4 +141241241241241248267654747412 mod 14.14 = 3 +141241241241241248267654747412 mod -16.60 = 16 +141241241241241248267654747412 mod 0.15 = 0 +141241241241241248267654747412 mod -0.01 = 0 + +Number "-149143276547656984948124912" (scale 0) +-149143276547656984948124912 mod 15151324141414.412312232141241 = -6434701710093 +-149143276547656984948124912 mod -132132245132134.1515123765412 = -44045918171152 +-149143276547656984948124912 mod 141241241241241248267654747412 = -149143276547656984948124912 +-149143276547656984948124912 mod -149143276547656984948124912 = 0 +-149143276547656984948124912 mod 0.1322135476547459213732911312 = 0 +-149143276547656984948124912 mod -0.123912932193769965476541321 = 0 +-149143276547656984948124912 mod 15 = -2 +-149143276547656984948124912 mod -15 = -2 +-149143276547656984948124912 mod 1 = 0 +-149143276547656984948124912 mod -9 = -5 +-149143276547656984948124912 mod 14.14 = -7 +-149143276547656984948124912 mod -16.60 = -13 +-149143276547656984948124912 mod 0.15 = 0 +-149143276547656984948124912 mod -0.01 = 0 + +Number "0.1322135476547459213732911312" (scale 0) +0.1322135476547459213732911312 mod 15151324141414.412312232141241 = 0 +0.1322135476547459213732911312 mod -132132245132134.1515123765412 = 0 +0.1322135476547459213732911312 mod 141241241241241248267654747412 = 0 +0.1322135476547459213732911312 mod -149143276547656984948124912 = 0 +0.1322135476547459213732911312 mod 0.1322135476547459213732911312 = 0 +0.1322135476547459213732911312 mod -0.123912932193769965476541321 = 0 +0.1322135476547459213732911312 mod 15 = 0 +0.1322135476547459213732911312 mod -15 = 0 +0.1322135476547459213732911312 mod 1 = 0 +0.1322135476547459213732911312 mod -9 = 0 +0.1322135476547459213732911312 mod 14.14 = 0 +0.1322135476547459213732911312 mod -16.60 = 0 +0.1322135476547459213732911312 mod 0.15 = 0 +0.1322135476547459213732911312 mod -0.01 = 0 + +Number "-0.123912932193769965476541321" (scale 0) +-0.123912932193769965476541321 mod 15151324141414.412312232141241 = 0 +-0.123912932193769965476541321 mod -132132245132134.1515123765412 = 0 +-0.123912932193769965476541321 mod 141241241241241248267654747412 = 0 +-0.123912932193769965476541321 mod -149143276547656984948124912 = 0 +-0.123912932193769965476541321 mod 0.1322135476547459213732911312 = 0 +-0.123912932193769965476541321 mod -0.123912932193769965476541321 = 0 +-0.123912932193769965476541321 mod 15 = 0 +-0.123912932193769965476541321 mod -15 = 0 +-0.123912932193769965476541321 mod 1 = 0 +-0.123912932193769965476541321 mod -9 = 0 +-0.123912932193769965476541321 mod 14.14 = 0 +-0.123912932193769965476541321 mod -16.60 = 0 +-0.123912932193769965476541321 mod 0.15 = 0 +-0.123912932193769965476541321 mod -0.01 = 0 + +Number "15151324141414.412312232141241" (scale 10) +15151324141414.412312232141241 mod 15151324141414.412312232141241 = 0.0000000000 +15151324141414.412312232141241 mod -132132245132134.1515123765412 = 15151324141414.4123122321 +15151324141414.412312232141241 mod 141241241241241248267654747412 = 15151324141414.4123122321 +15151324141414.412312232141241 mod -149143276547656984948124912 = 15151324141414.4123122321 +15151324141414.412312232141241 mod 0.1322135476547459213732911312 = 0.0655398311 +15151324141414.412312232141241 mod -0.123912932193769965476541321 = 0.0095762801 +15151324141414.412312232141241 mod 15 = 4.4123122321 +15151324141414.412312232141241 mod -15 = 4.4123122321 +15151324141414.412312232141241 mod 1 = 0.4123122321 +15151324141414.412312232141241 mod -9 = 1.4123122321 +15151324141414.412312232141241 mod 14.14 = 5.4323122321 +15151324141414.412312232141241 mod -16.60 = 12.0123122321 +15151324141414.412312232141241 mod 0.15 = 0.0623122321 +15151324141414.412312232141241 mod -0.01 = 0.0023122321 + +Number "-132132245132134.1515123765412" (scale 10) +-132132245132134.1515123765412 mod 15151324141414.412312232141241 = -10921652000818.8530145194 +-132132245132134.1515123765412 mod -132132245132134.1515123765412 = 0.0000000000 +-132132245132134.1515123765412 mod 141241241241241248267654747412 = -132132245132134.1515123765 +-132132245132134.1515123765412 mod -149143276547656984948124912 = -132132245132134.1515123765 +-132132245132134.1515123765412 mod 0.1322135476547459213732911312 = -0.1182110375 +-132132245132134.1515123765412 mod -0.123912932193769965476541321 = -0.1185620881 +-132132245132134.1515123765412 mod 15 = -4.1515123765 +-132132245132134.1515123765412 mod -15 = -4.1515123765 +-132132245132134.1515123765412 mod 1 = -0.1515123765 +-132132245132134.1515123765412 mod -9 = -1.1515123765 +-132132245132134.1515123765412 mod 14.14 = -13.0715123765 +-132132245132134.1515123765412 mod -16.60 = -10.1515123765 +-132132245132134.1515123765412 mod 0.15 = -0.1015123765 +-132132245132134.1515123765412 mod -0.01 = -0.0015123765 + +Number "141241241241241248267654747412" (scale 10) +141241241241241248267654747412 mod 15151324141414.412312232141241 = 8686992633814.2424625456 +141241241241241248267654747412 mod -132132245132134.1515123765412 = 123972365443639.7631318878 +141241241241241248267654747412 mod 141241241241241248267654747412 = 0.0000000000 +141241241241241248267654747412 mod -149143276547656984948124912 = 2558350610083521780455748.0000000000 +141241241241241248267654747412 mod 0.1322135476547459213732911312 = 0.0325300077 +141241241241241248267654747412 mod -0.123912932193769965476541321 = 0.0711933134 +141241241241241248267654747412 mod 15 = 7.0000000000 +141241241241241248267654747412 mod -15 = 7.0000000000 +141241241241241248267654747412 mod 1 = 0.0000000000 +141241241241241248267654747412 mod -9 = 4.0000000000 +141241241241241248267654747412 mod 14.14 = 3.4600000000 +141241241241241248267654747412 mod -16.60 = 16.4000000000 +141241241241241248267654747412 mod 0.15 = 0.1000000000 +141241241241241248267654747412 mod -0.01 = 0.0000000000 + +Number "-149143276547656984948124912" (scale 10) +-149143276547656984948124912 mod 15151324141414.412312232141241 = -6434701710093.8435198341 +-149143276547656984948124912 mod -132132245132134.1515123765412 = -44045918171152.5846031960 +-149143276547656984948124912 mod 141241241241241248267654747412 = -149143276547656984948124912.0000000000 +-149143276547656984948124912 mod -149143276547656984948124912 = 0.0000000000 +-149143276547656984948124912 mod 0.1322135476547459213732911312 = -0.0321624457 +-149143276547656984948124912 mod -0.123912932193769965476541321 = -0.0895308287 +-149143276547656984948124912 mod 15 = -2.0000000000 +-149143276547656984948124912 mod -15 = -2.0000000000 +-149143276547656984948124912 mod 1 = 0.0000000000 +-149143276547656984948124912 mod -9 = -5.0000000000 +-149143276547656984948124912 mod 14.14 = -7.0400000000 +-149143276547656984948124912 mod -16.60 = -13.8000000000 +-149143276547656984948124912 mod 0.15 = -0.0500000000 +-149143276547656984948124912 mod -0.01 = 0.0000000000 + +Number "0.1322135476547459213732911312" (scale 10) +0.1322135476547459213732911312 mod 15151324141414.412312232141241 = 0.1322135476 +0.1322135476547459213732911312 mod -132132245132134.1515123765412 = 0.1322135476 +0.1322135476547459213732911312 mod 141241241241241248267654747412 = 0.1322135476 +0.1322135476547459213732911312 mod -149143276547656984948124912 = 0.1322135476 +0.1322135476547459213732911312 mod 0.1322135476547459213732911312 = 0.0000000000 +0.1322135476547459213732911312 mod -0.123912932193769965476541321 = 0.0083006154 +0.1322135476547459213732911312 mod 15 = 0.1322135476 +0.1322135476547459213732911312 mod -15 = 0.1322135476 +0.1322135476547459213732911312 mod 1 = 0.1322135476 +0.1322135476547459213732911312 mod -9 = 0.1322135476 +0.1322135476547459213732911312 mod 14.14 = 0.1322135476 +0.1322135476547459213732911312 mod -16.60 = 0.1322135476 +0.1322135476547459213732911312 mod 0.15 = 0.1322135476 +0.1322135476547459213732911312 mod -0.01 = 0.0022135476 + +Number "-0.123912932193769965476541321" (scale 10) +-0.123912932193769965476541321 mod 15151324141414.412312232141241 = -0.1239129321 +-0.123912932193769965476541321 mod -132132245132134.1515123765412 = -0.1239129321 +-0.123912932193769965476541321 mod 141241241241241248267654747412 = -0.1239129321 +-0.123912932193769965476541321 mod -149143276547656984948124912 = -0.1239129321 +-0.123912932193769965476541321 mod 0.1322135476547459213732911312 = -0.1239129321 +-0.123912932193769965476541321 mod -0.123912932193769965476541321 = 0.0000000000 +-0.123912932193769965476541321 mod 15 = -0.1239129321 +-0.123912932193769965476541321 mod -15 = -0.1239129321 +-0.123912932193769965476541321 mod 1 = -0.1239129321 +-0.123912932193769965476541321 mod -9 = -0.1239129321 +-0.123912932193769965476541321 mod 14.14 = -0.1239129321 +-0.123912932193769965476541321 mod -16.60 = -0.1239129321 +-0.123912932193769965476541321 mod 0.15 = -0.1239129321 +-0.123912932193769965476541321 mod -0.01 = -0.0039129321 \ No newline at end of file diff --git a/ext/bcmath/tests/bcmod_zero.phpt b/ext/bcmath/tests/bcmod_zero.phpt new file mode 100644 index 0000000000000..f4618973384f8 --- /dev/null +++ b/ext/bcmath/tests/bcmod_zero.phpt @@ -0,0 +1,152 @@ +--TEST-- +bcdiv() function - tests with number zero +--EXTENSIONS-- +bcmath +--INI-- +bcmath.scale=0 +--FILE-- + +--EXPECT-- +Number "0" (scale 0) + 0 mod 15 = 0 + 0 mod -15 = 0 + 0 mod 1 = 0 + 0 mod -9 = 0 + 0 mod 14.14 = 0 + 0 mod -16.60 = 0 + 0 mod 0.15 = 0 + 0 mod -0.01 = 0 + 0 mod 15151324141414.412312232141241 = 0 + 0 mod -132132245132134.1515123765412 = 0 + 0 mod 141241241241241248267654747412 = 0 + 0 mod -149143276547656984948124912 = 0 + 0 mod 0.1322135476547459213732911312 = 0 + 0 mod -0.123912932193769965476541321 = 0 + +Number "0.00" (scale 0) + 0.00 mod 15 = 0 + 0.00 mod -15 = 0 + 0.00 mod 1 = 0 + 0.00 mod -9 = 0 + 0.00 mod 14.14 = 0 + 0.00 mod -16.60 = 0 + 0.00 mod 0.15 = 0 + 0.00 mod -0.01 = 0 + 0.00 mod 15151324141414.412312232141241 = 0 + 0.00 mod -132132245132134.1515123765412 = 0 + 0.00 mod 141241241241241248267654747412 = 0 + 0.00 mod -149143276547656984948124912 = 0 + 0.00 mod 0.1322135476547459213732911312 = 0 + 0.00 mod -0.123912932193769965476541321 = 0 + +Number "-0" (scale 0) + -0 mod 15 = 0 + -0 mod -15 = 0 + -0 mod 1 = 0 + -0 mod -9 = 0 + -0 mod 14.14 = 0 + -0 mod -16.60 = 0 + -0 mod 0.15 = 0 + -0 mod -0.01 = 0 + -0 mod 15151324141414.412312232141241 = 0 + -0 mod -132132245132134.1515123765412 = 0 + -0 mod 141241241241241248267654747412 = 0 + -0 mod -149143276547656984948124912 = 0 + -0 mod 0.1322135476547459213732911312 = 0 + -0 mod -0.123912932193769965476541321 = 0 + +Number "-0.00" (scale 0) + -0.00 mod 15 = 0 + -0.00 mod -15 = 0 + -0.00 mod 1 = 0 + -0.00 mod -9 = 0 + -0.00 mod 14.14 = 0 + -0.00 mod -16.60 = 0 + -0.00 mod 0.15 = 0 + -0.00 mod -0.01 = 0 + -0.00 mod 15151324141414.412312232141241 = 0 + -0.00 mod -132132245132134.1515123765412 = 0 + -0.00 mod 141241241241241248267654747412 = 0 + -0.00 mod -149143276547656984948124912 = 0 + -0.00 mod 0.1322135476547459213732911312 = 0 + -0.00 mod -0.123912932193769965476541321 = 0 + +Number "0" (scale 10) + 0 mod 15 = 0.0000000000 + 0 mod -15 = 0.0000000000 + 0 mod 1 = 0.0000000000 + 0 mod -9 = 0.0000000000 + 0 mod 14.14 = 0.0000000000 + 0 mod -16.60 = 0.0000000000 + 0 mod 0.15 = 0.0000000000 + 0 mod -0.01 = 0.0000000000 + 0 mod 15151324141414.412312232141241 = 0.0000000000 + 0 mod -132132245132134.1515123765412 = 0.0000000000 + 0 mod 141241241241241248267654747412 = 0.0000000000 + 0 mod -149143276547656984948124912 = 0.0000000000 + 0 mod 0.1322135476547459213732911312 = 0.0000000000 + 0 mod -0.123912932193769965476541321 = 0.0000000000 + +Number "0.00" (scale 10) + 0.00 mod 15 = 0.0000000000 + 0.00 mod -15 = 0.0000000000 + 0.00 mod 1 = 0.0000000000 + 0.00 mod -9 = 0.0000000000 + 0.00 mod 14.14 = 0.0000000000 + 0.00 mod -16.60 = 0.0000000000 + 0.00 mod 0.15 = 0.0000000000 + 0.00 mod -0.01 = 0.0000000000 + 0.00 mod 15151324141414.412312232141241 = 0.0000000000 + 0.00 mod -132132245132134.1515123765412 = 0.0000000000 + 0.00 mod 141241241241241248267654747412 = 0.0000000000 + 0.00 mod -149143276547656984948124912 = 0.0000000000 + 0.00 mod 0.1322135476547459213732911312 = 0.0000000000 + 0.00 mod -0.123912932193769965476541321 = 0.0000000000 + +Number "-0" (scale 10) + -0 mod 15 = 0.0000000000 + -0 mod -15 = 0.0000000000 + -0 mod 1 = 0.0000000000 + -0 mod -9 = 0.0000000000 + -0 mod 14.14 = 0.0000000000 + -0 mod -16.60 = 0.0000000000 + -0 mod 0.15 = 0.0000000000 + -0 mod -0.01 = 0.0000000000 + -0 mod 15151324141414.412312232141241 = 0.0000000000 + -0 mod -132132245132134.1515123765412 = 0.0000000000 + -0 mod 141241241241241248267654747412 = 0.0000000000 + -0 mod -149143276547656984948124912 = 0.0000000000 + -0 mod 0.1322135476547459213732911312 = 0.0000000000 + -0 mod -0.123912932193769965476541321 = 0.0000000000 + +Number "-0.00" (scale 10) + -0.00 mod 15 = 0.0000000000 + -0.00 mod -15 = 0.0000000000 + -0.00 mod 1 = 0.0000000000 + -0.00 mod -9 = 0.0000000000 + -0.00 mod 14.14 = 0.0000000000 + -0.00 mod -16.60 = 0.0000000000 + -0.00 mod 0.15 = 0.0000000000 + -0.00 mod -0.01 = 0.0000000000 + -0.00 mod 15151324141414.412312232141241 = 0.0000000000 + -0.00 mod -132132245132134.1515123765412 = 0.0000000000 + -0.00 mod 141241241241241248267654747412 = 0.0000000000 + -0.00 mod -149143276547656984948124912 = 0.0000000000 + -0.00 mod 0.1322135476547459213732911312 = 0.0000000000 + -0.00 mod -0.123912932193769965476541321 = 0.0000000000 diff --git a/ext/bcmath/tests/bcmul_basic.phpt b/ext/bcmath/tests/bcmul_basic.phpt new file mode 100644 index 0000000000000..b72cb8e5ba0a1 --- /dev/null +++ b/ext/bcmath/tests/bcmul_basic.phpt @@ -0,0 +1,343 @@ +--TEST-- +bcmul() function - extended basic tests +--EXTENSIONS-- +bcmath +--INI-- +bcmath.scale=0 +--FILE-- + +--EXPECT-- +Number "15" (scale 0) + 15 × 15 = 225 + 15 × -15 = -225 + 15 × 1 = 15 + 15 × -9 = -135 + 15 × 14.14 = 212 + 15 × -16.60 = -249 + 15 × 0.15 = 2 + 15 × -0.01 = 0 + 15 × 0 = 0 + 15 × 0.00 = 0 + 15 × -0 = 0 + 15 × -0.00 = 0 + 15 × 15151324141414.412312232141241 = 227269862121216 + 15 × -132132245132134.1515123765412 = -1981983676982012 + 15 × 141241241241241248267654747412 = 2118618618618618724014821211180 + 15 × -149143276547656984948124912 = -2237149148214854774221873680 + 15 × 0.1322135476547459213732911312 = 1 + 15 × -0.123912932193769965476541321 = -1 + +Number "-15" (scale 0) + -15 × 15 = -225 + -15 × -15 = 225 + -15 × 1 = -15 + -15 × -9 = 135 + -15 × 14.14 = -212 + -15 × -16.60 = 249 + -15 × 0.15 = -2 + -15 × -0.01 = 0 + -15 × 0 = 0 + -15 × 0.00 = 0 + -15 × -0 = 0 + -15 × -0.00 = 0 + -15 × 15151324141414.412312232141241 = -227269862121216 + -15 × -132132245132134.1515123765412 = 1981983676982012 + -15 × 141241241241241248267654747412 = -2118618618618618724014821211180 + -15 × -149143276547656984948124912 = 2237149148214854774221873680 + -15 × 0.1322135476547459213732911312 = -1 + -15 × -0.123912932193769965476541321 = 1 + +Number "1" (scale 0) + 1 × 15 = 15 + 1 × -15 = -15 + 1 × 1 = 1 + 1 × -9 = -9 + 1 × 14.14 = 14 + 1 × -16.60 = -16 + 1 × 0.15 = 0 + 1 × -0.01 = 0 + 1 × 0 = 0 + 1 × 0.00 = 0 + 1 × -0 = 0 + 1 × -0.00 = 0 + 1 × 15151324141414.412312232141241 = 15151324141414 + 1 × -132132245132134.1515123765412 = -132132245132134 + 1 × 141241241241241248267654747412 = 141241241241241248267654747412 + 1 × -149143276547656984948124912 = -149143276547656984948124912 + 1 × 0.1322135476547459213732911312 = 0 + 1 × -0.123912932193769965476541321 = 0 + +Number "-9" (scale 0) + -9 × 15 = -135 + -9 × -15 = 135 + -9 × 1 = -9 + -9 × -9 = 81 + -9 × 14.14 = -127 + -9 × -16.60 = 149 + -9 × 0.15 = -1 + -9 × -0.01 = 0 + -9 × 0 = 0 + -9 × 0.00 = 0 + -9 × -0 = 0 + -9 × -0.00 = 0 + -9 × 15151324141414.412312232141241 = -136361917272729 + -9 × -132132245132134.1515123765412 = 1189190206189207 + -9 × 141241241241241248267654747412 = -1271171171171171234408892726708 + -9 × -149143276547656984948124912 = 1342289488928912864533124208 + -9 × 0.1322135476547459213732911312 = -1 + -9 × -0.123912932193769965476541321 = 1 + +Number "14.14" (scale 0) + 14.14 × 15 = 212 + 14.14 × -15 = -212 + 14.14 × 1 = 14 + 14.14 × -9 = -127 + 14.14 × 14.14 = 199 + 14.14 × -16.60 = -234 + 14.14 × 0.15 = 2 + 14.14 × -0.01 = 0 + 14.14 × 0 = 0 + 14.14 × 0.00 = 0 + 14.14 × -0 = 0 + 14.14 × -0.00 = 0 + 14.14 × 15151324141414.412312232141241 = 214239723359599 + 14.14 × -132132245132134.1515123765412 = -1868349946168376 + 14.14 × 141241241241241248267654747412 = 1997151151151151250504638128405 + 14.14 × -149143276547656984948124912 = -2108885930383869767166486255 + 14.14 × 0.1322135476547459213732911312 = 1 + 14.14 × -0.123912932193769965476541321 = -1 + +Number "-16.60" (scale 0) +-16.60 × 15 = -249 +-16.60 × -15 = 249 +-16.60 × 1 = -16 +-16.60 × -9 = 149 +-16.60 × 14.14 = -234 +-16.60 × -16.60 = 275 +-16.60 × 0.15 = -2 +-16.60 × -0.01 = 0 +-16.60 × 0 = 0 +-16.60 × 0.00 = 0 +-16.60 × -0 = 0 +-16.60 × -0.00 = 0 +-16.60 × 15151324141414.412312232141241 = -251511980747479 +-16.60 × -132132245132134.1515123765412 = 2193395269193426 +-16.60 × 141241241241241248267654747412 = -2344604604604604721243068807039 +-16.60 × -149143276547656984948124912 = 2475778390691105950138873539 +-16.60 × 0.1322135476547459213732911312 = -2 +-16.60 × -0.123912932193769965476541321 = 2 + +Number "0.15" (scale 0) + 0.15 × 15 = 2 + 0.15 × -15 = -2 + 0.15 × 1 = 0 + 0.15 × -9 = -1 + 0.15 × 14.14 = 2 + 0.15 × -16.60 = -2 + 0.15 × 0.15 = 0 + 0.15 × -0.01 = 0 + 0.15 × 0 = 0 + 0.15 × 0.00 = 0 + 0.15 × -0 = 0 + 0.15 × -0.00 = 0 + 0.15 × 15151324141414.412312232141241 = 2272698621212 + 0.15 × -132132245132134.1515123765412 = -19819836769820 + 0.15 × 141241241241241248267654747412 = 21186186186186187240148212111 + 0.15 × -149143276547656984948124912 = -22371491482148547742218736 + 0.15 × 0.1322135476547459213732911312 = 0 + 0.15 × -0.123912932193769965476541321 = 0 + +Number "-0.01" (scale 0) + -0.01 × 15 = 0 + -0.01 × -15 = 0 + -0.01 × 1 = 0 + -0.01 × -9 = 0 + -0.01 × 14.14 = 0 + -0.01 × -16.60 = 0 + -0.01 × 0.15 = 0 + -0.01 × -0.01 = 0 + -0.01 × 0 = 0 + -0.01 × 0.00 = 0 + -0.01 × -0 = 0 + -0.01 × -0.00 = 0 + -0.01 × 15151324141414.412312232141241 = -151513241414 + -0.01 × -132132245132134.1515123765412 = 1321322451321 + -0.01 × 141241241241241248267654747412 = -1412412412412412482676547474 + -0.01 × -149143276547656984948124912 = 1491432765476569849481249 + -0.01 × 0.1322135476547459213732911312 = 0 + -0.01 × -0.123912932193769965476541321 = 0 + +Number "15" (scale 10) + 15 × 15 = 225.0000000000 + 15 × -15 = -225.0000000000 + 15 × 1 = 15.0000000000 + 15 × -9 = -135.0000000000 + 15 × 14.14 = 212.1000000000 + 15 × -16.60 = -249.0000000000 + 15 × 0.15 = 2.2500000000 + 15 × -0.01 = -0.1500000000 + 15 × 0 = 0.0000000000 + 15 × 0.00 = 0.0000000000 + 15 × -0 = 0.0000000000 + 15 × -0.00 = 0.0000000000 + 15 × 15151324141414.412312232141241 = 227269862121216.1846834821 + 15 × -132132245132134.1515123765412 = -1981983676982012.2726856481 + 15 × 141241241241241248267654747412 = 2118618618618618724014821211180.0000000000 + 15 × -149143276547656984948124912 = -2237149148214854774221873680.0000000000 + 15 × 0.1322135476547459213732911312 = 1.9832032148 + 15 × -0.123912932193769965476541321 = -1.8586939829 + +Number "-15" (scale 10) + -15 × 15 = -225.0000000000 + -15 × -15 = 225.0000000000 + -15 × 1 = -15.0000000000 + -15 × -9 = 135.0000000000 + -15 × 14.14 = -212.1000000000 + -15 × -16.60 = 249.0000000000 + -15 × 0.15 = -2.2500000000 + -15 × -0.01 = 0.1500000000 + -15 × 0 = 0.0000000000 + -15 × 0.00 = 0.0000000000 + -15 × -0 = 0.0000000000 + -15 × -0.00 = 0.0000000000 + -15 × 15151324141414.412312232141241 = -227269862121216.1846834821 + -15 × -132132245132134.1515123765412 = 1981983676982012.2726856481 + -15 × 141241241241241248267654747412 = -2118618618618618724014821211180.0000000000 + -15 × -149143276547656984948124912 = 2237149148214854774221873680.0000000000 + -15 × 0.1322135476547459213732911312 = -1.9832032148 + -15 × -0.123912932193769965476541321 = 1.8586939829 + +Number "1" (scale 10) + 1 × 15 = 15.0000000000 + 1 × -15 = -15.0000000000 + 1 × 1 = 1.0000000000 + 1 × -9 = -9.0000000000 + 1 × 14.14 = 14.1400000000 + 1 × -16.60 = -16.6000000000 + 1 × 0.15 = 0.1500000000 + 1 × -0.01 = -0.0100000000 + 1 × 0 = 0.0000000000 + 1 × 0.00 = 0.0000000000 + 1 × -0 = 0.0000000000 + 1 × -0.00 = 0.0000000000 + 1 × 15151324141414.412312232141241 = 15151324141414.4123122321 + 1 × -132132245132134.1515123765412 = -132132245132134.1515123765 + 1 × 141241241241241248267654747412 = 141241241241241248267654747412.0000000000 + 1 × -149143276547656984948124912 = -149143276547656984948124912.0000000000 + 1 × 0.1322135476547459213732911312 = 0.1322135476 + 1 × -0.123912932193769965476541321 = -0.1239129321 + +Number "-9" (scale 10) + -9 × 15 = -135.0000000000 + -9 × -15 = 135.0000000000 + -9 × 1 = -9.0000000000 + -9 × -9 = 81.0000000000 + -9 × 14.14 = -127.2600000000 + -9 × -16.60 = 149.4000000000 + -9 × 0.15 = -1.3500000000 + -9 × -0.01 = 0.0900000000 + -9 × 0 = 0.0000000000 + -9 × 0.00 = 0.0000000000 + -9 × -0 = 0.0000000000 + -9 × -0.00 = 0.0000000000 + -9 × 15151324141414.412312232141241 = -136361917272729.7108100892 + -9 × -132132245132134.1515123765412 = 1189190206189207.3636113888 + -9 × 141241241241241248267654747412 = -1271171171171171234408892726708.0000000000 + -9 × -149143276547656984948124912 = 1342289488928912864533124208.0000000000 + -9 × 0.1322135476547459213732911312 = -1.1899219288 + -9 × -0.123912932193769965476541321 = 1.1152163897 + +Number "14.14" (scale 10) + 14.14 × 15 = 212.1000000000 + 14.14 × -15 = -212.1000000000 + 14.14 × 1 = 14.1400000000 + 14.14 × -9 = -127.2600000000 + 14.14 × 14.14 = 199.9396000000 + 14.14 × -16.60 = -234.7240000000 + 14.14 × 0.15 = 2.1210000000 + 14.14 × -0.01 = -0.1414000000 + 14.14 × 0 = 0.0000000000 + 14.14 × 0.00 = 0.0000000000 + 14.14 × -0 = 0.0000000000 + 14.14 × -0.00 = 0.0000000000 + 14.14 × 15151324141414.412312232141241 = 214239723359599.7900949624 + 14.14 × -132132245132134.1515123765412 = -1868349946168376.9023850042 + 14.14 × 141241241241241248267654747412 = 1997151151151151250504638128405.6800000000 + 14.14 × -149143276547656984948124912 = -2108885930383869767166486255.6800000000 + 14.14 × 0.1322135476547459213732911312 = 1.8694995638 + 14.14 × -0.123912932193769965476541321 = -1.7521288612 + +Number "-16.60" (scale 10) +-16.60 × 15 = -249.0000000000 +-16.60 × -15 = 249.0000000000 +-16.60 × 1 = -16.6000000000 +-16.60 × -9 = 149.4000000000 +-16.60 × 14.14 = -234.7240000000 +-16.60 × -16.60 = 275.5600000000 +-16.60 × 0.15 = -2.4900000000 +-16.60 × -0.01 = 0.1660000000 +-16.60 × 0 = 0.0000000000 +-16.60 × 0.00 = 0.0000000000 +-16.60 × -0 = 0.0000000000 +-16.60 × -0.00 = 0.0000000000 +-16.60 × 15151324141414.412312232141241 = -251511980747479.2443830535 +-16.60 × -132132245132134.1515123765412 = 2193395269193426.9151054505 +-16.60 × 141241241241241248267654747412 = -2344604604604604721243068807039.2000000000 +-16.60 × -149143276547656984948124912 = 2475778390691105950138873539.2000000000 +-16.60 × 0.1322135476547459213732911312 = -2.1947448910 +-16.60 × -0.123912932193769965476541321 = 2.0569546744 + +Number "0.15" (scale 10) + 0.15 × 15 = 2.2500000000 + 0.15 × -15 = -2.2500000000 + 0.15 × 1 = 0.1500000000 + 0.15 × -9 = -1.3500000000 + 0.15 × 14.14 = 2.1210000000 + 0.15 × -16.60 = -2.4900000000 + 0.15 × 0.15 = 0.0225000000 + 0.15 × -0.01 = -0.0015000000 + 0.15 × 0 = 0.0000000000 + 0.15 × 0.00 = 0.0000000000 + 0.15 × -0 = 0.0000000000 + 0.15 × -0.00 = 0.0000000000 + 0.15 × 15151324141414.412312232141241 = 2272698621212.1618468348 + 0.15 × -132132245132134.1515123765412 = -19819836769820.1227268564 + 0.15 × 141241241241241248267654747412 = 21186186186186187240148212111.8000000000 + 0.15 × -149143276547656984948124912 = -22371491482148547742218736.8000000000 + 0.15 × 0.1322135476547459213732911312 = 0.0198320321 + 0.15 × -0.123912932193769965476541321 = -0.0185869398 + +Number "-0.01" (scale 10) + -0.01 × 15 = -0.1500000000 + -0.01 × -15 = 0.1500000000 + -0.01 × 1 = -0.0100000000 + -0.01 × -9 = 0.0900000000 + -0.01 × 14.14 = -0.1414000000 + -0.01 × -16.60 = 0.1660000000 + -0.01 × 0.15 = -0.0015000000 + -0.01 × -0.01 = 0.0001000000 + -0.01 × 0 = 0.0000000000 + -0.01 × 0.00 = 0.0000000000 + -0.01 × -0 = 0.0000000000 + -0.01 × -0.00 = 0.0000000000 + -0.01 × 15151324141414.412312232141241 = -151513241414.1441231223 + -0.01 × -132132245132134.1515123765412 = 1321322451321.3415151237 + -0.01 × 141241241241241248267654747412 = -1412412412412412482676547474.1200000000 + -0.01 × -149143276547656984948124912 = 1491432765476569849481249.1200000000 + -0.01 × 0.1322135476547459213732911312 = -0.0013221354 + -0.01 × -0.123912932193769965476541321 = 0.0012391293 \ No newline at end of file diff --git a/ext/bcmath/tests/bcmul_large_numbers.phpt b/ext/bcmath/tests/bcmul_large_numbers.phpt new file mode 100644 index 0000000000000..53179f47cae00 --- /dev/null +++ b/ext/bcmath/tests/bcmul_large_numbers.phpt @@ -0,0 +1,263 @@ +--TEST-- +bcmul() function - tests with number zero +--EXTENSIONS-- +bcmath +--INI-- +bcmath.scale=0 +--FILE-- + +--EXPECT-- +Number "15151324141414.412312232141241" (scale 0) +15151324141414.412312232141241 × 15151324141414.412312232141241 = 229562623238207178422472679 +15151324141414.412312232141241 × -132132245132134.1515123765412 = -2001978475529791133885654151 +15151324141414.412312232141241 × 141241241241241248267654747412 = 2139991828181755439048012256383179795538025 +15151324141414.412312232141241 × -149143276547656984948124912 = -2259718126486161223119790826488981524974 +15151324141414.412312232141241 × 0.1322135476547459213732911312 = 2003210316403 +15151324141414.412312232141241 × -0.123912932193769965476541321 = -1877445000980 +15151324141414.412312232141241 × 0 = 0 +15151324141414.412312232141241 × 0.00 = 0 +15151324141414.412312232141241 × -0 = 0 +15151324141414.412312232141241 × -0.00 = 0 +15151324141414.412312232141241 × 15 = 227269862121216 +15151324141414.412312232141241 × -15 = -227269862121216 +15151324141414.412312232141241 × 1 = 15151324141414 +15151324141414.412312232141241 × -9 = -136361917272729 +15151324141414.412312232141241 × 14.14 = 214239723359599 +15151324141414.412312232141241 × -16.60 = -251511980747479 +15151324141414.412312232141241 × 0.15 = 2272698621212 +15151324141414.412312232141241 × -0.01 = -151513241414 + +Number "-132132245132134.1515123765412" (scale 0) +-132132245132134.1515123765412 × 15151324141414.412312232141241 = -2001978475529791133885654151 +-132132245132134.1515123765412 × -132132245132134.1515123765412 = 17458930203658389178460349344 +-132132245132134.1515123765412 × 141241241241241248267654747412 = -18662522310454584290173879848464266332555498 +-132132245132134.1515123765412 × -149143276547656984948124912 = 19706635976604687211527336089051267200810 +-132132245132134.1515123765412 × 0.1322135476547459213732911312 = -17469672888505 +-132132245132134.1515123765412 × -0.123912932193769965476541321 = 16372893931668 +-132132245132134.1515123765412 × 0 = 0 +-132132245132134.1515123765412 × 0.00 = 0 +-132132245132134.1515123765412 × -0 = 0 +-132132245132134.1515123765412 × -0.00 = 0 +-132132245132134.1515123765412 × 15 = -1981983676982012 +-132132245132134.1515123765412 × -15 = 1981983676982012 +-132132245132134.1515123765412 × 1 = -132132245132134 +-132132245132134.1515123765412 × -9 = 1189190206189207 +-132132245132134.1515123765412 × 14.14 = -1868349946168376 +-132132245132134.1515123765412 × -16.60 = 2193395269193426 +-132132245132134.1515123765412 × 0.15 = -19819836769820 +-132132245132134.1515123765412 × -0.01 = 1321322451321 + +Number "141241241241241248267654747412" (scale 0) +141241241241241248267654747412 × 15151324141414.412312232141241 = 2139991828181755439048012256383179795538025 +141241241241241248267654747412 × -132132245132134.1515123765412 = -18662522310454584290173879848464266332555498 +141241241241241248267654747412 × 141241241241241248267654747412 = 19949088227366507629622653233761071253230364164181520697744 +141241241241241248267654747412 × -149143276547656984948124912 = -21065181502376778401476291731259854717478035244384727744 +141241241241241248267654747412 × 0.1322135476547459213732911312 = 18674005579664314748578026521 +141241241241241248267654747412 × -0.123912932193769965476541321 = -17501616348889832831364181429 +141241241241241248267654747412 × 0 = 0 +141241241241241248267654747412 × 0.00 = 0 +141241241241241248267654747412 × -0 = 0 +141241241241241248267654747412 × -0.00 = 0 +141241241241241248267654747412 × 15 = 2118618618618618724014821211180 +141241241241241248267654747412 × -15 = -2118618618618618724014821211180 +141241241241241248267654747412 × 1 = 141241241241241248267654747412 +141241241241241248267654747412 × -9 = -1271171171171171234408892726708 +141241241241241248267654747412 × 14.14 = 1997151151151151250504638128405 +141241241241241248267654747412 × -16.60 = -2344604604604604721243068807039 +141241241241241248267654747412 × 0.15 = 21186186186186187240148212111 +141241241241241248267654747412 × -0.01 = -1412412412412412482676547474 + +Number "-149143276547656984948124912" (scale 0) +-149143276547656984948124912 × 15151324141414.412312232141241 = -2259718126486161223119790826488981524974 +-149143276547656984948124912 × -132132245132134.1515123765412 = 19706635976604687211527336089051267200810 +-149143276547656984948124912 × 141241241241241248267654747412 = -21065181502376778401476291731259854717478035244384727744 +-149143276547656984948124912 × -149143276547656984948124912 = 22243716939370890018820252028254140421311664755007744 +-149143276547656984948124912 × 0.1322135476547459213732911312 = -19718761701218596539144441 +-149143276547656984948124912 × -0.123912932193769965476541321 = 18480780714006502282899774 +-149143276547656984948124912 × 0 = 0 +-149143276547656984948124912 × 0.00 = 0 +-149143276547656984948124912 × -0 = 0 +-149143276547656984948124912 × -0.00 = 0 +-149143276547656984948124912 × 15 = -2237149148214854774221873680 +-149143276547656984948124912 × -15 = 2237149148214854774221873680 +-149143276547656984948124912 × 1 = -149143276547656984948124912 +-149143276547656984948124912 × -9 = 1342289488928912864533124208 +-149143276547656984948124912 × 14.14 = -2108885930383869767166486255 +-149143276547656984948124912 × -16.60 = 2475778390691105950138873539 +-149143276547656984948124912 × 0.15 = -22371491482148547742218736 +-149143276547656984948124912 × -0.01 = 1491432765476569849481249 + +Number "0.1322135476547459213732911312" (scale 0) +0.1322135476547459213732911312 × 15151324141414.412312232141241 = 2003210316403 +0.1322135476547459213732911312 × -132132245132134.1515123765412 = -17469672888505 +0.1322135476547459213732911312 × 141241241241241248267654747412 = 18674005579664314748578026521 +0.1322135476547459213732911312 × -149143276547656984948124912 = -19718761701218596539144441 +0.1322135476547459213732911312 × 0.1322135476547459213732911312 = 0 +0.1322135476547459213732911312 × -0.123912932193769965476541321 = 0 +0.1322135476547459213732911312 × 0 = 0 +0.1322135476547459213732911312 × 0.00 = 0 +0.1322135476547459213732911312 × -0 = 0 +0.1322135476547459213732911312 × -0.00 = 0 +0.1322135476547459213732911312 × 15 = 1 +0.1322135476547459213732911312 × -15 = -1 +0.1322135476547459213732911312 × 1 = 0 +0.1322135476547459213732911312 × -9 = -1 +0.1322135476547459213732911312 × 14.14 = 1 +0.1322135476547459213732911312 × -16.60 = -2 +0.1322135476547459213732911312 × 0.15 = 0 +0.1322135476547459213732911312 × -0.01 = 0 + +Number "-0.123912932193769965476541321" (scale 0) +-0.123912932193769965476541321 × 15151324141414.412312232141241 = -1877445000980 +-0.123912932193769965476541321 × -132132245132134.1515123765412 = 16372893931668 +-0.123912932193769965476541321 × 141241241241241248267654747412 = -17501616348889832831364181429 +-0.123912932193769965476541321 × -149143276547656984948124912 = 18480780714006502282899774 +-0.123912932193769965476541321 × 0.1322135476547459213732911312 = 0 +-0.123912932193769965476541321 × -0.123912932193769965476541321 = 0 +-0.123912932193769965476541321 × 0 = 0 +-0.123912932193769965476541321 × 0.00 = 0 +-0.123912932193769965476541321 × -0 = 0 +-0.123912932193769965476541321 × -0.00 = 0 +-0.123912932193769965476541321 × 15 = -1 +-0.123912932193769965476541321 × -15 = 1 +-0.123912932193769965476541321 × 1 = 0 +-0.123912932193769965476541321 × -9 = 1 +-0.123912932193769965476541321 × 14.14 = -1 +-0.123912932193769965476541321 × -16.60 = 2 +-0.123912932193769965476541321 × 0.15 = 0 +-0.123912932193769965476541321 × -0.01 = 0 + +Number "15151324141414.412312232141241" (scale 10) +15151324141414.412312232141241 × 15151324141414.412312232141241 = 229562623238207178422472679.9262995876 +15151324141414.412312232141241 × -132132245132134.1515123765412 = -2001978475529791133885654151.5491331991 +15151324141414.412312232141241 × 141241241241241248267654747412 = 2139991828181755439048012256383179795538025.4097677632 +15151324141414.412312232141241 × -149143276547656984948124912 = -2259718126486161223119790826488981524974.8925816946 +15151324141414.412312232141241 × 0.1322135476547459213732911312 = 2003210316403.3967337164 +15151324141414.412312232141241 × -0.123912932193769965476541321 = -1877445000980.9140124713 +15151324141414.412312232141241 × 0 = 0.0000000000 +15151324141414.412312232141241 × 0.00 = 0.0000000000 +15151324141414.412312232141241 × -0 = 0.0000000000 +15151324141414.412312232141241 × -0.00 = 0.0000000000 +15151324141414.412312232141241 × 15 = 227269862121216.1846834821 +15151324141414.412312232141241 × -15 = -227269862121216.1846834821 +15151324141414.412312232141241 × 1 = 15151324141414.4123122321 +15151324141414.412312232141241 × -9 = -136361917272729.7108100892 +15151324141414.412312232141241 × 14.14 = 214239723359599.7900949624 +15151324141414.412312232141241 × -16.60 = -251511980747479.2443830535 +15151324141414.412312232141241 × 0.15 = 2272698621212.1618468348 +15151324141414.412312232141241 × -0.01 = -151513241414.1441231223 + +Number "-132132245132134.1515123765412" (scale 10) +-132132245132134.1515123765412 × 15151324141414.412312232141241 = -2001978475529791133885654151.5491331991 +-132132245132134.1515123765412 × -132132245132134.1515123765412 = 17458930203658389178460349344.0776677900 +-132132245132134.1515123765412 × 141241241241241248267654747412 = -18662522310454584290173879848464266332555498.5267202113 +-132132245132134.1515123765412 × -149143276547656984948124912 = 19706635976604687211527336089051267200810.4158361143 +-132132245132134.1515123765412 × 0.1322135476547459213732911312 = -17469672888505.9884334474 +-132132245132134.1515123765412 × -0.123912932193769965476541321 = 16372893931668.7307088223 +-132132245132134.1515123765412 × 0 = 0.0000000000 +-132132245132134.1515123765412 × 0.00 = 0.0000000000 +-132132245132134.1515123765412 × -0 = 0.0000000000 +-132132245132134.1515123765412 × -0.00 = 0.0000000000 +-132132245132134.1515123765412 × 15 = -1981983676982012.2726856481 +-132132245132134.1515123765412 × -15 = 1981983676982012.2726856481 +-132132245132134.1515123765412 × 1 = -132132245132134.1515123765 +-132132245132134.1515123765412 × -9 = 1189190206189207.3636113888 +-132132245132134.1515123765412 × 14.14 = -1868349946168376.9023850042 +-132132245132134.1515123765412 × -16.60 = 2193395269193426.9151054505 +-132132245132134.1515123765412 × 0.15 = -19819836769820.1227268564 +-132132245132134.1515123765412 × -0.01 = 1321322451321.3415151237 + +Number "141241241241241248267654747412" (scale 10) +141241241241241248267654747412 × 15151324141414.412312232141241 = 2139991828181755439048012256383179795538025.4097677632 +141241241241241248267654747412 × -132132245132134.1515123765412 = -18662522310454584290173879848464266332555498.5267202113 +141241241241241248267654747412 × 141241241241241248267654747412 = 19949088227366507629622653233761071253230364164181520697744.0000000000 +141241241241241248267654747412 × -149143276547656984948124912 = -21065181502376778401476291731259854717478035244384727744.0000000000 +141241241241241248267654747412 × 0.1322135476547459213732911312 = 18674005579664314748578026521.9598901262 +141241241241241248267654747412 × -0.123912932193769965476541321 = -17501616348889832831364181429.7008871512 +141241241241241248267654747412 × 0 = 0.0000000000 +141241241241241248267654747412 × 0.00 = 0.0000000000 +141241241241241248267654747412 × -0 = 0.0000000000 +141241241241241248267654747412 × -0.00 = 0.0000000000 +141241241241241248267654747412 × 15 = 2118618618618618724014821211180.0000000000 +141241241241241248267654747412 × -15 = -2118618618618618724014821211180.0000000000 +141241241241241248267654747412 × 1 = 141241241241241248267654747412.0000000000 +141241241241241248267654747412 × -9 = -1271171171171171234408892726708.0000000000 +141241241241241248267654747412 × 14.14 = 1997151151151151250504638128405.6800000000 +141241241241241248267654747412 × -16.60 = -2344604604604604721243068807039.2000000000 +141241241241241248267654747412 × 0.15 = 21186186186186187240148212111.8000000000 +141241241241241248267654747412 × -0.01 = -1412412412412412482676547474.1200000000 + +Number "-149143276547656984948124912" (scale 10) +-149143276547656984948124912 × 15151324141414.412312232141241 = -2259718126486161223119790826488981524974.8925816946 +-149143276547656984948124912 × -132132245132134.1515123765412 = 19706635976604687211527336089051267200810.4158361143 +-149143276547656984948124912 × 141241241241241248267654747412 = -21065181502376778401476291731259854717478035244384727744.0000000000 +-149143276547656984948124912 × -149143276547656984948124912 = 22243716939370890018820252028254140421311664755007744.0000000000 +-149143276547656984948124912 × 0.1322135476547459213732911312 = -19718761701218596539144441.0298753533 +-149143276547656984948124912 × -0.123912932193769965476541321 = 18480780714006502282899774.5778544540 +-149143276547656984948124912 × 0 = 0.0000000000 +-149143276547656984948124912 × 0.00 = 0.0000000000 +-149143276547656984948124912 × -0 = 0.0000000000 +-149143276547656984948124912 × -0.00 = 0.0000000000 +-149143276547656984948124912 × 15 = -2237149148214854774221873680.0000000000 +-149143276547656984948124912 × -15 = 2237149148214854774221873680.0000000000 +-149143276547656984948124912 × 1 = -149143276547656984948124912.0000000000 +-149143276547656984948124912 × -9 = 1342289488928912864533124208.0000000000 +-149143276547656984948124912 × 14.14 = -2108885930383869767166486255.6800000000 +-149143276547656984948124912 × -16.60 = 2475778390691105950138873539.2000000000 +-149143276547656984948124912 × 0.15 = -22371491482148547742218736.8000000000 +-149143276547656984948124912 × -0.01 = 1491432765476569849481249.1200000000 + +Number "0.1322135476547459213732911312" (scale 10) +0.1322135476547459213732911312 × 15151324141414.412312232141241 = 2003210316403.3967337164 +0.1322135476547459213732911312 × -132132245132134.1515123765412 = -17469672888505.9884334474 +0.1322135476547459213732911312 × 141241241241241248267654747412 = 18674005579664314748578026521.9598901262 +0.1322135476547459213732911312 × -149143276547656984948124912 = -19718761701218596539144441.0298753533 +0.1322135476547459213732911312 × 0.1322135476547459213732911312 = 0.0174804221 +0.1322135476547459213732911312 × -0.123912932193769965476541321 = -0.0163829683 +0.1322135476547459213732911312 × 0 = 0.0000000000 +0.1322135476547459213732911312 × 0.00 = 0.0000000000 +0.1322135476547459213732911312 × -0 = 0.0000000000 +0.1322135476547459213732911312 × -0.00 = 0.0000000000 +0.1322135476547459213732911312 × 15 = 1.9832032148 +0.1322135476547459213732911312 × -15 = -1.9832032148 +0.1322135476547459213732911312 × 1 = 0.1322135476 +0.1322135476547459213732911312 × -9 = -1.1899219288 +0.1322135476547459213732911312 × 14.14 = 1.8694995638 +0.1322135476547459213732911312 × -16.60 = -2.1947448910 +0.1322135476547459213732911312 × 0.15 = 0.0198320321 +0.1322135476547459213732911312 × -0.01 = -0.0013221354 + +Number "-0.123912932193769965476541321" (scale 10) +-0.123912932193769965476541321 × 15151324141414.412312232141241 = -1877445000980.9140124713 +-0.123912932193769965476541321 × -132132245132134.1515123765412 = 16372893931668.7307088223 +-0.123912932193769965476541321 × 141241241241241248267654747412 = -17501616348889832831364181429.7008871512 +-0.123912932193769965476541321 × -149143276547656984948124912 = 18480780714006502282899774.5778544540 +-0.123912932193769965476541321 × 0.1322135476547459213732911312 = -0.0163829683 +-0.123912932193769965476541321 × -0.123912932193769965476541321 = 0.0153544147 +-0.123912932193769965476541321 × 0 = 0.0000000000 +-0.123912932193769965476541321 × 0.00 = 0.0000000000 +-0.123912932193769965476541321 × -0 = 0.0000000000 +-0.123912932193769965476541321 × -0.00 = 0.0000000000 +-0.123912932193769965476541321 × 15 = -1.8586939829 +-0.123912932193769965476541321 × -15 = 1.8586939829 +-0.123912932193769965476541321 × 1 = -0.1239129321 +-0.123912932193769965476541321 × -9 = 1.1152163897 +-0.123912932193769965476541321 × 14.14 = -1.7521288612 +-0.123912932193769965476541321 × -16.60 = 2.0569546744 +-0.123912932193769965476541321 × 0.15 = -0.0185869398 +-0.123912932193769965476541321 × -0.01 = 0.0012391293 \ No newline at end of file diff --git a/ext/bcmath/tests/bcmul_zero.phpt b/ext/bcmath/tests/bcmul_zero.phpt new file mode 100644 index 0000000000000..2a80b006ae6cb --- /dev/null +++ b/ext/bcmath/tests/bcmul_zero.phpt @@ -0,0 +1,151 @@ +--TEST-- +bcmul() function with zero +--EXTENSIONS-- +bcmath +--INI-- +bcmath.scale=0 +--FILE-- + +--EXPECT-- +Number "0" (scale 0) + 0 × 15 = 0 + 0 × -15 = 0 + 0 × 1 = 0 + 0 × -9 = 0 + 0 × 14.14 = 0 + 0 × -16.60 = 0 + 0 × 0.15 = 0 + 0 × -0.01 = 0 + 0 × 15151324141414.412312232141241 = 0 + 0 × -132132245132134.1515123765412 = 0 + 0 × 141241241241241248267654747412 = 0 + 0 × -149143276547656984948124912 = 0 + 0 × 0.1322135476547459213732911312 = 0 + 0 × -0.123912932193769965476541321 = 0 + +Number "0.00" (scale 0) + 0.00 × 15 = 0 + 0.00 × -15 = 0 + 0.00 × 1 = 0 + 0.00 × -9 = 0 + 0.00 × 14.14 = 0 + 0.00 × -16.60 = 0 + 0.00 × 0.15 = 0 + 0.00 × -0.01 = 0 + 0.00 × 15151324141414.412312232141241 = 0 + 0.00 × -132132245132134.1515123765412 = 0 + 0.00 × 141241241241241248267654747412 = 0 + 0.00 × -149143276547656984948124912 = 0 + 0.00 × 0.1322135476547459213732911312 = 0 + 0.00 × -0.123912932193769965476541321 = 0 + +Number "-0" (scale 0) + -0 × 15 = 0 + -0 × -15 = 0 + -0 × 1 = 0 + -0 × -9 = 0 + -0 × 14.14 = 0 + -0 × -16.60 = 0 + -0 × 0.15 = 0 + -0 × -0.01 = 0 + -0 × 15151324141414.412312232141241 = 0 + -0 × -132132245132134.1515123765412 = 0 + -0 × 141241241241241248267654747412 = 0 + -0 × -149143276547656984948124912 = 0 + -0 × 0.1322135476547459213732911312 = 0 + -0 × -0.123912932193769965476541321 = 0 + +Number "-0.00" (scale 0) + -0.00 × 15 = 0 + -0.00 × -15 = 0 + -0.00 × 1 = 0 + -0.00 × -9 = 0 + -0.00 × 14.14 = 0 + -0.00 × -16.60 = 0 + -0.00 × 0.15 = 0 + -0.00 × -0.01 = 0 + -0.00 × 15151324141414.412312232141241 = 0 + -0.00 × -132132245132134.1515123765412 = 0 + -0.00 × 141241241241241248267654747412 = 0 + -0.00 × -149143276547656984948124912 = 0 + -0.00 × 0.1322135476547459213732911312 = 0 + -0.00 × -0.123912932193769965476541321 = 0 + +Number "0" (scale 10) + 0 × 15 = 0.0000000000 + 0 × -15 = 0.0000000000 + 0 × 1 = 0.0000000000 + 0 × -9 = 0.0000000000 + 0 × 14.14 = 0.0000000000 + 0 × -16.60 = 0.0000000000 + 0 × 0.15 = 0.0000000000 + 0 × -0.01 = 0.0000000000 + 0 × 15151324141414.412312232141241 = 0.0000000000 + 0 × -132132245132134.1515123765412 = 0.0000000000 + 0 × 141241241241241248267654747412 = 0.0000000000 + 0 × -149143276547656984948124912 = 0.0000000000 + 0 × 0.1322135476547459213732911312 = 0.0000000000 + 0 × -0.123912932193769965476541321 = 0.0000000000 + +Number "0.00" (scale 10) + 0.00 × 15 = 0.0000000000 + 0.00 × -15 = 0.0000000000 + 0.00 × 1 = 0.0000000000 + 0.00 × -9 = 0.0000000000 + 0.00 × 14.14 = 0.0000000000 + 0.00 × -16.60 = 0.0000000000 + 0.00 × 0.15 = 0.0000000000 + 0.00 × -0.01 = 0.0000000000 + 0.00 × 15151324141414.412312232141241 = 0.0000000000 + 0.00 × -132132245132134.1515123765412 = 0.0000000000 + 0.00 × 141241241241241248267654747412 = 0.0000000000 + 0.00 × -149143276547656984948124912 = 0.0000000000 + 0.00 × 0.1322135476547459213732911312 = 0.0000000000 + 0.00 × -0.123912932193769965476541321 = 0.0000000000 + +Number "-0" (scale 10) + -0 × 15 = 0.0000000000 + -0 × -15 = 0.0000000000 + -0 × 1 = 0.0000000000 + -0 × -9 = 0.0000000000 + -0 × 14.14 = 0.0000000000 + -0 × -16.60 = 0.0000000000 + -0 × 0.15 = 0.0000000000 + -0 × -0.01 = 0.0000000000 + -0 × 15151324141414.412312232141241 = 0.0000000000 + -0 × -132132245132134.1515123765412 = 0.0000000000 + -0 × 141241241241241248267654747412 = 0.0000000000 + -0 × -149143276547656984948124912 = 0.0000000000 + -0 × 0.1322135476547459213732911312 = 0.0000000000 + -0 × -0.123912932193769965476541321 = 0.0000000000 + +Number "-0.00" (scale 10) + -0.00 × 15 = 0.0000000000 + -0.00 × -15 = 0.0000000000 + -0.00 × 1 = 0.0000000000 + -0.00 × -9 = 0.0000000000 + -0.00 × 14.14 = 0.0000000000 + -0.00 × -16.60 = 0.0000000000 + -0.00 × 0.15 = 0.0000000000 + -0.00 × -0.01 = 0.0000000000 + -0.00 × 15151324141414.412312232141241 = 0.0000000000 + -0.00 × -132132245132134.1515123765412 = 0.0000000000 + -0.00 × 141241241241241248267654747412 = 0.0000000000 + -0.00 × -149143276547656984948124912 = 0.0000000000 + -0.00 × 0.1322135476547459213732911312 = 0.0000000000 + -0.00 × -0.123912932193769965476541321 = 0.0000000000 diff --git a/ext/bcmath/tests/bcpow.phpt b/ext/bcmath/tests/bcpow.phpt index 1850e342799bd..32c057c974578 100644 --- a/ext/bcmath/tests/bcpow.phpt +++ b/ext/bcmath/tests/bcpow.phpt @@ -10,9 +10,11 @@ echo bcpow("1", "2"),"\n"; echo bcpow("-2", "5", 4),"\n"; echo bcpow("2", "64"),"\n"; echo bcpow("-2.555", "5", 2),"\n"; +echo bcpow("2", "-4"); ?> --EXPECT-- 1 -32.0000 18446744073709551616 -108.88 +0 \ No newline at end of file diff --git a/ext/bcmath/tests/bcpow_error1.phpt b/ext/bcmath/tests/bcpow_error1.phpt index d2b1a10704e6d..fefdfc57a010f 100644 --- a/ext/bcmath/tests/bcpow_error1.phpt +++ b/ext/bcmath/tests/bcpow_error1.phpt @@ -9,6 +9,12 @@ try { } catch (\ValueError $e) { echo $e->getMessage() . \PHP_EOL; } +try { + var_dump(bcpow('1', '0.1', 2)); +} catch (\ValueError $e) { + echo $e->getMessage() . \PHP_EOL; +} ?> --EXPECT-- bcpow(): Argument #2 ($exponent) cannot have a fractional part +bcpow(): Argument #2 ($exponent) cannot have a fractional part diff --git a/ext/bcmath/tests/bcpow_error2.phpt b/ext/bcmath/tests/bcpow_error2.phpt index 733d628b41ae3..f9b830ca7d5bf 100644 --- a/ext/bcmath/tests/bcpow_error2.phpt +++ b/ext/bcmath/tests/bcpow_error2.phpt @@ -9,6 +9,13 @@ try { } catch (\ValueError $e) { echo $e->getMessage() . \PHP_EOL; } + +try { + var_dump(bcpow('0', '-9223372036854775808', 2)); +} catch (\ValueError $e) { + echo $e->getMessage() . \PHP_EOL; +} ?> --EXPECT-- bcpow(): Argument #2 ($exponent) is too large +bcpow(): Argument #2 ($exponent) is too large diff --git a/ext/bcmath/tests/bcpow_variation001.phpt b/ext/bcmath/tests/bcpow_variation001.phpt deleted file mode 100644 index 9bcea231fb249..0000000000000 --- a/ext/bcmath/tests/bcpow_variation001.phpt +++ /dev/null @@ -1,12 +0,0 @@ ---TEST-- -bcpow() with a negative exponent ---EXTENSIONS-- -bcmath ---INI-- -bcmath.scale=0 ---FILE-- - ---EXPECT-- -0 From 2d873e62b493b8966980e9848e7460b4e938eb3d Mon Sep 17 00:00:00 2001 From: Jorg Adam Sowa Date: Wed, 28 Jun 2023 23:40:07 +0200 Subject: [PATCH 03/15] Extend tests --- ext/bcmath/tests/bcadd_large_numbers.phpt | 2 +- ext/bcmath/tests/bcpow_basic.phpt | 383 ++++++++++++++++++ .../tests/bcpowmod_negative_exponent.phpt | 5 + ext/bcmath/tests/bcsqrt.phpt | 55 ++- ext/bcmath/tests/bcsub_basic.phpt | 344 ++++++++++++++++ ext/bcmath/tests/bcsub_large_numbers.phpt | 264 ++++++++++++ ext/bcmath/tests/bcsub_zero.phpt | 184 +++++++++ 7 files changed, 1229 insertions(+), 8 deletions(-) create mode 100644 ext/bcmath/tests/bcpow_basic.phpt create mode 100644 ext/bcmath/tests/bcsub_basic.phpt create mode 100644 ext/bcmath/tests/bcsub_large_numbers.phpt create mode 100644 ext/bcmath/tests/bcsub_zero.phpt diff --git a/ext/bcmath/tests/bcadd_large_numbers.phpt b/ext/bcmath/tests/bcadd_large_numbers.phpt index 594a8c0e1b547..e88ec95332406 100644 --- a/ext/bcmath/tests/bcadd_large_numbers.phpt +++ b/ext/bcmath/tests/bcadd_large_numbers.phpt @@ -15,7 +15,7 @@ foreach($scales as $scale) { foreach($basicNumbers as $firstNumber) { echo "Number \"$firstNumber\" (scale $scale)\n"; foreach(array_merge($basicNumbers, $allTestNumbers) as $secondNumber) { - echo $firstNumber, " + ", str_pad($secondNumber,30), ' = ' ,bcadd($firstNumber, $secondNumber, $scale),"\n"; + echo $firstNumber, " + ", str_pad($secondNumber, 30), ' = ', bcadd($firstNumber, $secondNumber, $scale),"\n"; } echo "\n"; } diff --git a/ext/bcmath/tests/bcpow_basic.phpt b/ext/bcmath/tests/bcpow_basic.phpt new file mode 100644 index 0000000000000..ebcfb76c42617 --- /dev/null +++ b/ext/bcmath/tests/bcpow_basic.phpt @@ -0,0 +1,383 @@ +--TEST-- +bcpow() function - extended basic tests +--EXTENSIONS-- +bcmath +--INI-- +bcmath.scale=0 +--FILE-- + +--EXPECT-- +Number "15" (scale 0) + 15 × 15 = 437893890380859375 + 15 × -15 = 0 + 15 × 1 = 15 + 15 × -9 = 0 + 15 × 0 = 1 + 15 × -0 = 1 + 15 × 252 = 237135886481351297382468574917313144844970356302221777632832615638003070736580081217360793962070064247594576249396872345556164659881002366207912047265309059413892077092997608382858888266273629252398653205357976938870120670782142034597069710705445432682146079950147310455577098764479160308837890625 + 15 × -112 = 0 + +Number "-15" (scale 0) + -15 × 15 = -437893890380859375 + -15 × -15 = 0 + -15 × 1 = -15 + -15 × -9 = 0 + -15 × 0 = 1 + -15 × -0 = 1 + -15 × 252 = 237135886481351297382468574917313144844970356302221777632832615638003070736580081217360793962070064247594576249396872345556164659881002366207912047265309059413892077092997608382858888266273629252398653205357976938870120670782142034597069710705445432682146079950147310455577098764479160308837890625 + -15 × -112 = 0 + +Number "1" (scale 0) + 1 × 15 = 1 + 1 × -15 = 1 + 1 × 1 = 1 + 1 × -9 = 1 + 1 × 0 = 1 + 1 × -0 = 1 + 1 × 252 = 1 + 1 × -112 = 1 + +Number "-9" (scale 0) + -9 × 15 = -205891132094649 + -9 × -15 = 0 + -9 × 1 = -9 + -9 × -9 = 0 + -9 × 0 = 1 + -9 × -0 = 1 + -9 × 252 = 2945183635465464884233206633443008848559894187106131466268028902439028615518295534220079169301330491447962555905286712315981330452878058357582386904241524088181763471075659119460152769761830870007779820098802358876968679265201323425586410081 + -9 × -112 = 0 + +Number "0" (scale 0) + 0 × 15 = 0 + 0 × -15 = 0 + 0 × 1 = 0 + 0 × -9 = 0 + 0 × 0 = 1 + 0 × -0 = 1 + 0 × 252 = 0 + 0 × -112 = 0 + +Number "-0" (scale 0) + -0 × 15 = 0 + -0 × -15 = 0 + -0 × 1 = 0 + -0 × -9 = 0 + -0 × 0 = 1 + -0 × -0 = 1 + -0 × 252 = 0 + -0 × -112 = 0 + +Number "252" (scale 0) + 252 × 15 = 1049562032118382425513949173821472768 + 252 × -15 = 0 + 252 × 1 = 252 + 252 × -9 = 0 + 252 × 0 = 1 + 252 × -0 = 1 + 252 × 252 = 142212010733424647125806541813713973266552845448041013743767421605354690415544328196152173390963803494710443230142152775687771944805429044982729796870857181947776572826160793933424942988750037827638341986183789792079484880609013515717131451507203060282065264043070502125106179548342207047711204933650239424460841202157152719662980652213693426926863084348529493037513389175805577626219903234384208039735661457745854089305800218117427842428649306815115886661640301037762482527923343983853507875264930793965916131347421096416232894153340276842687468868552274843085150094307684610419227652811804917758213226496 + 252 × -112 = 0 + +Number "-112" (scale 0) + -112 × 15 = -5473565759257037859954903482368 + -112 × -15 = 0 + -112 × 1 = -112 + -112 × -9 = 0 + -112 × 0 = 1 + -112 × -0 = 1 + -112 × 252 = 2528958559509291693508169626548016243760525615786379976651267082288161074806837567146354242426675448089179587223689918667106749284121965637887934532709154725528081671334320643858146400820666287506930741579829377389324701928200642059190071982670723834096616484481264403390509754202256821825886418273918096647296731861068941003342202311747852949747419032091731983573265045376333262301085406296848909763397511959941544798830761308589095475080050282796818166220650002245272286955283850226653729461037771414650027776147456 + -112 × -112 = 0 + +Number "0.00" (scale 0) + 0.00 × 15 = 0 + 0.00 × -15 = 0 + 0.00 × 1 = 0 + 0.00 × -9 = 0 + 0.00 × 0 = 1 + 0.00 × -0 = 1 + 0.00 × 252 = 0 + 0.00 × -112 = 0 + +Number "-0.00" (scale 0) + -0.00 × 15 = 0 + -0.00 × -15 = 0 + -0.00 × 1 = 0 + -0.00 × -9 = 0 + -0.00 × 0 = 1 + -0.00 × -0 = 1 + -0.00 × 252 = 0 + -0.00 × -112 = 0 + +Number "14.14" (scale 0) + 14.14 × 15 = 180609729388653367 + 14.14 × -15 = 0 + 14.14 × 1 = 14 + 14.14 × -9 = 0 + 14.14 × 0 = 1 + 14.14 × -0 = 1 + 14.14 × 252 = 81893830287657387446140079713887806093576884288543703328783802176508922753380870094003376900318176725198165627317176488631295332728458521626072637389422651709754634844150191850264235770478926203337416116264674564206565124289082609409927041547210316199545928823591027686585730497632744792533 + 14.14 × -112 = 0 + +Number "-16.60" (scale 0) +-16.60 × 15 = -2002725006700243463 +-16.60 × -15 = 0 +-16.60 × 1 = -16 +-16.60 × -9 = 0 +-16.60 × 0 = 1 +-16.60 × -0 = 1 +-16.60 × 252 = 29325011162031531635050775473043742335712717807162139294189975794596377719994688259393390430325862997866008694776131070878139493075620575422701181905723221059535177378476880731856824922247604302185770818227621273103971150596854313288134126369153196254990016237048145067458027194360617116808917107675683822643 +-16.60 × -112 = 0 + +Number "0.15" (scale 0) + 0.15 × 15 = 0 + 0.15 × -15 = 2283658260521 + 0.15 × 1 = 0 + 0.15 × -9 = 26012294 + 0.15 × 0 = 1 + 0.15 × -0 = 1 + 0.15 × 252 = 0 + 0.15 × -112 = 189574092538418764958341193234367215745086742520818271114560854632390900314942322598922704092 + +Number "-0.01" (scale 0) + -0.01 × 15 = 0 + -0.01 × -15 = -1000000000000000000000000000000 + -0.01 × 1 = 0 + -0.01 × -9 = -1000000000000000000 + -0.01 × 0 = 1 + -0.01 × -0 = 1 + -0.01 × 252 = 0 + -0.01 × -112 = 100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 + +Number "1414.412312232141241" (scale 0) +1414.412312232141241 × 15 = 181401311345004795369605348243285615744264918219 +1414.412312232141241 × -15 = 0 +1414.412312232141241 × 1 = 1414 +1414.412312232141241 × -9 = 0 +1414.412312232141241 × 0 = 1 +1414.412312232141241 × -0 = 1 +1414.412312232141241 × 252 = 88137168372666155804276495888737017565625188638155610906073316863891843320209228429385459358700876956099493254286705412798169482492099355760118256405004521410502409380482979616205204763164274984079035060505522944560782048471974647094875802745042305471941726529061645806690049668231712810607048046215822585537680231309871526203378473994191056482542621083433249873256740456202966865602420914295256907342241117457321018827844364210473247086616620208279353513472352052663849994485380858895191637653803060163638226611530802000741575923441458533998708849302187532129439615530480573791657814606600833250886238137718388081368496703759038475953104308366982392163641103640160792529936819416987286935547975099937169920389706687266005474641429822696630088998290423392470284448349396681711686536386207832962 +1414.412312232141241 × -112 = 0 + +Number "-132132245132134.1515123765412" (scale 0) +-132132245132134.1515123765412 × 15 = -65332942084431118671715132691017936828728297532817376297090067844431557352758338594306899592493441083845683845573112529065975725871957965764869599362286162979915656223771056616561461958797695558519631556073805440 +-132132245132134.1515123765412 × -15 = 0 +-132132245132134.1515123765412 × 1 = -132132245132134 +-132132245132134.1515123765412 × -9 = 0 +-132132245132134.1515123765412 × 0 = 1 +-132132245132134.1515123765412 × -0 = 1 +-132132245132134.1515123765412 × 252 = 3120478727852745944038201629388077518619819959072778583628662888334880902703519914956089883839049682560676318469032398877418258855834502244373291879606411026505240673439178203360337045239911911401143426214698971271446651876647780290878775496277056268500023561875074401483645577685406485543728816046104697722586058947707076996271324455741296959565524792629154208973708365548001942744414873486576135834495119053638656800810039027025111460331113258212007994067919145384836907081609212431099297641564986044622031456724633662129385296885404614299495960919762385823257644295402159220952463360942737103080118148157378054224237643480822424971993488886224977914497478451840908909543741696948530676782472589176085509233818251158281114742053469197512119057322174380982258491102193374311292374479260658074669161655748423441627187461082149885494689147360706871450098031935056173199096293719222350434764175998710688281702890509097348360359424470253307347729933523000107901985428772530720331531602039527737982138204747133438804098370520558033130528360187686745723186175166911233242211471504301640494824606523094514433764325212802493051981781145617974800929022725476602466144772127930440805434165616744472255347819425748816302231931654549386733679017858450849437143025476899823162000718594064313231515875922351213500222461590573572602190403067267602652736825180691112504152614488461179376450513626420818955027469144025952675277586101528625525962975039500773275778271940118869825449096270757603664530201369396099033029284457100867407697277568670150540402862276543512075434177386868941061854045298572535075420109196042754099960063991947561825511501510308275562634049421237378673160125072162000008236844954128527856723821733254208508907735993281091035579467181540332944219703979021157597903396359158593344664084014589368086779575978259251720029980655644790465254951448194710584230098489732637703819106720935376496517841788507273903175469897103859611331100545364249483088831520541660951382659294376726172983396374439867149870807521191671805902233698315119009713542754446376327365814873898054136563782777104472609469109963308092044568027239290595186247761999234668032081218755268222207063445264559530223287160963458677689875951320832784965806613254975793162543596534222371458668498571166837299325731596777670132830001546839544284346351393964824730839639301046179558652696082308824070477223869283054978658326855126932082754121256920575641227926598676719724725719222484148625020220494108342394030408253089899891700400203336918661663751523788622735773864833731552284954237137952497719069892440806380625733323869952845631051069940707365414990621967523332677411935527536814983008403556834213618522880787952621206983027073172116156651218377851746340174808375254284001435816118302249193303397466776845851743890519082821148416722135170698614740907867435963618925044956902958148324272894672030283819168758463855285701991252475351862754820487744045764868396684777846686070069982217881227849496760269225414231083805733290534151123406915650028121222263850640283860639197520959825152626458400452325975452613482437167476356009654121926543290145079478070360029730020980795208355698196814222112480898983202043419519375263651949181097645574205178523255626929768121920234439313474099206104455976950857197860880977258241730976397804678973733516947554105951667082135434125689463359251547871548911802646544683845207784833032667495833535290224433943754770189766271196987201022608066882057869125850499995301677418321251261832661046278653566452890787168741868239138468494682699662284065061316757322733605 +-132132245132134.1515123765412 × -112 = 0 + +Number "0.1322135476547459213732911312" (scale 0) +0.1322135476547459213732911312 × 15 = 0 +0.1322135476547459213732911312 × -15 = 15165635699683 +0.1322135476547459213732911312 × 1 = 0 +0.1322135476547459213732911312 × -9 = 81005847 +0.1322135476547459213732911312 × 0 = 1 +0.1322135476547459213732911312 × -0 = 1 +0.1322135476547459213732911312 × 252 = 0 +0.1322135476547459213732911312 × -112 = 261271852670585926399109608993686784219014928770917821092988518427507780528448900476275115673665845 + +Number "-0.123912932193769965476541321" (scale 0) +-0.123912932193769965476541321 × 15 = 0 +-0.123912932193769965476541321 × -15 = -40109799462729 +-0.123912932193769965476541321 × 1 = 0 +-0.123912932193769965476541321 × -9 = -145194543 +-0.123912932193769965476541321 × 0 = 1 +-0.123912932193769965476541321 × -0 = 1 +-0.123912932193769965476541321 × 252 = 0 +-0.123912932193769965476541321 × -112 = 372337687215014577843846097845819604950292238064034167723169672020440891758727112526694844172394015451 + +Number "15" (scale 10) + 15 × 15 = 437893890380859375.0000000000 + 15 × -15 = 0.0000000000 + 15 × 1 = 15.0000000000 + 15 × -9 = 0.0000000000 + 15 × 0 = 1.0000000000 + 15 × -0 = 1.0000000000 + 15 × 252 = 237135886481351297382468574917313144844970356302221777632832615638003070736580081217360793962070064247594576249396872345556164659881002366207912047265309059413892077092997608382858888266273629252398653205357976938870120670782142034597069710705445432682146079950147310455577098764479160308837890625.0000000000 + 15 × -112 = 0.0000000000 + +Number "-15" (scale 10) + -15 × 15 = -437893890380859375.0000000000 + -15 × -15 = 0.0000000000 + -15 × 1 = -15.0000000000 + -15 × -9 = 0.0000000000 + -15 × 0 = 1.0000000000 + -15 × -0 = 1.0000000000 + -15 × 252 = 237135886481351297382468574917313144844970356302221777632832615638003070736580081217360793962070064247594576249396872345556164659881002366207912047265309059413892077092997608382858888266273629252398653205357976938870120670782142034597069710705445432682146079950147310455577098764479160308837890625.0000000000 + -15 × -112 = 0.0000000000 + +Number "1" (scale 10) + 1 × 15 = 1.0000000000 + 1 × -15 = 1.0000000000 + 1 × 1 = 1.0000000000 + 1 × -9 = 1.0000000000 + 1 × 0 = 1.0000000000 + 1 × -0 = 1.0000000000 + 1 × 252 = 1.0000000000 + 1 × -112 = 1.0000000000 + +Number "-9" (scale 10) + -9 × 15 = -205891132094649.0000000000 + -9 × -15 = 0.0000000000 + -9 × 1 = -9.0000000000 + -9 × -9 = -0.0000000025 + -9 × 0 = 1.0000000000 + -9 × -0 = 1.0000000000 + -9 × 252 = 2945183635465464884233206633443008848559894187106131466268028902439028615518295534220079169301330491447962555905286712315981330452878058357582386904241524088181763471075659119460152769761830870007779820098802358876968679265201323425586410081.0000000000 + -9 × -112 = 0.0000000000 + +Number "0" (scale 10) + 0 × 15 = 0.0000000000 + 0 × -15 = 0.0000000000 + 0 × 1 = 0.0000000000 + 0 × -9 = 0.0000000000 + 0 × 0 = 1.0000000000 + 0 × -0 = 1.0000000000 + 0 × 252 = 0.0000000000 + 0 × -112 = 0.0000000000 + +Number "-0" (scale 10) + -0 × 15 = 0.0000000000 + -0 × -15 = 0.0000000000 + -0 × 1 = 0.0000000000 + -0 × -9 = 0.0000000000 + -0 × 0 = 1.0000000000 + -0 × -0 = 1.0000000000 + -0 × 252 = 0.0000000000 + -0 × -112 = 0.0000000000 + +Number "252" (scale 10) + 252 × 15 = 1049562032118382425513949173821472768.0000000000 + 252 × -15 = 0.0000000000 + 252 × 1 = 252.0000000000 + 252 × -9 = 0.0000000000 + 252 × 0 = 1.0000000000 + 252 × -0 = 1.0000000000 + 252 × 252 = 142212010733424647125806541813713973266552845448041013743767421605354690415544328196152173390963803494710443230142152775687771944805429044982729796870857181947776572826160793933424942988750037827638341986183789792079484880609013515717131451507203060282065264043070502125106179548342207047711204933650239424460841202157152719662980652213693426926863084348529493037513389175805577626219903234384208039735661457745854089305800218117427842428649306815115886661640301037762482527923343983853507875264930793965916131347421096416232894153340276842687468868552274843085150094307684610419227652811804917758213226496.0000000000 + 252 × -112 = 0.0000000000 + +Number "-112" (scale 10) + -112 × 15 = -5473565759257037859954903482368.0000000000 + -112 × -15 = 0.0000000000 + -112 × 1 = -112.0000000000 + -112 × -9 = 0.0000000000 + -112 × 0 = 1.0000000000 + -112 × -0 = 1.0000000000 + -112 × 252 = 2528958559509291693508169626548016243760525615786379976651267082288161074806837567146354242426675448089179587223689918667106749284121965637887934532709154725528081671334320643858146400820666287506930741579829377389324701928200642059190071982670723834096616484481264403390509754202256821825886418273918096647296731861068941003342202311747852949747419032091731983573265045376333262301085406296848909763397511959941544798830761308589095475080050282796818166220650002245272286955283850226653729461037771414650027776147456.0000000000 + -112 × -112 = 0.0000000000 + +Number "0.00" (scale 10) + 0.00 × 15 = 0.0000000000 + 0.00 × -15 = 0.0000000000 + 0.00 × 1 = 0.0000000000 + 0.00 × -9 = 0.0000000000 + 0.00 × 0 = 1.0000000000 + 0.00 × -0 = 1.0000000000 + 0.00 × 252 = 0.0000000000 + 0.00 × -112 = 0.0000000000 + +Number "-0.00" (scale 10) + -0.00 × 15 = 0.0000000000 + -0.00 × -15 = 0.0000000000 + -0.00 × 1 = 0.0000000000 + -0.00 × -9 = 0.0000000000 + -0.00 × 0 = 1.0000000000 + -0.00 × -0 = 1.0000000000 + -0.00 × 252 = 0.0000000000 + -0.00 × -112 = 0.0000000000 + +Number "14.14" (scale 10) + 14.14 × 15 = 180609729388653367.2586094856 + 14.14 × -15 = 0.0000000000 + 14.14 × 1 = 14.1400000000 + 14.14 × -9 = 0.0000000000 + 14.14 × 0 = 1.0000000000 + 14.14 × -0 = 1.0000000000 + 14.14 × 252 = 81893830287657387446140079713887806093576884288543703328783802176508922753380870094003376900318176725198165627317176488631295332728458521626072637389422651709754634844150191850264235770478926203337416116264674564206565124289082609409927041547210316199545928823591027686585730497632744792533.0727815413 + 14.14 × -112 = 0.0000000000 + +Number "-16.60" (scale 10) +-16.60 × 15 = -2002725006700243463.1471178615 +-16.60 × -15 = 0.0000000000 +-16.60 × 1 = -16.6000000000 +-16.60 × -9 = 0.0000000000 +-16.60 × 0 = 1.0000000000 +-16.60 × -0 = 1.0000000000 +-16.60 × 252 = 29325011162031531635050775473043742335712717807162139294189975794596377719994688259393390430325862997866008694776131070878139493075620575422701181905723221059535177378476880731856824922247604302185770818227621273103971150596854313288134126369153196254990016237048145067458027194360617116808917107675683822643.7551838996 +-16.60 × -112 = 0.0000000000 + +Number "0.15" (scale 10) + 0.15 × 15 = 0.0000000000 + 0.15 × -15 = 2283658260521.1672220051 + 0.15 × 1 = 0.1500000000 + 0.15 × -9 = 26012294.8737489203 + 0.15 × 0 = 1.0000000000 + 0.15 × -0 = 1.0000000000 + 0.15 × 252 = 0.0000000000 + 0.15 × -112 = 189574092538418764958341193234367215745086742520818271114560854632390900314942322598922704092.1046205530 + +Number "-0.01" (scale 10) + -0.01 × 15 = 0.0000000000 + -0.01 × -15 = -1000000000000000000000000000000.0000000000 + -0.01 × 1 = -0.0100000000 + -0.01 × -9 = -1000000000000000000.0000000000 + -0.01 × 0 = 1.0000000000 + -0.01 × -0 = 1.0000000000 + -0.01 × 252 = 0.0000000000 + -0.01 × -112 = 100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000.0000000000 + +Number "1414.412312232141241" (scale 10) +1414.412312232141241 × 15 = 181401311345004795369605348243285615744264918219.6585339214 +1414.412312232141241 × -15 = 0.0000000000 +1414.412312232141241 × 1 = 1414.4123122321 +1414.412312232141241 × -9 = 0.0000000000 +1414.412312232141241 × 0 = 1.0000000000 +1414.412312232141241 × -0 = 1.0000000000 +1414.412312232141241 × 252 = 88137168372666155804276495888737017565625188638155610906073316863891843320209228429385459358700876956099493254286705412798169482492099355760118256405004521410502409380482979616205204763164274984079035060505522944560782048471974647094875802745042305471941726529061645806690049668231712810607048046215822585537680231309871526203378473994191056482542621083433249873256740456202966865602420914295256907342241117457321018827844364210473247086616620208279353513472352052663849994485380858895191637653803060163638226611530802000741575923441458533998708849302187532129439615530480573791657814606600833250886238137718388081368496703759038475953104308366982392163641103640160792529936819416987286935547975099937169920389706687266005474641429822696630088998290423392470284448349396681711686536386207832962.7649745194 +1414.412312232141241 × -112 = 0.0000000000 + +Number "-132132245132134.1515123765412" (scale 10) +-132132245132134.1515123765412 × 15 = -65332942084431118671715132691017936828728297532817376297090067844431557352758338594306899592493441083845683845573112529065975725871957965764869599362286162979915656223771056616561461958797695558519631556073805440.8743426066 +-132132245132134.1515123765412 × -15 = 0.0000000000 +-132132245132134.1515123765412 × 1 = -132132245132134.1515123765 +-132132245132134.1515123765412 × -9 = 0.0000000000 +-132132245132134.1515123765412 × 0 = 1.0000000000 +-132132245132134.1515123765412 × -0 = 1.0000000000 +-132132245132134.1515123765412 × 252 = 3120478727852745944038201629388077518619819959072778583628662888334880902703519914956089883839049682560676318469032398877418258855834502244373291879606411026505240673439178203360337045239911911401143426214698971271446651876647780290878775496277056268500023561875074401483645577685406485543728816046104697722586058947707076996271324455741296959565524792629154208973708365548001942744414873486576135834495119053638656800810039027025111460331113258212007994067919145384836907081609212431099297641564986044622031456724633662129385296885404614299495960919762385823257644295402159220952463360942737103080118148157378054224237643480822424971993488886224977914497478451840908909543741696948530676782472589176085509233818251158281114742053469197512119057322174380982258491102193374311292374479260658074669161655748423441627187461082149885494689147360706871450098031935056173199096293719222350434764175998710688281702890509097348360359424470253307347729933523000107901985428772530720331531602039527737982138204747133438804098370520558033130528360187686745723186175166911233242211471504301640494824606523094514433764325212802493051981781145617974800929022725476602466144772127930440805434165616744472255347819425748816302231931654549386733679017858450849437143025476899823162000718594064313231515875922351213500222461590573572602190403067267602652736825180691112504152614488461179376450513626420818955027469144025952675277586101528625525962975039500773275778271940118869825449096270757603664530201369396099033029284457100867407697277568670150540402862276543512075434177386868941061854045298572535075420109196042754099960063991947561825511501510308275562634049421237378673160125072162000008236844954128527856723821733254208508907735993281091035579467181540332944219703979021157597903396359158593344664084014589368086779575978259251720029980655644790465254951448194710584230098489732637703819106720935376496517841788507273903175469897103859611331100545364249483088831520541660951382659294376726172983396374439867149870807521191671805902233698315119009713542754446376327365814873898054136563782777104472609469109963308092044568027239290595186247761999234668032081218755268222207063445264559530223287160963458677689875951320832784965806613254975793162543596534222371458668498571166837299325731596777670132830001546839544284346351393964824730839639301046179558652696082308824070477223869283054978658326855126932082754121256920575641227926598676719724725719222484148625020220494108342394030408253089899891700400203336918661663751523788622735773864833731552284954237137952497719069892440806380625733323869952845631051069940707365414990621967523332677411935527536814983008403556834213618522880787952621206983027073172116156651218377851746340174808375254284001435816118302249193303397466776845851743890519082821148416722135170698614740907867435963618925044956902958148324272894672030283819168758463855285701991252475351862754820487744045764868396684777846686070069982217881227849496760269225414231083805733290534151123406915650028121222263850640283860639197520959825152626458400452325975452613482437167476356009654121926543290145079478070360029730020980795208355698196814222112480898983202043419519375263651949181097645574205178523255626929768121920234439313474099206104455976950857197860880977258241730976397804678973733516947554105951667082135434125689463359251547871548911802646544683845207784833032667495833535290224433943754770189766271196987201022608066882057869125850499995301677418321251261832661046278653566452890787168741868239138468494682699662284065061316757322733605.4563495790 +-132132245132134.1515123765412 × -112 = 0.0000000000 + +Number "0.1322135476547459213732911312" (scale 10) +0.1322135476547459213732911312 × 15 = 0.0000000000 +0.1322135476547459213732911312 × -15 = 15165635699683.8093525277 +0.1322135476547459213732911312 × 1 = 0.1322135476 +0.1322135476547459213732911312 × -9 = 81005847.7955131768 +0.1322135476547459213732911312 × 0 = 1.0000000000 +0.1322135476547459213732911312 × -0 = 1.0000000000 +0.1322135476547459213732911312 × 252 = 0.0000000000 +0.1322135476547459213732911312 × -112 = 261271852670585926399109608993686784219014928770917821092988518427507780528448900476275115673665845.0719674616 + +Number "-0.123912932193769965476541321" (scale 10) +-0.123912932193769965476541321 × 15 = 0.0000000000 +-0.123912932193769965476541321 × -15 = -40109799462729.8625078080 +-0.123912932193769965476541321 × 1 = -0.1239129321 +-0.123912932193769965476541321 × -9 = -145194543.0878622400 +-0.123912932193769965476541321 × 0 = 1.0000000000 +-0.123912932193769965476541321 × -0 = 1.0000000000 +-0.123912932193769965476541321 × 252 = 0.0000000000 +-0.123912932193769965476541321 × -112 = 372337687215014577843846097845819604950292238064034167723169672020440891758727112526694844172394015451.7302535898 \ No newline at end of file diff --git a/ext/bcmath/tests/bcpowmod_negative_exponent.phpt b/ext/bcmath/tests/bcpowmod_negative_exponent.phpt index 7814e2bd41d82..ece8d479a766b 100644 --- a/ext/bcmath/tests/bcpowmod_negative_exponent.phpt +++ b/ext/bcmath/tests/bcpowmod_negative_exponent.phpt @@ -11,6 +11,11 @@ try { } catch (\ValueError $e) { echo $e->getMessage() . \PHP_EOL; } +try { + var_dump(bcpowmod('1', '0', '2')); +} catch (\ValueError $e) { + echo $e->getMessage() . \PHP_EOL; +} ?> --EXPECT-- bcpowmod(): Argument #2 ($exponent) must be greater than or equal to 0 diff --git a/ext/bcmath/tests/bcsqrt.phpt b/ext/bcmath/tests/bcsqrt.phpt index 92512dd0d0b81..47f8c047438f8 100644 --- a/ext/bcmath/tests/bcsqrt.phpt +++ b/ext/bcmath/tests/bcsqrt.phpt @@ -6,13 +6,54 @@ bcmath bcmath.scale=0 --FILE-- --EXPECT-- +0 +0 +0 +0 +3892470 +375820756799356 +0 3 -3.07 -43913234134.28826 -0.70710 +0 +3 +1 +3 +0 +0.0000000000 +0.0000000000 +0.0000000000 +0.0000000000 +3892470.1850385973 +375820756799356.7439216735 +0.3636118090 +3.7603191353 +0.3872983346 +3.8729833462 +1.0000000000 +3.7603191353 +0.3872983346 \ No newline at end of file diff --git a/ext/bcmath/tests/bcsub_basic.phpt b/ext/bcmath/tests/bcsub_basic.phpt new file mode 100644 index 0000000000000..5eb306ea8af5f --- /dev/null +++ b/ext/bcmath/tests/bcsub_basic.phpt @@ -0,0 +1,344 @@ +--TEST-- +bcsub() function - extended basic tests +--EXTENSIONS-- +bcmath +--INI-- +bcmath.scale=0 +--FILE-- + +--EXPECT-- +Number "15" (scale 0) + 15 - 15 = 0 + 15 - -15 = 30 + 15 - 1 = 14 + 15 - -9 = 24 + 15 - 14.14 = 0 + 15 - -16.60 = 31 + 15 - 0.15 = 14 + 15 - -0.01 = 15 + 15 - 0 = 15 + 15 - 0.00 = 15 + 15 - -0 = 15 + 15 - -0.00 = 15 + 15 - 15151324141414.412312232141241 = -15151324141399 + 15 - -132132245132134.1515123765412 = 132132245132149 + 15 - 141241241241241248267654747412 = -141241241241241248267654747397 + 15 - -149143276547656984948124912 = 149143276547656984948124927 + 15 - 0.1322135476547459213732911312 = 14 + 15 - -0.123912932193769965476541321 = 15 + +Number "-15" (scale 0) + -15 - 15 = -30 + -15 - -15 = 0 + -15 - 1 = -16 + -15 - -9 = -6 + -15 - 14.14 = -29 + -15 - -16.60 = 1 + -15 - 0.15 = -15 + -15 - -0.01 = -14 + -15 - 0 = -15 + -15 - 0.00 = -15 + -15 - -0 = -15 + -15 - -0.00 = -15 + -15 - 15151324141414.412312232141241 = -15151324141429 + -15 - -132132245132134.1515123765412 = 132132245132119 + -15 - 141241241241241248267654747412 = -141241241241241248267654747427 + -15 - -149143276547656984948124912 = 149143276547656984948124897 + -15 - 0.1322135476547459213732911312 = -15 + -15 - -0.123912932193769965476541321 = -14 + +Number "1" (scale 0) + 1 - 15 = -14 + 1 - -15 = 16 + 1 - 1 = 0 + 1 - -9 = 10 + 1 - 14.14 = -13 + 1 - -16.60 = 17 + 1 - 0.15 = 0 + 1 - -0.01 = 1 + 1 - 0 = 1 + 1 - 0.00 = 1 + 1 - -0 = 1 + 1 - -0.00 = 1 + 1 - 15151324141414.412312232141241 = -15151324141413 + 1 - -132132245132134.1515123765412 = 132132245132135 + 1 - 141241241241241248267654747412 = -141241241241241248267654747411 + 1 - -149143276547656984948124912 = 149143276547656984948124913 + 1 - 0.1322135476547459213732911312 = 0 + 1 - -0.123912932193769965476541321 = 1 + +Number "-9" (scale 0) + -9 - 15 = -24 + -9 - -15 = 6 + -9 - 1 = -10 + -9 - -9 = 0 + -9 - 14.14 = -23 + -9 - -16.60 = 7 + -9 - 0.15 = -9 + -9 - -0.01 = -8 + -9 - 0 = -9 + -9 - 0.00 = -9 + -9 - -0 = -9 + -9 - -0.00 = -9 + -9 - 15151324141414.412312232141241 = -15151324141423 + -9 - -132132245132134.1515123765412 = 132132245132125 + -9 - 141241241241241248267654747412 = -141241241241241248267654747421 + -9 - -149143276547656984948124912 = 149143276547656984948124903 + -9 - 0.1322135476547459213732911312 = -9 + -9 - -0.123912932193769965476541321 = -8 + +Number "14.14" (scale 0) + 14.14 - 15 = 0 + 14.14 - -15 = 29 + 14.14 - 1 = 13 + 14.14 - -9 = 23 + 14.14 - 14.14 = 0 + 14.14 - -16.60 = 30 + 14.14 - 0.15 = 13 + 14.14 - -0.01 = 14 + 14.14 - 0 = 14 + 14.14 - 0.00 = 14 + 14.14 - -0 = 14 + 14.14 - -0.00 = 14 + 14.14 - 15151324141414.412312232141241 = -15151324141400 + 14.14 - -132132245132134.1515123765412 = 132132245132148 + 14.14 - 141241241241241248267654747412 = -141241241241241248267654747397 + 14.14 - -149143276547656984948124912 = 149143276547656984948124926 + 14.14 - 0.1322135476547459213732911312 = 14 + 14.14 - -0.123912932193769965476541321 = 14 + +Number "-16.60" (scale 0) +-16.60 - 15 = -31 +-16.60 - -15 = -1 +-16.60 - 1 = -17 +-16.60 - -9 = -7 +-16.60 - 14.14 = -30 +-16.60 - -16.60 = 0 +-16.60 - 0.15 = -16 +-16.60 - -0.01 = -16 +-16.60 - 0 = -16 +-16.60 - 0.00 = -16 +-16.60 - -0 = -16 +-16.60 - -0.00 = -16 +-16.60 - 15151324141414.412312232141241 = -15151324141431 +-16.60 - -132132245132134.1515123765412 = 132132245132117 +-16.60 - 141241241241241248267654747412 = -141241241241241248267654747428 +-16.60 - -149143276547656984948124912 = 149143276547656984948124895 +-16.60 - 0.1322135476547459213732911312 = -16 +-16.60 - -0.123912932193769965476541321 = -16 + +Number "0.15" (scale 0) + 0.15 - 15 = -14 + 0.15 - -15 = 15 + 0.15 - 1 = 0 + 0.15 - -9 = 9 + 0.15 - 14.14 = -13 + 0.15 - -16.60 = 16 + 0.15 - 0.15 = 0 + 0.15 - -0.01 = 0 + 0.15 - 0 = 0 + 0.15 - 0.00 = 0 + 0.15 - -0 = 0 + 0.15 - -0.00 = 0 + 0.15 - 15151324141414.412312232141241 = -15151324141414 + 0.15 - -132132245132134.1515123765412 = 132132245132134 + 0.15 - 141241241241241248267654747412 = -141241241241241248267654747411 + 0.15 - -149143276547656984948124912 = 149143276547656984948124912 + 0.15 - 0.1322135476547459213732911312 = 0 + 0.15 - -0.123912932193769965476541321 = 0 + +Number "-0.01" (scale 0) + -0.01 - 15 = -15 + -0.01 - -15 = 14 + -0.01 - 1 = -1 + -0.01 - -9 = 8 + -0.01 - 14.14 = -14 + -0.01 - -16.60 = 16 + -0.01 - 0.15 = 0 + -0.01 - -0.01 = 0 + -0.01 - 0 = 0 + -0.01 - 0.00 = 0 + -0.01 - -0 = 0 + -0.01 - -0.00 = 0 + -0.01 - 15151324141414.412312232141241 = -15151324141414 + -0.01 - -132132245132134.1515123765412 = 132132245132134 + -0.01 - 141241241241241248267654747412 = -141241241241241248267654747412 + -0.01 - -149143276547656984948124912 = 149143276547656984948124911 + -0.01 - 0.1322135476547459213732911312 = 0 + -0.01 - -0.123912932193769965476541321 = 0 + +Number "15" (scale 10) + 15 - 15 = 0.0000000000 + 15 - -15 = 30.0000000000 + 15 - 1 = 14.0000000000 + 15 - -9 = 24.0000000000 + 15 - 14.14 = 0.8600000000 + 15 - -16.60 = 31.6000000000 + 15 - 0.15 = 14.8500000000 + 15 - -0.01 = 15.0100000000 + 15 - 0 = 15.0000000000 + 15 - 0.00 = 15.0000000000 + 15 - -0 = 15.0000000000 + 15 - -0.00 = 15.0000000000 + 15 - 15151324141414.412312232141241 = -15151324141399.4123122321 + 15 - -132132245132134.1515123765412 = 132132245132149.1515123765 + 15 - 141241241241241248267654747412 = -141241241241241248267654747397.0000000000 + 15 - -149143276547656984948124912 = 149143276547656984948124927.0000000000 + 15 - 0.1322135476547459213732911312 = 14.8677864523 + 15 - -0.123912932193769965476541321 = 15.1239129321 + +Number "-15" (scale 10) + -15 - 15 = -30.0000000000 + -15 - -15 = 0.0000000000 + -15 - 1 = -16.0000000000 + -15 - -9 = -6.0000000000 + -15 - 14.14 = -29.1400000000 + -15 - -16.60 = 1.6000000000 + -15 - 0.15 = -15.1500000000 + -15 - -0.01 = -14.9900000000 + -15 - 0 = -15.0000000000 + -15 - 0.00 = -15.0000000000 + -15 - -0 = -15.0000000000 + -15 - -0.00 = -15.0000000000 + -15 - 15151324141414.412312232141241 = -15151324141429.4123122321 + -15 - -132132245132134.1515123765412 = 132132245132119.1515123765 + -15 - 141241241241241248267654747412 = -141241241241241248267654747427.0000000000 + -15 - -149143276547656984948124912 = 149143276547656984948124897.0000000000 + -15 - 0.1322135476547459213732911312 = -15.1322135476 + -15 - -0.123912932193769965476541321 = -14.8760870678 + +Number "1" (scale 10) + 1 - 15 = -14.0000000000 + 1 - -15 = 16.0000000000 + 1 - 1 = 0.0000000000 + 1 - -9 = 10.0000000000 + 1 - 14.14 = -13.1400000000 + 1 - -16.60 = 17.6000000000 + 1 - 0.15 = 0.8500000000 + 1 - -0.01 = 1.0100000000 + 1 - 0 = 1.0000000000 + 1 - 0.00 = 1.0000000000 + 1 - -0 = 1.0000000000 + 1 - -0.00 = 1.0000000000 + 1 - 15151324141414.412312232141241 = -15151324141413.4123122321 + 1 - -132132245132134.1515123765412 = 132132245132135.1515123765 + 1 - 141241241241241248267654747412 = -141241241241241248267654747411.0000000000 + 1 - -149143276547656984948124912 = 149143276547656984948124913.0000000000 + 1 - 0.1322135476547459213732911312 = 0.8677864523 + 1 - -0.123912932193769965476541321 = 1.1239129321 + +Number "-9" (scale 10) + -9 - 15 = -24.0000000000 + -9 - -15 = 6.0000000000 + -9 - 1 = -10.0000000000 + -9 - -9 = 0.0000000000 + -9 - 14.14 = -23.1400000000 + -9 - -16.60 = 7.6000000000 + -9 - 0.15 = -9.1500000000 + -9 - -0.01 = -8.9900000000 + -9 - 0 = -9.0000000000 + -9 - 0.00 = -9.0000000000 + -9 - -0 = -9.0000000000 + -9 - -0.00 = -9.0000000000 + -9 - 15151324141414.412312232141241 = -15151324141423.4123122321 + -9 - -132132245132134.1515123765412 = 132132245132125.1515123765 + -9 - 141241241241241248267654747412 = -141241241241241248267654747421.0000000000 + -9 - -149143276547656984948124912 = 149143276547656984948124903.0000000000 + -9 - 0.1322135476547459213732911312 = -9.1322135476 + -9 - -0.123912932193769965476541321 = -8.8760870678 + +Number "14.14" (scale 10) + 14.14 - 15 = -0.8600000000 + 14.14 - -15 = 29.1400000000 + 14.14 - 1 = 13.1400000000 + 14.14 - -9 = 23.1400000000 + 14.14 - 14.14 = 0.0000000000 + 14.14 - -16.60 = 30.7400000000 + 14.14 - 0.15 = 13.9900000000 + 14.14 - -0.01 = 14.1500000000 + 14.14 - 0 = 14.1400000000 + 14.14 - 0.00 = 14.1400000000 + 14.14 - -0 = 14.1400000000 + 14.14 - -0.00 = 14.1400000000 + 14.14 - 15151324141414.412312232141241 = -15151324141400.2723122321 + 14.14 - -132132245132134.1515123765412 = 132132245132148.2915123765 + 14.14 - 141241241241241248267654747412 = -141241241241241248267654747397.8600000000 + 14.14 - -149143276547656984948124912 = 149143276547656984948124926.1400000000 + 14.14 - 0.1322135476547459213732911312 = 14.0077864523 + 14.14 - -0.123912932193769965476541321 = 14.2639129321 + +Number "-16.60" (scale 10) +-16.60 - 15 = -31.6000000000 +-16.60 - -15 = -1.6000000000 +-16.60 - 1 = -17.6000000000 +-16.60 - -9 = -7.6000000000 +-16.60 - 14.14 = -30.7400000000 +-16.60 - -16.60 = 0.0000000000 +-16.60 - 0.15 = -16.7500000000 +-16.60 - -0.01 = -16.5900000000 +-16.60 - 0 = -16.6000000000 +-16.60 - 0.00 = -16.6000000000 +-16.60 - -0 = -16.6000000000 +-16.60 - -0.00 = -16.6000000000 +-16.60 - 15151324141414.412312232141241 = -15151324141431.0123122321 +-16.60 - -132132245132134.1515123765412 = 132132245132117.5515123765 +-16.60 - 141241241241241248267654747412 = -141241241241241248267654747428.6000000000 +-16.60 - -149143276547656984948124912 = 149143276547656984948124895.4000000000 +-16.60 - 0.1322135476547459213732911312 = -16.7322135476 +-16.60 - -0.123912932193769965476541321 = -16.4760870678 + +Number "0.15" (scale 10) + 0.15 - 15 = -14.8500000000 + 0.15 - -15 = 15.1500000000 + 0.15 - 1 = -0.8500000000 + 0.15 - -9 = 9.1500000000 + 0.15 - 14.14 = -13.9900000000 + 0.15 - -16.60 = 16.7500000000 + 0.15 - 0.15 = 0.0000000000 + 0.15 - -0.01 = 0.1600000000 + 0.15 - 0 = 0.1500000000 + 0.15 - 0.00 = 0.1500000000 + 0.15 - -0 = 0.1500000000 + 0.15 - -0.00 = 0.1500000000 + 0.15 - 15151324141414.412312232141241 = -15151324141414.2623122321 + 0.15 - -132132245132134.1515123765412 = 132132245132134.3015123765 + 0.15 - 141241241241241248267654747412 = -141241241241241248267654747411.8500000000 + 0.15 - -149143276547656984948124912 = 149143276547656984948124912.1500000000 + 0.15 - 0.1322135476547459213732911312 = 0.0177864523 + 0.15 - -0.123912932193769965476541321 = 0.2739129321 + +Number "-0.01" (scale 10) + -0.01 - 15 = -15.0100000000 + -0.01 - -15 = 14.9900000000 + -0.01 - 1 = -1.0100000000 + -0.01 - -9 = 8.9900000000 + -0.01 - 14.14 = -14.1500000000 + -0.01 - -16.60 = 16.5900000000 + -0.01 - 0.15 = -0.1600000000 + -0.01 - -0.01 = 0.0000000000 + -0.01 - 0 = -0.0100000000 + -0.01 - 0.00 = -0.0100000000 + -0.01 - -0 = -0.0100000000 + -0.01 - -0.00 = -0.0100000000 + -0.01 - 15151324141414.412312232141241 = -15151324141414.4223122321 + -0.01 - -132132245132134.1515123765412 = 132132245132134.1415123765 + -0.01 - 141241241241241248267654747412 = -141241241241241248267654747412.0100000000 + -0.01 - -149143276547656984948124912 = 149143276547656984948124911.9900000000 + -0.01 - 0.1322135476547459213732911312 = -0.1422135476 + -0.01 - -0.123912932193769965476541321 = 0.1139129321 \ No newline at end of file diff --git a/ext/bcmath/tests/bcsub_large_numbers.phpt b/ext/bcmath/tests/bcsub_large_numbers.phpt new file mode 100644 index 0000000000000..1d412919692f0 --- /dev/null +++ b/ext/bcmath/tests/bcsub_large_numbers.phpt @@ -0,0 +1,264 @@ +--TEST-- +bcsub() function - tests with large numbers +--EXTENSIONS-- +bcmath +--INI-- +bcmath.scale=0 +--FILE-- + +--EXPECT-- +Number "15151324141414.412312232141241" (scale 0) +15151324141414.412312232141241 + 15151324141414.412312232141241 = 0 +15151324141414.412312232141241 + -132132245132134.1515123765412 = 147283569273548 +15151324141414.412312232141241 + 141241241241241248267654747412 = -141241241241241233116330605997 +15151324141414.412312232141241 + -149143276547656984948124912 = 149143276547672136272266326 +15151324141414.412312232141241 + 0.1322135476547459213732911312 = 15151324141414 +15151324141414.412312232141241 + -0.123912932193769965476541321 = 15151324141414 +15151324141414.412312232141241 + 0 = 15151324141414 +15151324141414.412312232141241 + 0.00 = 15151324141414 +15151324141414.412312232141241 + -0 = 15151324141414 +15151324141414.412312232141241 + -0.00 = 15151324141414 +15151324141414.412312232141241 + 15 = 15151324141399 +15151324141414.412312232141241 + -15 = 15151324141429 +15151324141414.412312232141241 + 1 = 15151324141413 +15151324141414.412312232141241 + -9 = 15151324141423 +15151324141414.412312232141241 + 14.14 = 15151324141400 +15151324141414.412312232141241 + -16.60 = 15151324141431 +15151324141414.412312232141241 + 0.15 = 15151324141414 +15151324141414.412312232141241 + -0.01 = 15151324141414 + +Number "-132132245132134.1515123765412" (scale 0) +-132132245132134.1515123765412 + 15151324141414.412312232141241 = -147283569273548 +-132132245132134.1515123765412 + -132132245132134.1515123765412 = 0 +-132132245132134.1515123765412 + 141241241241241248267654747412 = -141241241241241380399899879546 +-132132245132134.1515123765412 + -149143276547656984948124912 = 149143276547524852702992777 +-132132245132134.1515123765412 + 0.1322135476547459213732911312 = -132132245132134 +-132132245132134.1515123765412 + -0.123912932193769965476541321 = -132132245132134 +-132132245132134.1515123765412 + 0 = -132132245132134 +-132132245132134.1515123765412 + 0.00 = -132132245132134 +-132132245132134.1515123765412 + -0 = -132132245132134 +-132132245132134.1515123765412 + -0.00 = -132132245132134 +-132132245132134.1515123765412 + 15 = -132132245132149 +-132132245132134.1515123765412 + -15 = -132132245132119 +-132132245132134.1515123765412 + 1 = -132132245132135 +-132132245132134.1515123765412 + -9 = -132132245132125 +-132132245132134.1515123765412 + 14.14 = -132132245132148 +-132132245132134.1515123765412 + -16.60 = -132132245132117 +-132132245132134.1515123765412 + 0.15 = -132132245132134 +-132132245132134.1515123765412 + -0.01 = -132132245132134 + +Number "141241241241241248267654747412" (scale 0) +141241241241241248267654747412 + 15151324141414.412312232141241 = 141241241241241233116330605997 +141241241241241248267654747412 + -132132245132134.1515123765412 = 141241241241241380399899879546 +141241241241241248267654747412 + 141241241241241248267654747412 = 0 +141241241241241248267654747412 + -149143276547656984948124912 = 141390384517788905252602872324 +141241241241241248267654747412 + 0.1322135476547459213732911312 = 141241241241241248267654747411 +141241241241241248267654747412 + -0.123912932193769965476541321 = 141241241241241248267654747412 +141241241241241248267654747412 + 0 = 141241241241241248267654747412 +141241241241241248267654747412 + 0.00 = 141241241241241248267654747412 +141241241241241248267654747412 + -0 = 141241241241241248267654747412 +141241241241241248267654747412 + -0.00 = 141241241241241248267654747412 +141241241241241248267654747412 + 15 = 141241241241241248267654747397 +141241241241241248267654747412 + -15 = 141241241241241248267654747427 +141241241241241248267654747412 + 1 = 141241241241241248267654747411 +141241241241241248267654747412 + -9 = 141241241241241248267654747421 +141241241241241248267654747412 + 14.14 = 141241241241241248267654747397 +141241241241241248267654747412 + -16.60 = 141241241241241248267654747428 +141241241241241248267654747412 + 0.15 = 141241241241241248267654747411 +141241241241241248267654747412 + -0.01 = 141241241241241248267654747412 + +Number "-149143276547656984948124912" (scale 0) +-149143276547656984948124912 + 15151324141414.412312232141241 = -149143276547672136272266326 +-149143276547656984948124912 + -132132245132134.1515123765412 = -149143276547524852702992777 +-149143276547656984948124912 + 141241241241241248267654747412 = -141390384517788905252602872324 +-149143276547656984948124912 + -149143276547656984948124912 = 0 +-149143276547656984948124912 + 0.1322135476547459213732911312 = -149143276547656984948124912 +-149143276547656984948124912 + -0.123912932193769965476541321 = -149143276547656984948124911 +-149143276547656984948124912 + 0 = -149143276547656984948124912 +-149143276547656984948124912 + 0.00 = -149143276547656984948124912 +-149143276547656984948124912 + -0 = -149143276547656984948124912 +-149143276547656984948124912 + -0.00 = -149143276547656984948124912 +-149143276547656984948124912 + 15 = -149143276547656984948124927 +-149143276547656984948124912 + -15 = -149143276547656984948124897 +-149143276547656984948124912 + 1 = -149143276547656984948124913 +-149143276547656984948124912 + -9 = -149143276547656984948124903 +-149143276547656984948124912 + 14.14 = -149143276547656984948124926 +-149143276547656984948124912 + -16.60 = -149143276547656984948124895 +-149143276547656984948124912 + 0.15 = -149143276547656984948124912 +-149143276547656984948124912 + -0.01 = -149143276547656984948124911 + +Number "0.1322135476547459213732911312" (scale 0) +0.1322135476547459213732911312 + 15151324141414.412312232141241 = -15151324141414 +0.1322135476547459213732911312 + -132132245132134.1515123765412 = 132132245132134 +0.1322135476547459213732911312 + 141241241241241248267654747412 = -141241241241241248267654747411 +0.1322135476547459213732911312 + -149143276547656984948124912 = 149143276547656984948124912 +0.1322135476547459213732911312 + 0.1322135476547459213732911312 = 0 +0.1322135476547459213732911312 + -0.123912932193769965476541321 = 0 +0.1322135476547459213732911312 + 0 = 0 +0.1322135476547459213732911312 + 0.00 = 0 +0.1322135476547459213732911312 + -0 = 0 +0.1322135476547459213732911312 + -0.00 = 0 +0.1322135476547459213732911312 + 15 = -14 +0.1322135476547459213732911312 + -15 = 15 +0.1322135476547459213732911312 + 1 = 0 +0.1322135476547459213732911312 + -9 = 9 +0.1322135476547459213732911312 + 14.14 = -14 +0.1322135476547459213732911312 + -16.60 = 16 +0.1322135476547459213732911312 + 0.15 = 0 +0.1322135476547459213732911312 + -0.01 = 0 + +Number "-0.123912932193769965476541321" (scale 0) +-0.123912932193769965476541321 + 15151324141414.412312232141241 = -15151324141414 +-0.123912932193769965476541321 + -132132245132134.1515123765412 = 132132245132134 +-0.123912932193769965476541321 + 141241241241241248267654747412 = -141241241241241248267654747412 +-0.123912932193769965476541321 + -149143276547656984948124912 = 149143276547656984948124911 +-0.123912932193769965476541321 + 0.1322135476547459213732911312 = 0 +-0.123912932193769965476541321 + -0.123912932193769965476541321 = 0 +-0.123912932193769965476541321 + 0 = 0 +-0.123912932193769965476541321 + 0.00 = 0 +-0.123912932193769965476541321 + -0 = 0 +-0.123912932193769965476541321 + -0.00 = 0 +-0.123912932193769965476541321 + 15 = -15 +-0.123912932193769965476541321 + -15 = 14 +-0.123912932193769965476541321 + 1 = -1 +-0.123912932193769965476541321 + -9 = 8 +-0.123912932193769965476541321 + 14.14 = -14 +-0.123912932193769965476541321 + -16.60 = 16 +-0.123912932193769965476541321 + 0.15 = 0 +-0.123912932193769965476541321 + -0.01 = 0 + +Number "15151324141414.412312232141241" (scale 10) +15151324141414.412312232141241 + 15151324141414.412312232141241 = 0.0000000000 +15151324141414.412312232141241 + -132132245132134.1515123765412 = 147283569273548.5638246086 +15151324141414.412312232141241 + 141241241241241248267654747412 = -141241241241241233116330605997.5876877678 +15151324141414.412312232141241 + -149143276547656984948124912 = 149143276547672136272266326.4123122321 +15151324141414.412312232141241 + 0.1322135476547459213732911312 = 15151324141414.2800986844 +15151324141414.412312232141241 + -0.123912932193769965476541321 = 15151324141414.5362251643 +15151324141414.412312232141241 + 0 = 15151324141414.4123122321 +15151324141414.412312232141241 + 0.00 = 15151324141414.4123122321 +15151324141414.412312232141241 + -0 = 15151324141414.4123122321 +15151324141414.412312232141241 + -0.00 = 15151324141414.4123122321 +15151324141414.412312232141241 + 15 = 15151324141399.4123122321 +15151324141414.412312232141241 + -15 = 15151324141429.4123122321 +15151324141414.412312232141241 + 1 = 15151324141413.4123122321 +15151324141414.412312232141241 + -9 = 15151324141423.4123122321 +15151324141414.412312232141241 + 14.14 = 15151324141400.2723122321 +15151324141414.412312232141241 + -16.60 = 15151324141431.0123122321 +15151324141414.412312232141241 + 0.15 = 15151324141414.2623122321 +15151324141414.412312232141241 + -0.01 = 15151324141414.4223122321 + +Number "-132132245132134.1515123765412" (scale 10) +-132132245132134.1515123765412 + 15151324141414.412312232141241 = -147283569273548.5638246086 +-132132245132134.1515123765412 + -132132245132134.1515123765412 = 0.0000000000 +-132132245132134.1515123765412 + 141241241241241248267654747412 = -141241241241241380399899879546.1515123765 +-132132245132134.1515123765412 + -149143276547656984948124912 = 149143276547524852702992777.8484876234 +-132132245132134.1515123765412 + 0.1322135476547459213732911312 = -132132245132134.2837259241 +-132132245132134.1515123765412 + -0.123912932193769965476541321 = -132132245132134.0275994443 +-132132245132134.1515123765412 + 0 = -132132245132134.1515123765 +-132132245132134.1515123765412 + 0.00 = -132132245132134.1515123765 +-132132245132134.1515123765412 + -0 = -132132245132134.1515123765 +-132132245132134.1515123765412 + -0.00 = -132132245132134.1515123765 +-132132245132134.1515123765412 + 15 = -132132245132149.1515123765 +-132132245132134.1515123765412 + -15 = -132132245132119.1515123765 +-132132245132134.1515123765412 + 1 = -132132245132135.1515123765 +-132132245132134.1515123765412 + -9 = -132132245132125.1515123765 +-132132245132134.1515123765412 + 14.14 = -132132245132148.2915123765 +-132132245132134.1515123765412 + -16.60 = -132132245132117.5515123765 +-132132245132134.1515123765412 + 0.15 = -132132245132134.3015123765 +-132132245132134.1515123765412 + -0.01 = -132132245132134.1415123765 + +Number "141241241241241248267654747412" (scale 10) +141241241241241248267654747412 + 15151324141414.412312232141241 = 141241241241241233116330605997.5876877678 +141241241241241248267654747412 + -132132245132134.1515123765412 = 141241241241241380399899879546.1515123765 +141241241241241248267654747412 + 141241241241241248267654747412 = 0.0000000000 +141241241241241248267654747412 + -149143276547656984948124912 = 141390384517788905252602872324.0000000000 +141241241241241248267654747412 + 0.1322135476547459213732911312 = 141241241241241248267654747411.8677864523 +141241241241241248267654747412 + -0.123912932193769965476541321 = 141241241241241248267654747412.1239129321 +141241241241241248267654747412 + 0 = 141241241241241248267654747412.0000000000 +141241241241241248267654747412 + 0.00 = 141241241241241248267654747412.0000000000 +141241241241241248267654747412 + -0 = 141241241241241248267654747412.0000000000 +141241241241241248267654747412 + -0.00 = 141241241241241248267654747412.0000000000 +141241241241241248267654747412 + 15 = 141241241241241248267654747397.0000000000 +141241241241241248267654747412 + -15 = 141241241241241248267654747427.0000000000 +141241241241241248267654747412 + 1 = 141241241241241248267654747411.0000000000 +141241241241241248267654747412 + -9 = 141241241241241248267654747421.0000000000 +141241241241241248267654747412 + 14.14 = 141241241241241248267654747397.8600000000 +141241241241241248267654747412 + -16.60 = 141241241241241248267654747428.6000000000 +141241241241241248267654747412 + 0.15 = 141241241241241248267654747411.8500000000 +141241241241241248267654747412 + -0.01 = 141241241241241248267654747412.0100000000 + +Number "-149143276547656984948124912" (scale 10) +-149143276547656984948124912 + 15151324141414.412312232141241 = -149143276547672136272266326.4123122321 +-149143276547656984948124912 + -132132245132134.1515123765412 = -149143276547524852702992777.8484876234 +-149143276547656984948124912 + 141241241241241248267654747412 = -141390384517788905252602872324.0000000000 +-149143276547656984948124912 + -149143276547656984948124912 = 0.0000000000 +-149143276547656984948124912 + 0.1322135476547459213732911312 = -149143276547656984948124912.1322135476 +-149143276547656984948124912 + -0.123912932193769965476541321 = -149143276547656984948124911.8760870678 +-149143276547656984948124912 + 0 = -149143276547656984948124912.0000000000 +-149143276547656984948124912 + 0.00 = -149143276547656984948124912.0000000000 +-149143276547656984948124912 + -0 = -149143276547656984948124912.0000000000 +-149143276547656984948124912 + -0.00 = -149143276547656984948124912.0000000000 +-149143276547656984948124912 + 15 = -149143276547656984948124927.0000000000 +-149143276547656984948124912 + -15 = -149143276547656984948124897.0000000000 +-149143276547656984948124912 + 1 = -149143276547656984948124913.0000000000 +-149143276547656984948124912 + -9 = -149143276547656984948124903.0000000000 +-149143276547656984948124912 + 14.14 = -149143276547656984948124926.1400000000 +-149143276547656984948124912 + -16.60 = -149143276547656984948124895.4000000000 +-149143276547656984948124912 + 0.15 = -149143276547656984948124912.1500000000 +-149143276547656984948124912 + -0.01 = -149143276547656984948124911.9900000000 + +Number "0.1322135476547459213732911312" (scale 10) +0.1322135476547459213732911312 + 15151324141414.412312232141241 = -15151324141414.2800986844 +0.1322135476547459213732911312 + -132132245132134.1515123765412 = 132132245132134.2837259241 +0.1322135476547459213732911312 + 141241241241241248267654747412 = -141241241241241248267654747411.8677864523 +0.1322135476547459213732911312 + -149143276547656984948124912 = 149143276547656984948124912.1322135476 +0.1322135476547459213732911312 + 0.1322135476547459213732911312 = 0.0000000000 +0.1322135476547459213732911312 + -0.123912932193769965476541321 = 0.2561264798 +0.1322135476547459213732911312 + 0 = 0.1322135476 +0.1322135476547459213732911312 + 0.00 = 0.1322135476 +0.1322135476547459213732911312 + -0 = 0.1322135476 +0.1322135476547459213732911312 + -0.00 = 0.1322135476 +0.1322135476547459213732911312 + 15 = -14.8677864523 +0.1322135476547459213732911312 + -15 = 15.1322135476 +0.1322135476547459213732911312 + 1 = -0.8677864523 +0.1322135476547459213732911312 + -9 = 9.1322135476 +0.1322135476547459213732911312 + 14.14 = -14.0077864523 +0.1322135476547459213732911312 + -16.60 = 16.7322135476 +0.1322135476547459213732911312 + 0.15 = -0.0177864523 +0.1322135476547459213732911312 + -0.01 = 0.1422135476 + +Number "-0.123912932193769965476541321" (scale 10) +-0.123912932193769965476541321 + 15151324141414.412312232141241 = -15151324141414.5362251643 +-0.123912932193769965476541321 + -132132245132134.1515123765412 = 132132245132134.0275994443 +-0.123912932193769965476541321 + 141241241241241248267654747412 = -141241241241241248267654747412.1239129321 +-0.123912932193769965476541321 + -149143276547656984948124912 = 149143276547656984948124911.8760870678 +-0.123912932193769965476541321 + 0.1322135476547459213732911312 = -0.2561264798 +-0.123912932193769965476541321 + -0.123912932193769965476541321 = 0.0000000000 +-0.123912932193769965476541321 + 0 = -0.1239129321 +-0.123912932193769965476541321 + 0.00 = -0.1239129321 +-0.123912932193769965476541321 + -0 = -0.1239129321 +-0.123912932193769965476541321 + -0.00 = -0.1239129321 +-0.123912932193769965476541321 + 15 = -15.1239129321 +-0.123912932193769965476541321 + -15 = 14.8760870678 +-0.123912932193769965476541321 + 1 = -1.1239129321 +-0.123912932193769965476541321 + -9 = 8.8760870678 +-0.123912932193769965476541321 + 14.14 = -14.2639129321 +-0.123912932193769965476541321 + -16.60 = 16.4760870678 +-0.123912932193769965476541321 + 0.15 = -0.2739129321 +-0.123912932193769965476541321 + -0.01 = -0.1139129321 \ No newline at end of file diff --git a/ext/bcmath/tests/bcsub_zero.phpt b/ext/bcmath/tests/bcsub_zero.phpt new file mode 100644 index 0000000000000..bb59db887e9cb --- /dev/null +++ b/ext/bcmath/tests/bcsub_zero.phpt @@ -0,0 +1,184 @@ +--TEST-- +bcsub() function - tests with number zero +--EXTENSIONS-- +bcmath +--INI-- +bcmath.scale=0 +--FILE-- + +--EXPECT-- +Number "0" (scale 0) + 0 - 0 = 0 + 0 - 0.00 = 0 + 0 - -0 = 0 + 0 - -0.00 = 0 + 0 - 15 = -15 + 0 - -15 = 15 + 0 - 1 = -1 + 0 - -9 = 9 + 0 - 14.14 = -14 + 0 - -16.60 = 16 + 0 - 0.15 = 0 + 0 - -0.01 = 0 + 0 - 15151324141414.412312232141241 = -15151324141414 + 0 - -132132245132134.1515123765412 = 132132245132134 + 0 - 141241241241241248267654747412 = -141241241241241248267654747412 + 0 - -149143276547656984948124912 = 149143276547656984948124912 + 0 - 0.1322135476547459213732911312 = 0 + 0 - -0.123912932193769965476541321 = 0 + +Number "0.00" (scale 0) + 0.00 - 0 = 0 + 0.00 - 0.00 = 0 + 0.00 - -0 = 0 + 0.00 - -0.00 = 0 + 0.00 - 15 = -15 + 0.00 - -15 = 15 + 0.00 - 1 = -1 + 0.00 - -9 = 9 + 0.00 - 14.14 = -14 + 0.00 - -16.60 = 16 + 0.00 - 0.15 = 0 + 0.00 - -0.01 = 0 + 0.00 - 15151324141414.412312232141241 = -15151324141414 + 0.00 - -132132245132134.1515123765412 = 132132245132134 + 0.00 - 141241241241241248267654747412 = -141241241241241248267654747412 + 0.00 - -149143276547656984948124912 = 149143276547656984948124912 + 0.00 - 0.1322135476547459213732911312 = 0 + 0.00 - -0.123912932193769965476541321 = 0 + +Number "-0" (scale 0) + -0 - 0 = 0 + -0 - 0.00 = 0 + -0 - -0 = 0 + -0 - -0.00 = 0 + -0 - 15 = -15 + -0 - -15 = 15 + -0 - 1 = -1 + -0 - -9 = 9 + -0 - 14.14 = -14 + -0 - -16.60 = 16 + -0 - 0.15 = 0 + -0 - -0.01 = 0 + -0 - 15151324141414.412312232141241 = -15151324141414 + -0 - -132132245132134.1515123765412 = 132132245132134 + -0 - 141241241241241248267654747412 = -141241241241241248267654747412 + -0 - -149143276547656984948124912 = 149143276547656984948124912 + -0 - 0.1322135476547459213732911312 = 0 + -0 - -0.123912932193769965476541321 = 0 + +Number "-0.00" (scale 0) + -0.00 - 0 = 0 + -0.00 - 0.00 = 0 + -0.00 - -0 = 0 + -0.00 - -0.00 = 0 + -0.00 - 15 = -15 + -0.00 - -15 = 15 + -0.00 - 1 = -1 + -0.00 - -9 = 9 + -0.00 - 14.14 = -14 + -0.00 - -16.60 = 16 + -0.00 - 0.15 = 0 + -0.00 - -0.01 = 0 + -0.00 - 15151324141414.412312232141241 = -15151324141414 + -0.00 - -132132245132134.1515123765412 = 132132245132134 + -0.00 - 141241241241241248267654747412 = -141241241241241248267654747412 + -0.00 - -149143276547656984948124912 = 149143276547656984948124912 + -0.00 - 0.1322135476547459213732911312 = 0 + -0.00 - -0.123912932193769965476541321 = 0 + +Number "0" (scale 10) + 0 - 0 = 0.0000000000 + 0 - 0.00 = 0.0000000000 + 0 - -0 = 0.0000000000 + 0 - -0.00 = 0.0000000000 + 0 - 15 = -15.0000000000 + 0 - -15 = 15.0000000000 + 0 - 1 = -1.0000000000 + 0 - -9 = 9.0000000000 + 0 - 14.14 = -14.1400000000 + 0 - -16.60 = 16.6000000000 + 0 - 0.15 = -0.1500000000 + 0 - -0.01 = 0.0100000000 + 0 - 15151324141414.412312232141241 = -15151324141414.4123122321 + 0 - -132132245132134.1515123765412 = 132132245132134.1515123765 + 0 - 141241241241241248267654747412 = -141241241241241248267654747412.0000000000 + 0 - -149143276547656984948124912 = 149143276547656984948124912.0000000000 + 0 - 0.1322135476547459213732911312 = -0.1322135476 + 0 - -0.123912932193769965476541321 = 0.1239129321 + +Number "0.00" (scale 10) + 0.00 - 0 = 0.0000000000 + 0.00 - 0.00 = 0.0000000000 + 0.00 - -0 = 0.0000000000 + 0.00 - -0.00 = 0.0000000000 + 0.00 - 15 = -15.0000000000 + 0.00 - -15 = 15.0000000000 + 0.00 - 1 = -1.0000000000 + 0.00 - -9 = 9.0000000000 + 0.00 - 14.14 = -14.1400000000 + 0.00 - -16.60 = 16.6000000000 + 0.00 - 0.15 = -0.1500000000 + 0.00 - -0.01 = 0.0100000000 + 0.00 - 15151324141414.412312232141241 = -15151324141414.4123122321 + 0.00 - -132132245132134.1515123765412 = 132132245132134.1515123765 + 0.00 - 141241241241241248267654747412 = -141241241241241248267654747412.0000000000 + 0.00 - -149143276547656984948124912 = 149143276547656984948124912.0000000000 + 0.00 - 0.1322135476547459213732911312 = -0.1322135476 + 0.00 - -0.123912932193769965476541321 = 0.1239129321 + +Number "-0" (scale 10) + -0 - 0 = 0.0000000000 + -0 - 0.00 = 0.0000000000 + -0 - -0 = 0.0000000000 + -0 - -0.00 = 0.0000000000 + -0 - 15 = -15.0000000000 + -0 - -15 = 15.0000000000 + -0 - 1 = -1.0000000000 + -0 - -9 = 9.0000000000 + -0 - 14.14 = -14.1400000000 + -0 - -16.60 = 16.6000000000 + -0 - 0.15 = -0.1500000000 + -0 - -0.01 = 0.0100000000 + -0 - 15151324141414.412312232141241 = -15151324141414.4123122321 + -0 - -132132245132134.1515123765412 = 132132245132134.1515123765 + -0 - 141241241241241248267654747412 = -141241241241241248267654747412.0000000000 + -0 - -149143276547656984948124912 = 149143276547656984948124912.0000000000 + -0 - 0.1322135476547459213732911312 = -0.1322135476 + -0 - -0.123912932193769965476541321 = 0.1239129321 + +Number "-0.00" (scale 10) + -0.00 - 0 = 0.0000000000 + -0.00 - 0.00 = 0.0000000000 + -0.00 - -0 = 0.0000000000 + -0.00 - -0.00 = 0.0000000000 + -0.00 - 15 = -15.0000000000 + -0.00 - -15 = 15.0000000000 + -0.00 - 1 = -1.0000000000 + -0.00 - -9 = 9.0000000000 + -0.00 - 14.14 = -14.1400000000 + -0.00 - -16.60 = 16.6000000000 + -0.00 - 0.15 = -0.1500000000 + -0.00 - -0.01 = 0.0100000000 + -0.00 - 15151324141414.412312232141241 = -15151324141414.4123122321 + -0.00 - -132132245132134.1515123765412 = 132132245132134.1515123765 + -0.00 - 141241241241241248267654747412 = -141241241241241248267654747412.0000000000 + -0.00 - -149143276547656984948124912 = 149143276547656984948124912.0000000000 + -0.00 - 0.1322135476547459213732911312 = -0.1322135476 + -0.00 - -0.123912932193769965476541321 = 0.1239129321 \ No newline at end of file From a5a312d63b0529a0d2895ab9521c932cfa37a96a Mon Sep 17 00:00:00 2001 From: Jorg Adam Sowa Date: Thu, 29 Jun 2023 00:01:14 +0200 Subject: [PATCH 04/15] Removed simple tests which are covered already --- ext/bcmath/tests/bcadd.phpt | 20 -------------------- ext/bcmath/tests/bcdiv.phpt | 18 ------------------ ext/bcmath/tests/bcmul.phpt | 20 -------------------- ext/bcmath/tests/bcsub.phpt | 18 ------------------ 4 files changed, 76 deletions(-) delete mode 100644 ext/bcmath/tests/bcadd.phpt delete mode 100644 ext/bcmath/tests/bcdiv.phpt delete mode 100644 ext/bcmath/tests/bcmul.phpt delete mode 100644 ext/bcmath/tests/bcsub.phpt diff --git a/ext/bcmath/tests/bcadd.phpt b/ext/bcmath/tests/bcadd.phpt deleted file mode 100644 index b5a77da513a48..0000000000000 --- a/ext/bcmath/tests/bcadd.phpt +++ /dev/null @@ -1,20 +0,0 @@ ---TEST-- -bcadd() function - basic tests ---EXTENSIONS-- -bcmath ---INI-- -bcmath.scale=0 ---FILE-- - ---EXPECT-- -3 -4.0000 --6.0000 --4.0000 -8728932003911564969352217864684.00 diff --git a/ext/bcmath/tests/bcdiv.phpt b/ext/bcmath/tests/bcdiv.phpt deleted file mode 100644 index 042f0cfb127b7..0000000000000 --- a/ext/bcmath/tests/bcdiv.phpt +++ /dev/null @@ -1,18 +0,0 @@ ---TEST-- -bcdiv() function - basic tests ---EXTENSIONS-- -bcmath ---INI-- -bcmath.scale=0 ---FILE-- - ---EXPECT-- -0 -0.50 --0.2000 -4526580661.75 diff --git a/ext/bcmath/tests/bcmul.phpt b/ext/bcmath/tests/bcmul.phpt deleted file mode 100644 index 2e2a8a7a11c32..0000000000000 --- a/ext/bcmath/tests/bcmul.phpt +++ /dev/null @@ -1,20 +0,0 @@ ---TEST-- -bcmul() function ---EXTENSIONS-- -bcmath ---INI-- -bcmath.scale=0 ---FILE-- - ---EXPECT-- -2 --15 -12193263111263526900 -3.75 -3.97 diff --git a/ext/bcmath/tests/bcsub.phpt b/ext/bcmath/tests/bcsub.phpt deleted file mode 100644 index 3d0765bef372f..0000000000000 --- a/ext/bcmath/tests/bcsub.phpt +++ /dev/null @@ -1,18 +0,0 @@ ---TEST-- -bcsub() function ---EXTENSIONS-- -bcmath ---INI-- -bcmath.scale=0 ---FILE-- - ---EXPECT-- --1 --6.0000 --1.00 -8728932000054820705086578390258.00 From fcccfb62c5d8c450743daa46f75dd9263b212bc1 Mon Sep 17 00:00:00 2001 From: Jorg Adam Sowa Date: Fri, 30 Jun 2023 00:03:05 +0200 Subject: [PATCH 05/15] Improved the code structure and the naming of the tests --- .../tests/{bcadd_basic.phpt => bcadd.phpt} | 14 +- ext/bcmath/tests/bcadd_large_numbers.phpt | 14 +- ext/bcmath/tests/bcadd_zero.phpt | 14 +- .../tests/{bcdiv_basic.phpt => bcdiv.phpt} | 14 +- ext/bcmath/tests/bcdiv_large_numbers.phpt | 12 +- ext/bcmath/tests/bcdiv_zero.phpt | 14 +- ext/bcmath/tests/bcmod.phpt | 279 +++++++++++- ext/bcmath/tests/bcmod_large_numbers.phpt | 14 +- ext/bcmath/tests/bcmod_zero.phpt | 14 +- .../tests/{bcmul_basic.phpt => bcmul.phpt} | 14 +- ext/bcmath/tests/bcmul_large_numbers.phpt | 14 +- ext/bcmath/tests/bcmul_zero.phpt | 48 +- ext/bcmath/tests/bcpow.phpt | 423 +++++++++++++++++- ext/bcmath/tests/bcpow_basic.phpt | 383 ---------------- .../tests/bcpowmod_negative_exponent.phpt | 5 - ext/bcmath/tests/bcsqrt.phpt | 6 +- ext/bcmath/tests/bcsqrt_variation001.phpt | 12 - .../tests/{bcsub_basic.phpt => bcsub.phpt} | 14 +- ext/bcmath/tests/bcsub_large_numbers.phpt | 14 +- ext/bcmath/tests/bcsub_zero.phpt | 14 +- 20 files changed, 815 insertions(+), 521 deletions(-) rename ext/bcmath/tests/{bcadd_basic.phpt => bcadd.phpt} (96%) rename ext/bcmath/tests/{bcdiv_basic.phpt => bcdiv.phpt} (94%) rename ext/bcmath/tests/{bcmul_basic.phpt => bcmul.phpt} (96%) delete mode 100644 ext/bcmath/tests/bcpow_basic.phpt delete mode 100644 ext/bcmath/tests/bcsqrt_variation001.phpt rename ext/bcmath/tests/{bcsub_basic.phpt => bcsub.phpt} (96%) diff --git a/ext/bcmath/tests/bcadd_basic.phpt b/ext/bcmath/tests/bcadd.phpt similarity index 96% rename from ext/bcmath/tests/bcadd_basic.phpt rename to ext/bcmath/tests/bcadd.phpt index 7f33cc2174030..74ab959b44449 100644 --- a/ext/bcmath/tests/bcadd_basic.phpt +++ b/ext/bcmath/tests/bcadd.phpt @@ -1,5 +1,5 @@ --TEST-- -bcadd() function - extended basic tests +bcadd() function --EXTENSIONS-- bcmath --INI-- @@ -7,15 +7,15 @@ bcmath.scale=0 --FILE-- --EXPECT-- -1 --1 -1459434331351930289678 -3.5 -356 +Number "15" (scale 0) + 15 mod 15 = 0 + 15 mod -15 = 0 + 15 mod 1 = 0 + 15 mod -9 = 6 + 15 mod 14.14 = 0 + 15 mod -16.60 = 15 + 15 mod 0.15 = 0 + 15 mod -0.01 = 0 + 15 mod 15151324141414.412312232141241 = 15 + 15 mod -132132245132134.1515123765412 = 15 + 15 mod 141241241241241248267654747412 = 15 + 15 mod -149143276547656984948124912 = 15 + 15 mod 0.1322135476547459213732911312 = 0 + 15 mod -0.123912932193769965476541321 = 0 + +Number "-15" (scale 0) + -15 mod 15 = 0 + -15 mod -15 = 0 + -15 mod 1 = 0 + -15 mod -9 = -6 + -15 mod 14.14 = 0 + -15 mod -16.60 = -15 + -15 mod 0.15 = 0 + -15 mod -0.01 = 0 + -15 mod 15151324141414.412312232141241 = -15 + -15 mod -132132245132134.1515123765412 = -15 + -15 mod 141241241241241248267654747412 = -15 + -15 mod -149143276547656984948124912 = -15 + -15 mod 0.1322135476547459213732911312 = 0 + -15 mod -0.123912932193769965476541321 = 0 + +Number "1" (scale 0) + 1 mod 15 = 1 + 1 mod -15 = 1 + 1 mod 1 = 0 + 1 mod -9 = 1 + 1 mod 14.14 = 1 + 1 mod -16.60 = 1 + 1 mod 0.15 = 0 + 1 mod -0.01 = 0 + 1 mod 15151324141414.412312232141241 = 1 + 1 mod -132132245132134.1515123765412 = 1 + 1 mod 141241241241241248267654747412 = 1 + 1 mod -149143276547656984948124912 = 1 + 1 mod 0.1322135476547459213732911312 = 0 + 1 mod -0.123912932193769965476541321 = 0 + +Number "-9" (scale 0) + -9 mod 15 = -9 + -9 mod -15 = -9 + -9 mod 1 = 0 + -9 mod -9 = 0 + -9 mod 14.14 = -9 + -9 mod -16.60 = -9 + -9 mod 0.15 = 0 + -9 mod -0.01 = 0 + -9 mod 15151324141414.412312232141241 = -9 + -9 mod -132132245132134.1515123765412 = -9 + -9 mod 141241241241241248267654747412 = -9 + -9 mod -149143276547656984948124912 = -9 + -9 mod 0.1322135476547459213732911312 = 0 + -9 mod -0.123912932193769965476541321 = 0 + +Number "14.14" (scale 0) + 14.14 mod 15 = 14 + 14.14 mod -15 = 14 + 14.14 mod 1 = 0 + 14.14 mod -9 = 5 + 14.14 mod 14.14 = 0 + 14.14 mod -16.60 = 14 + 14.14 mod 0.15 = 0 + 14.14 mod -0.01 = 0 + 14.14 mod 15151324141414.412312232141241 = 14 + 14.14 mod -132132245132134.1515123765412 = 14 + 14.14 mod 141241241241241248267654747412 = 14 + 14.14 mod -149143276547656984948124912 = 14 + 14.14 mod 0.1322135476547459213732911312 = 0 + 14.14 mod -0.123912932193769965476541321 = 0 + +Number "-16.60" (scale 0) +-16.60 mod 15 = -1 +-16.60 mod -15 = -1 +-16.60 mod 1 = 0 +-16.60 mod -9 = -7 +-16.60 mod 14.14 = -2 +-16.60 mod -16.60 = 0 +-16.60 mod 0.15 = 0 +-16.60 mod -0.01 = 0 +-16.60 mod 15151324141414.412312232141241 = -16 +-16.60 mod -132132245132134.1515123765412 = -16 +-16.60 mod 141241241241241248267654747412 = -16 +-16.60 mod -149143276547656984948124912 = -16 +-16.60 mod 0.1322135476547459213732911312 = 0 +-16.60 mod -0.123912932193769965476541321 = 0 + +Number "0.15" (scale 0) + 0.15 mod 15 = 0 + 0.15 mod -15 = 0 + 0.15 mod 1 = 0 + 0.15 mod -9 = 0 + 0.15 mod 14.14 = 0 + 0.15 mod -16.60 = 0 + 0.15 mod 0.15 = 0 + 0.15 mod -0.01 = 0 + 0.15 mod 15151324141414.412312232141241 = 0 + 0.15 mod -132132245132134.1515123765412 = 0 + 0.15 mod 141241241241241248267654747412 = 0 + 0.15 mod -149143276547656984948124912 = 0 + 0.15 mod 0.1322135476547459213732911312 = 0 + 0.15 mod -0.123912932193769965476541321 = 0 + +Number "-0.01" (scale 0) + -0.01 mod 15 = 0 + -0.01 mod -15 = 0 + -0.01 mod 1 = 0 + -0.01 mod -9 = 0 + -0.01 mod 14.14 = 0 + -0.01 mod -16.60 = 0 + -0.01 mod 0.15 = 0 + -0.01 mod -0.01 = 0 + -0.01 mod 15151324141414.412312232141241 = 0 + -0.01 mod -132132245132134.1515123765412 = 0 + -0.01 mod 141241241241241248267654747412 = 0 + -0.01 mod -149143276547656984948124912 = 0 + -0.01 mod 0.1322135476547459213732911312 = 0 + -0.01 mod -0.123912932193769965476541321 = 0 + +Number "15" (scale 10) + 15 mod 15 = 0.0000000000 + 15 mod -15 = 0.0000000000 + 15 mod 1 = 0.0000000000 + 15 mod -9 = 6.0000000000 + 15 mod 14.14 = 0.8600000000 + 15 mod -16.60 = 15.0000000000 + 15 mod 0.15 = 0.0000000000 + 15 mod -0.01 = 0.0000000000 + 15 mod 15151324141414.412312232141241 = 15.0000000000 + 15 mod -132132245132134.1515123765412 = 15.0000000000 + 15 mod 141241241241241248267654747412 = 15.0000000000 + 15 mod -149143276547656984948124912 = 15.0000000000 + 15 mod 0.1322135476547459213732911312 = 0.0598691150 + 15 mod -0.123912932193769965476541321 = 0.0065352045 + +Number "-15" (scale 10) + -15 mod 15 = 0.0000000000 + -15 mod -15 = 0.0000000000 + -15 mod 1 = 0.0000000000 + -15 mod -9 = -6.0000000000 + -15 mod 14.14 = -0.8600000000 + -15 mod -16.60 = -15.0000000000 + -15 mod 0.15 = 0.0000000000 + -15 mod -0.01 = 0.0000000000 + -15 mod 15151324141414.412312232141241 = -15.0000000000 + -15 mod -132132245132134.1515123765412 = -15.0000000000 + -15 mod 141241241241241248267654747412 = -15.0000000000 + -15 mod -149143276547656984948124912 = -15.0000000000 + -15 mod 0.1322135476547459213732911312 = -0.0598691150 + -15 mod -0.123912932193769965476541321 = -0.0065352045 + +Number "1" (scale 10) + 1 mod 15 = 1.0000000000 + 1 mod -15 = 1.0000000000 + 1 mod 1 = 0.0000000000 + 1 mod -9 = 1.0000000000 + 1 mod 14.14 = 1.0000000000 + 1 mod -16.60 = 1.0000000000 + 1 mod 0.15 = 0.1000000000 + 1 mod -0.01 = 0.0000000000 + 1 mod 15151324141414.412312232141241 = 1.0000000000 + 1 mod -132132245132134.1515123765412 = 1.0000000000 + 1 mod 141241241241241248267654747412 = 1.0000000000 + 1 mod -149143276547656984948124912 = 1.0000000000 + 1 mod 0.1322135476547459213732911312 = 0.0745051664 + 1 mod -0.123912932193769965476541321 = 0.0086965424 + +Number "-9" (scale 10) + -9 mod 15 = -9.0000000000 + -9 mod -15 = -9.0000000000 + -9 mod 1 = 0.0000000000 + -9 mod -9 = 0.0000000000 + -9 mod 14.14 = -9.0000000000 + -9 mod -16.60 = -9.0000000000 + -9 mod 0.15 = 0.0000000000 + -9 mod -0.01 = 0.0000000000 + -9 mod 15151324141414.412312232141241 = -9.0000000000 + -9 mod -132132245132134.1515123765412 = -9.0000000000 + -9 mod 141241241241241248267654747412 = -9.0000000000 + -9 mod -149143276547656984948124912 = -9.0000000000 + -9 mod 0.1322135476547459213732911312 = -0.0094787594 + -9 mod -0.123912932193769965476541321 = -0.0782688820 + +Number "14.14" (scale 10) + 14.14 mod 15 = 14.1400000000 + 14.14 mod -15 = 14.1400000000 + 14.14 mod 1 = 0.1400000000 + 14.14 mod -9 = 5.1400000000 + 14.14 mod 14.14 = 0.0000000000 + 14.14 mod -16.60 = 14.1400000000 + 14.14 mod 0.15 = 0.0400000000 + 14.14 mod -0.01 = 0.0000000000 + 14.14 mod 15151324141414.412312232141241 = 14.1400000000 + 14.14 mod -132132245132134.1515123765412 = 14.1400000000 + 14.14 mod 141241241241241248267654747412 = 14.1400000000 + 14.14 mod -149143276547656984948124912 = 14.1400000000 + 14.14 mod 0.1322135476547459213732911312 = 0.1253639485 + 14.14 mod -0.123912932193769965476541321 = 0.0139257299 + +Number "-16.60" (scale 10) +-16.60 mod 15 = -1.6000000000 +-16.60 mod -15 = -1.6000000000 +-16.60 mod 1 = -0.6000000000 +-16.60 mod -9 = -7.6000000000 +-16.60 mod 14.14 = -2.4600000000 +-16.60 mod -16.60 = 0.0000000000 +-16.60 mod 0.15 = -0.1000000000 +-16.60 mod -0.01 = 0.0000000000 +-16.60 mod 15151324141414.412312232141241 = -16.6000000000 +-16.60 mod -132132245132134.1515123765412 = -16.6000000000 +-16.60 mod 141241241241241248267654747412 = -16.6000000000 +-16.60 mod -149143276547656984948124912 = -16.6000000000 +-16.60 mod 0.1322135476547459213732911312 = -0.0733065431 +-16.60 mod -0.123912932193769965476541321 = -0.1195800182 + +Number "0.15" (scale 10) + 0.15 mod 15 = 0.1500000000 + 0.15 mod -15 = 0.1500000000 + 0.15 mod 1 = 0.1500000000 + 0.15 mod -9 = 0.1500000000 + 0.15 mod 14.14 = 0.1500000000 + 0.15 mod -16.60 = 0.1500000000 + 0.15 mod 0.15 = 0.0000000000 + 0.15 mod -0.01 = 0.0000000000 + 0.15 mod 15151324141414.412312232141241 = 0.1500000000 + 0.15 mod -132132245132134.1515123765412 = 0.1500000000 + 0.15 mod 141241241241241248267654747412 = 0.1500000000 + 0.15 mod -149143276547656984948124912 = 0.1500000000 + 0.15 mod 0.1322135476547459213732911312 = 0.0177864523 + 0.15 mod -0.123912932193769965476541321 = 0.0260870678 + +Number "-0.01" (scale 10) + -0.01 mod 15 = -0.0100000000 + -0.01 mod -15 = -0.0100000000 + -0.01 mod 1 = -0.0100000000 + -0.01 mod -9 = -0.0100000000 + -0.01 mod 14.14 = -0.0100000000 + -0.01 mod -16.60 = -0.0100000000 + -0.01 mod 0.15 = -0.0100000000 + -0.01 mod -0.01 = 0.0000000000 + -0.01 mod 15151324141414.412312232141241 = -0.0100000000 + -0.01 mod -132132245132134.1515123765412 = -0.0100000000 + -0.01 mod 141241241241241248267654747412 = -0.0100000000 + -0.01 mod -149143276547656984948124912 = -0.0100000000 + -0.01 mod 0.1322135476547459213732911312 = -0.0100000000 + -0.01 mod -0.123912932193769965476541321 = -0.0100000000 \ No newline at end of file diff --git a/ext/bcmath/tests/bcmod_large_numbers.phpt b/ext/bcmath/tests/bcmod_large_numbers.phpt index 8426de1605971..e68df169d38b8 100644 --- a/ext/bcmath/tests/bcmod_large_numbers.phpt +++ b/ext/bcmath/tests/bcmod_large_numbers.phpt @@ -1,5 +1,5 @@ --TEST-- -bcdiv() function - tests with large numbers +bcmod() function with large numbers --EXTENSIONS-- bcmath --INI-- @@ -7,15 +7,15 @@ bcmath.scale=0 --FILE-- --EXPECT-- Number "0" (scale 0) + 0 × 0 = 0 + 0 × 0.00 = 0 + 0 × -0 = 0 + 0 × -0.00 = 0 0 × 15 = 0 0 × -15 = 0 0 × 1 = 0 @@ -39,6 +43,10 @@ Number "0" (scale 0) 0 × -0.123912932193769965476541321 = 0 Number "0.00" (scale 0) + 0.00 × 0 = 0 + 0.00 × 0.00 = 0 + 0.00 × -0 = 0 + 0.00 × -0.00 = 0 0.00 × 15 = 0 0.00 × -15 = 0 0.00 × 1 = 0 @@ -55,6 +63,10 @@ Number "0.00" (scale 0) 0.00 × -0.123912932193769965476541321 = 0 Number "-0" (scale 0) + -0 × 0 = 0 + -0 × 0.00 = 0 + -0 × -0 = 0 + -0 × -0.00 = 0 -0 × 15 = 0 -0 × -15 = 0 -0 × 1 = 0 @@ -71,6 +83,10 @@ Number "-0" (scale 0) -0 × -0.123912932193769965476541321 = 0 Number "-0.00" (scale 0) + -0.00 × 0 = 0 + -0.00 × 0.00 = 0 + -0.00 × -0 = 0 + -0.00 × -0.00 = 0 -0.00 × 15 = 0 -0.00 × -15 = 0 -0.00 × 1 = 0 @@ -87,6 +103,10 @@ Number "-0.00" (scale 0) -0.00 × -0.123912932193769965476541321 = 0 Number "0" (scale 10) + 0 × 0 = 0.0000000000 + 0 × 0.00 = 0.0000000000 + 0 × -0 = 0.0000000000 + 0 × -0.00 = 0.0000000000 0 × 15 = 0.0000000000 0 × -15 = 0.0000000000 0 × 1 = 0.0000000000 @@ -103,6 +123,10 @@ Number "0" (scale 10) 0 × -0.123912932193769965476541321 = 0.0000000000 Number "0.00" (scale 10) + 0.00 × 0 = 0.0000000000 + 0.00 × 0.00 = 0.0000000000 + 0.00 × -0 = 0.0000000000 + 0.00 × -0.00 = 0.0000000000 0.00 × 15 = 0.0000000000 0.00 × -15 = 0.0000000000 0.00 × 1 = 0.0000000000 @@ -119,6 +143,10 @@ Number "0.00" (scale 10) 0.00 × -0.123912932193769965476541321 = 0.0000000000 Number "-0" (scale 10) + -0 × 0 = 0.0000000000 + -0 × 0.00 = 0.0000000000 + -0 × -0 = 0.0000000000 + -0 × -0.00 = 0.0000000000 -0 × 15 = 0.0000000000 -0 × -15 = 0.0000000000 -0 × 1 = 0.0000000000 @@ -135,6 +163,10 @@ Number "-0" (scale 10) -0 × -0.123912932193769965476541321 = 0.0000000000 Number "-0.00" (scale 10) + -0.00 × 0 = 0.0000000000 + -0.00 × 0.00 = 0.0000000000 + -0.00 × -0 = 0.0000000000 + -0.00 × -0.00 = 0.0000000000 -0.00 × 15 = 0.0000000000 -0.00 × -15 = 0.0000000000 -0.00 × 1 = 0.0000000000 @@ -148,4 +180,4 @@ Number "-0.00" (scale 10) -0.00 × 141241241241241248267654747412 = 0.0000000000 -0.00 × -149143276547656984948124912 = 0.0000000000 -0.00 × 0.1322135476547459213732911312 = 0.0000000000 - -0.00 × -0.123912932193769965476541321 = 0.0000000000 + -0.00 × -0.123912932193769965476541321 = 0.0000000000 \ No newline at end of file diff --git a/ext/bcmath/tests/bcpow.phpt b/ext/bcmath/tests/bcpow.phpt index 32c057c974578..9eaba7eec8571 100644 --- a/ext/bcmath/tests/bcpow.phpt +++ b/ext/bcmath/tests/bcpow.phpt @@ -6,15 +6,418 @@ bcmath bcmath.scale=0 --FILE-- --EXPECT-- -1 --32.0000 -18446744073709551616 --108.88 -0 \ No newline at end of file +Number "15" (scale 0) + 15 ^ 15 = 437893890380859375 + 15 ^ -15 = 0 + 15 ^ 1 = 15 + 15 ^ -9 = 0 + 15 ^ 0 = 1 + 15 ^ -0 = 1 + 15 ^ 252 = 237135886481351297382468574917313144844970356302221777632832615638003070736580081217360793962070064247594576249396872345556164659881002366207912047265309059413892077092997608382858888266273629252398653205357976938870120670782142034597069710705445432682146079950147310455577098764479160308837890625 + 15 ^ -112 = 0 + +Number "-15" (scale 0) + -15 ^ 15 = -437893890380859375 + -15 ^ -15 = 0 + -15 ^ 1 = -15 + -15 ^ -9 = 0 + -15 ^ 0 = 1 + -15 ^ -0 = 1 + -15 ^ 252 = 237135886481351297382468574917313144844970356302221777632832615638003070736580081217360793962070064247594576249396872345556164659881002366207912047265309059413892077092997608382858888266273629252398653205357976938870120670782142034597069710705445432682146079950147310455577098764479160308837890625 + -15 ^ -112 = 0 + +Number "1" (scale 0) + 1 ^ 15 = 1 + 1 ^ -15 = 1 + 1 ^ 1 = 1 + 1 ^ -9 = 1 + 1 ^ 0 = 1 + 1 ^ -0 = 1 + 1 ^ 252 = 1 + 1 ^ -112 = 1 + +Number "-9" (scale 0) + -9 ^ 15 = -205891132094649 + -9 ^ -15 = 0 + -9 ^ 1 = -9 + -9 ^ -9 = 0 + -9 ^ 0 = 1 + -9 ^ -0 = 1 + -9 ^ 252 = 2945183635465464884233206633443008848559894187106131466268028902439028615518295534220079169301330491447962555905286712315981330452878058357582386904241524088181763471075659119460152769761830870007779820098802358876968679265201323425586410081 + -9 ^ -112 = 0 + +Number "0" (scale 0) + 0 ^ 15 = 0 + 0 ^ -15 = 0 + 0 ^ 1 = 0 + 0 ^ -9 = 0 + 0 ^ 0 = 1 + 0 ^ -0 = 1 + 0 ^ 252 = 0 + 0 ^ -112 = 0 + +Number "-0" (scale 0) + -0 ^ 15 = 0 + -0 ^ -15 = 0 + -0 ^ 1 = 0 + -0 ^ -9 = 0 + -0 ^ 0 = 1 + -0 ^ -0 = 1 + -0 ^ 252 = 0 + -0 ^ -112 = 0 + +Number "252" (scale 0) + 252 ^ 15 = 1049562032118382425513949173821472768 + 252 ^ -15 = 0 + 252 ^ 1 = 252 + 252 ^ -9 = 0 + 252 ^ 0 = 1 + 252 ^ -0 = 1 + 252 ^ 252 = 142212010733424647125806541813713973266552845448041013743767421605354690415544328196152173390963803494710443230142152775687771944805429044982729796870857181947776572826160793933424942988750037827638341986183789792079484880609013515717131451507203060282065264043070502125106179548342207047711204933650239424460841202157152719662980652213693426926863084348529493037513389175805577626219903234384208039735661457745854089305800218117427842428649306815115886661640301037762482527923343983853507875264930793965916131347421096416232894153340276842687468868552274843085150094307684610419227652811804917758213226496 + 252 ^ -112 = 0 + +Number "-112" (scale 0) + -112 ^ 15 = -5473565759257037859954903482368 + -112 ^ -15 = 0 + -112 ^ 1 = -112 + -112 ^ -9 = 0 + -112 ^ 0 = 1 + -112 ^ -0 = 1 + -112 ^ 252 = 2528958559509291693508169626548016243760525615786379976651267082288161074806837567146354242426675448089179587223689918667106749284121965637887934532709154725528081671334320643858146400820666287506930741579829377389324701928200642059190071982670723834096616484481264403390509754202256821825886418273918096647296731861068941003342202311747852949747419032091731983573265045376333262301085406296848909763397511959941544798830761308589095475080050282796818166220650002245272286955283850226653729461037771414650027776147456 + -112 ^ -112 = 0 + +Number "0.00" (scale 0) + 0.00 ^ 15 = 0 + 0.00 ^ -15 = 0 + 0.00 ^ 1 = 0 + 0.00 ^ -9 = 0 + 0.00 ^ 0 = 1 + 0.00 ^ -0 = 1 + 0.00 ^ 252 = 0 + 0.00 ^ -112 = 0 + +Number "-0.00" (scale 0) + -0.00 ^ 15 = 0 + -0.00 ^ -15 = 0 + -0.00 ^ 1 = 0 + -0.00 ^ -9 = 0 + -0.00 ^ 0 = 1 + -0.00 ^ -0 = 1 + -0.00 ^ 252 = 0 + -0.00 ^ -112 = 0 + +Number "14.14" (scale 0) + 14.14 ^ 15 = 180609729388653367 + 14.14 ^ -15 = 0 + 14.14 ^ 1 = 14 + 14.14 ^ -9 = 0 + 14.14 ^ 0 = 1 + 14.14 ^ -0 = 1 + 14.14 ^ 252 = 81893830287657387446140079713887806093576884288543703328783802176508922753380870094003376900318176725198165627317176488631295332728458521626072637389422651709754634844150191850264235770478926203337416116264674564206565124289082609409927041547210316199545928823591027686585730497632744792533 + 14.14 ^ -112 = 0 + +Number "-16.60" (scale 0) +-16.60 ^ 15 = -2002725006700243463 +-16.60 ^ -15 = 0 +-16.60 ^ 1 = -16 +-16.60 ^ -9 = 0 +-16.60 ^ 0 = 1 +-16.60 ^ -0 = 1 +-16.60 ^ 252 = 29325011162031531635050775473043742335712717807162139294189975794596377719994688259393390430325862997866008694776131070878139493075620575422701181905723221059535177378476880731856824922247604302185770818227621273103971150596854313288134126369153196254990016237048145067458027194360617116808917107675683822643 +-16.60 ^ -112 = 0 + +Number "0.15" (scale 0) + 0.15 ^ 15 = 0 + 0.15 ^ -15 = 2283658260521 + 0.15 ^ 1 = 0 + 0.15 ^ -9 = 26012294 + 0.15 ^ 0 = 1 + 0.15 ^ -0 = 1 + 0.15 ^ 252 = 0 + 0.15 ^ -112 = 189574092538418764958341193234367215745086742520818271114560854632390900314942322598922704092 + +Number "-0.01" (scale 0) + -0.01 ^ 15 = 0 + -0.01 ^ -15 = -1000000000000000000000000000000 + -0.01 ^ 1 = 0 + -0.01 ^ -9 = -1000000000000000000 + -0.01 ^ 0 = 1 + -0.01 ^ -0 = 1 + -0.01 ^ 252 = 0 + -0.01 ^ -112 = 100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 + +Number "15151324141414.412312232141241" (scale 0) +15151324141414.412312232141241 ^ 15 = 509048123991351801905481953476379185972789524506389464560948346272971876778908444213802402540123245924548973078757287880001162665191012187707496396738218203170247236816923480505943223846447785782345 +15151324141414.412312232141241 ^ -15 = 0 +15151324141414.412312232141241 ^ 1 = 15151324141414 +15151324141414.412312232141241 ^ -9 = 0 +15151324141414.412312232141241 ^ 0 = 1 +15151324141414.412312232141241 ^ -0 = 1 +15151324141414.412312232141241 ^ 252 = 2975421749795666718292864311407249970705086081437807395789379168718267809761515926216519710525556923711393180871882349125480337759668727402072958238900666362552341750552695988372017271582392491705356316948514737089205360282499880482512926893561832567935188520485154057479922893292233844872682027689029924296957873832086320362860520134654280058518517337570653996385278714198685752823835453817905306636319703719003676343516921560023010996505106467350842109482615346014981820723775172695392986401597801626150692206539756529644889137926049906575290564959396735953680592250779460130816876807757766338263686270020029393453575181327870591265373834140347848891333472452106266668645850397235968389042220027274496640159090815418483309643657324273121448493101717217140617069517287371864653153681358830190414615833078002577453411141597016583358385430394744450538495805740402488576124870572258200605831119008100984519684993455060646872766261382240383564392178883974453450433114215183488267147681395487265404247208352661495181304031822061114406175030677886104508679211172804603630316447723815907701460914622481206853022006681302191940743481903991732602477879503644713688600025822484351386994709104484371310424352144611218737196401824457866949669228902625541115988570606278592188602331451576075786613348336629409301707863923798082511203519536680273830467529869070112013346223720130183581189201489843066803035998524636580843999168622007134798723860720169157200004627398709928941733609441557160972211113022692009799237864185615460855228045985383589616750868474559577038584404446390706055987175018852877810774653462856565006598191028334508282011970034047209214176244147503985386832987247129380772291221015035166871079932982021644848487302418889155646720341011763574205760582552545432674974794783974025401318074084939141860755094923101801284442989344181743012614781021983935394731085008059924819771193595363859258571474767439534580638568746666210621240873673676940762489862112336626521441471577301366647762037305798100798711822457474507172500970023127288841824797039587587687760406935930088932018738492033507792817250533066953710174207685876451854460620309225706829752706450285622677922594957647037672524232255747269667789144401086986842640538153043741101238245322300993710394384754508967946211337487952324876892016919924636143376046118565299301806000686710931777881411145696867371682466218379864851343043041312758162391699150775018231599537746501756924961427444527995061269251565547747098676254156910141573235165420989417824245466381006116578002121746837672733849938657667872006918460874232266046864354612969306512425002050502769904919642157609172541701550215596501139800180259552618049103708500764672848369198536220300039766241517053637402993685274740246644140211865650547971680391614831119804648079596819224703795536455681460692071824945358084847698465553826334065350185771802401947633785300181386909348829848309501929340612695571623266869616638304357843374880496058625355636022120527400443841025788264209843812042625792300865583082505414465908017500188208987693716855836263772885824776988984333362684311002647195832946927199653846403980218407171091513992332604667414925751436017212580993860794349764631915036822374405575551253454423848395310883501116565831195963321659796880685759075194666868292856205113353111159407896940446955956749209 +15151324141414.412312232141241 ^ -112 = 0 + +Number "141241241241241248267654747412" (scale 0) +141241241241241248267654747412 ^ 15 = 177591789298838947421924937418435926483207726032941337126565686201154837989992676792469043927153886362407093561688979426718344848540943458245870720268722797084708626211824507010348223033844880992203548347580375252630658556528592298319547225224912135982081686378909626742998484437641863458021277126578238452879997277005795795020835662533892290564198652316605246272512413311084386660488961246461538425989780621930750572963428718487554490368 +141241241241241248267654747412 ^ -15 = 0 +141241241241241248267654747412 ^ 1 = 141241241241241248267654747412 +141241241241241248267654747412 ^ -9 = 0 +141241241241241248267654747412 ^ 0 = 1 +141241241241241248267654747412 ^ -0 = 1 +141241241241241248267654747412 ^ 252 = 61702737614252266948752156824258824995959599972302320510716529982037298313739133760034183411877915226877565852198668440669791795617272708708492070599904800132098399232978789534072748261835151242629120913793827710449864804330737116696282852494151262231643262037509694372134135894276508967194766869889867303622326767458055285775054658565704105389065774707528077134226867060689181155582362175947504766959470020293226474023546968232460082444503912720021117368360386834444296061143129153351909427031876573177512880122064185569107842900553293550154759961105705458193916741180207197209621223094253214396769871913256823886396746414009606236401337641975159583111263046921277256870910247139612445619959067659323246784229705879779504519921968053141823090638689328500711053428918278999419825533334808914479125124304786443895285883492931266287931531729858829237461074566895486671242348082833878884776228517928133923449282430038745609287058924814413730985957861336607098992582653851368483642246306509531450226330989261394231526444743678146424987980458014955926233473826334115019067286145968725016152043997048698852555649504111446712360855837865476980303396801134199935075659852802884819197423764473479086847306010829721607657507579637914756242599185804487547475812412827298700399642854781876339506969947557967510353980827513717983184885292080872213577420468280210432294624241752834053309219199045973319521987975932929891565623163042217388611918307622483024452293173783579391106196420370018442330967765451700900306909737464257886906607274005552053888483483054020641145694539605337937744331035605313696665428737416632101002639001569789365490404722602805032116136122275148638414611401101532057194278420768914301864998398142593349158088898737725867540737097890425196584907775942120540985239557579236871185430362654320129291837576497911030976672546705634824923076862019595021475580215199988383732424366096745105419692283398918642003304826916218038854944067948189983518814346644870415937764601253868517196737959263980145504426078052198314663327843039356842201353163719488533902336353096176525901730253653712920740921897375508115858541406566947578335604123685577167716291169069652779908723297589735946583152466623845488142430700731769152222928283344575334939855201356733293357748709762620500872007205341239109409378799478441798933979724812650664098561233648811173269759247319678281986289749980800969619374582248288309266623507972587507556836064440726974305255199923316929818005467224051058298675312384426804897772240949920506431569837490498738453686746046335084609377713999742753257733912005654985684955512755879419270408315204048723476100838206401604215791253443838837275686487522888505399721610616356437415942085415265887671279570399360491649770978544857086906535678225672378863908117400571273280456942553369722415886814734827811782754510807365782422375263311630528352008474205547181623751728827140229718189606400373948548748620058632906237446487461463924934038124060220073591275626363882021308939573471462771350670733259367229333311304626874470724822013347119651171746131956616787517406892676075170382597409056665459502450515715507008118773500106516262784295667877075894103798253576492873141052750983781150748301119099230755964674235471935040610571173788486284126167436426267511157335062848567544617136701036212286420938449059910123857126789600929537328019086612659111870130906758076250376040429753144954758559356615713330390937898173091733151870035205661876454153260289142884914806807421852435737887997788694746400471112311576221296382603532103910277379683106908049352464276556594523117986718023572377990452537890518505167077689962380643979739773271443338742938727262511258728095020188473504370112836853749915575721872419520821790251159556333443030459056638192775423075084514851738672355958336265015380193591541922572518272773045049968850063625505732261611074622474965936400258314638193512375533757871806804692087708082031597721541387274042872955965737015089791668860525425793056778509470752578481376934088995106166553613693981904966686690212955481430046830913629928245843069361759411764297658217897316455217217021684202563946301505904193890271187899540947054172542875489231623713315378660419455411924354406330626224728228155305799300626640774404377831301051311563284401393151464407836422401342988060834178957138740247616789909739231830346449366019203847401064438442628508720077238078363655382024999197911442576806729689998326498342414751123237684542163876848231535744093508827210033685403359485309410368756619655335647815457456271662771356876949346139750604173629577681834134842499790368833444683342223857503185849902689436294823704067138925427306607192910954091698318729347145907800382668086667899534178563329442767437901814888337083677115243233418029978664046416826126543919629091736900005600339085979551469129407326751494940405612077593337217212627875249494414287211237336394051868492049328715249941706898117243520077930496903083255415280985218820687648161267600024140589397356281610905118704267436760893073994318473316685154852928135755455009702456043054322286620596648587752781151951829993681040341917550141278881598811594525627199147969934315163608714206891254146576331437603057409575204473025499304932390635935053481842967808825955521225903532223710955029023291335271704387554010604494359260592752707638749226503894251533287510138743058143563627083333323467953930288323174099691963642626244047994212921019096440748326461891434713107878328347627128553535347757109535162399519267201671099780388509076162219198648438104874056150803718036255353941654576267453857313032960105282442901730781706849116468293203141632905459414497264691251443801343872064950763335362229179456002525747120895247485013820030787875667079177283909056955331506973886798132875485898886780825156590108516771255757929317588856294114876639328139025640209294004084324019087271465180464949662380290646689899281765951368313154956095080011378907737551290670716282657109905603462006701850544998109045986412695185702298097876768249839078776688511467326239283983098509833719622936353377241972069901941714532498768716115868591570677576564417673178096539225866975241748028970361222145947727863536827216898514621847057819434576609230609611433988111992050578257972824282582096472184583048169498234433362074234852397751092471572561447915858864173251918950055149910352613561842701231235991010567523708933526326914146617809092162785366466356881319331412699810698600005749537204138000103625418561709921211393425978474528008482773381566071958815629154952129819071276958851406185526598276525973924382616619638927391896061767984462316342879485215181167142278283860974122393376129042592163052368958562549536015824310093694746026464275365131184771894447337638915074864139725976487382152380756354201968249702096723240570755670245536167613452904133125178947690742699517259032210148920215799181139024035965215646290857562866703810691715946409991609804815076179410873897787742683601227701850554553822077038999133518015046632371381193916753753001215985430108776610861216333105848176092629616183087158890392572221891278673318821093507423533826286478376277706846738214944276585022159559546442701466991751438781940501472267762449963577519763912275982471063234586863118222911568589623962096407513817772511232500343850038909537966015828523715127021508912585417674924982540682182384350779611171081429430780526138025312256 +141241241241241248267654747412 ^ -112 = 0 + +Number "-149143276547656984948124912" (scale 0) +-149143276547656984948124912 ^ 15 = -401841881822660241398409660309345646463535278187389488718526585893873800090729191609465595568674086078015487989884600849819723618141030735892646637579078630759905628572464757376301450900008605507116286859140901254928168279833198528761329808672095261265618307499605901098109261736293336298350347017449323858811047847238969925531775390894165290898723086447624518554747816961256145036283496890368 +-149143276547656984948124912 ^ -15 = 0 +-149143276547656984948124912 ^ 1 = -149143276547656984948124912 +-149143276547656984948124912 ^ -9 = 0 +-149143276547656984948124912 ^ 0 = 1 +-149143276547656984948124912 ^ -0 = 1 +-149143276547656984948124912 ^ 252 = 55992175588333605542254063511278186461754574279839591709604310477562564689608443402403312222078711893971235561416950804719506082702379684733623971919408777114548100892216614108951324353246556535017960316014312222959702094808816331434094822650280427440063882576116695336500221646817757077369708529723823620336810350659576930581023887896886330503478109619863448515840946841190553234682382107049366084010115954164628751537372573754962628376851714140066914283347218349289869214926741444216767437164014398845666639858144658260377876458100579298055950974326675298651898083944350131609483093051504290661822668587661388602474880915186436725755772988399461893678236514411268113165984474267116617738961793643422894941375678592236663229748980138556108251262049269924802865828570213870281755635578142765872996532114681632125265545602095618091845037482357075517681870091778157619627960547482657474217943178159685376848804852485477702194998676631497601923456769896045663194900447061246337026655179495322126687564510781039271062988745945476519142221837023581656486042843501094480484668735886050383956287988798135101996785626705798462084512791858856000486173266205660052015961534265640905209313211125294627662693933297211009401491531951462889268507817897027972228709128736864008707571464724272762871838758126048184870005667275664845553774616604225572310912906152876060860153081105424979281592600839984125772468965874379832364640972866833334251698542584896314049237205644695553901317638647614318787708386467733615459065054365995897250270550067664267902152593317177099901109073008588486059511534052232495744462484660835773139005865467174339411663680328459135341612957853618227176487790111649236830978394018719354265785673205669861260376582410982507319458447629229410566850388275381698880420276787659514779189425772384786376987076804655929761620083736939837925917040082332479217674557289518688000706235667753826358380348450542285250406537012741099810396394118895119698580737840025778922487867828224721621696636134003638036732306141123387999132026332818408631403997196873195235009010958949928160436198665838441080496516462280678580659979676597569859757823014996017746962217866836145864024569035599176373962484096890443265839324221819146344682358316417403925617439797384999832590030653638024893217809739723987689363496190587792737138664106310356621671611551929705606372447129233289185995118668079125240237102990263869918086723137110005986280396651777574801894806896216800028637569274623115952691705831786855142876372495042729622496416156065929528185678346792948178219730451297126977072400452744745442561264775799188074289500187819445634298783592673376925950468898124384645088176602526214362158710249480242291627057463890117803354864730141461123747252541155347156400786777580958799766203254109472380735138017589461079608897268030232306639370404014163374433657561727131953203599087127600881156801848610207055453714038310061358219048264213893904654160135134848687217172657051056772433684382081263303256605397966956854911368891641655435481304103776752873688058287104569168817065852794438626208265013522214226436602866008965183348172506623891029487173951745639310845051694186685631363145511797791938639666555812388418639006943045236047084104158886785565539716175502784568418794921820159931670582549209945162053950333817714412469166667825536844480057325499652926508866184039633216003293080890783177150560019167662732664450429084752291624787970859408952386737598480289325786960288529818745254001900176106836194717861463240979411026596588950731407070101543407905496821261729510687348937796821412471929466014397692973783859204087752392409288320366943382998932124935828714903875879810782071015247527108459417616171666066601727254393827585882211498062627962114450203721750315845815155021697506333572413625746275557635360793506459802530913864986879539619322648374208957842152789346087113544250046274926635250206832991054325050621508788782189089586427470337274776955856080752508329602238857381659447673739378703749938045217491297442880220072951767019308302182120866450686427636523729778183001298464279351451928526859912935358200922256687852217293342222770676364112675875706669220947500716778555631580892140965700894865432467415441058797916958701058613262784771287521375767679654675090202761215911050514394041232506701642838754586624728822744306994328186360720405674825737265107963504397795466141078520379635918101893732280384966090817776697492519589958581600274196260931284807107964025197355095278741484748256594018281189059520971488155232871826436474292672923671151932746647309516440171397028945399089869838594185867352632608780487775648305026266036688377754295386304268591067685420141876930761382919961712554949830460502589375485003677323126912620975565484588745962938195716999584478642921595627905781087037922126946614604204487324577624535390564298909897280520685096190766392954666547140142042912418332011086985860840135170509805299821832401396881784927340948572834668444512971438394035995512132253672305434131965163273499166432580879149169510915828895700480265882084820049681597304529404116243028731782666223146293276746325246389991906529999778889818267030526761479627741075225237850144113075710406764114186915812713229218993793341952820039777430468508433933966568805816476723519852998663547981299673789287916637548338855826997859936126186385134251146763787920958572343543991163814387927189271315975774832941216796979710625756748626599205479744652593376548351502299670239068557344870045319781398252470403969497344298988472389766532157945149006071078612248352124554889096445319251898085100982701259010029952682041054540095054811702903956018540222632923457127530247486958765495736895235378687056667532898872772226646337210525647648255272837299826798955752834895854767176324936924389475920748073831818096942140696117576092974900312853119224158903042363552736819426608351322112183508012056364946319635528219546604362373666786411115604890681450553292576529326479658711947191604698823116618052429048783309728106697011619648892228467141759801681403110446555051361286503728164299660143689758025052636205563319986489358179027312653555993846959468256374852368137107311301180752627493394581971715347510238354749743466448707369816187860965509171840845607662996123030730513040791692384884335938330381280366200730869537716461479253093292207520004802508144089109220447459994338712030132586927643258314767215456297941961060686384969263988976767300178026850202211882886115891867194452898699949334970606719473728841882215132953439233323551171404920756819606555668846000416712701888993858314625083201880134723672826428864990888175557418214752256 +-149143276547656984948124912 ^ -112 = 0 + +Number "-132132245132134.1515123765412" (scale 0) +-132132245132134.1515123765412 ^ 15 = -65332942084431118671715132691017936828728297532817376297090067844431557352758338594306899592493441083845683845573112529065975725871957965764869599362286162979915656223771056616561461958797695558519631556073805440 +-132132245132134.1515123765412 ^ -15 = 0 +-132132245132134.1515123765412 ^ 1 = -132132245132134 +-132132245132134.1515123765412 ^ -9 = 0 +-132132245132134.1515123765412 ^ 0 = 1 +-132132245132134.1515123765412 ^ -0 = 1 +-132132245132134.1515123765412 ^ 252 = 3120478727852745944038201629388077518619819959072778583628662888334880902703519914956089883839049682560676318469032398877418258855834502244373291879606411026505240673439178203360337045239911911401143426214698971271446651876647780290878775496277056268500023561875074401483645577685406485543728816046104697722586058947707076996271324455741296959565524792629154208973708365548001942744414873486576135834495119053638656800810039027025111460331113258212007994067919145384836907081609212431099297641564986044622031456724633662129385296885404614299495960919762385823257644295402159220952463360942737103080118148157378054224237643480822424971993488886224977914497478451840908909543741696948530676782472589176085509233818251158281114742053469197512119057322174380982258491102193374311292374479260658074669161655748423441627187461082149885494689147360706871450098031935056173199096293719222350434764175998710688281702890509097348360359424470253307347729933523000107901985428772530720331531602039527737982138204747133438804098370520558033130528360187686745723186175166911233242211471504301640494824606523094514433764325212802493051981781145617974800929022725476602466144772127930440805434165616744472255347819425748816302231931654549386733679017858450849437143025476899823162000718594064313231515875922351213500222461590573572602190403067267602652736825180691112504152614488461179376450513626420818955027469144025952675277586101528625525962975039500773275778271940118869825449096270757603664530201369396099033029284457100867407697277568670150540402862276543512075434177386868941061854045298572535075420109196042754099960063991947561825511501510308275562634049421237378673160125072162000008236844954128527856723821733254208508907735993281091035579467181540332944219703979021157597903396359158593344664084014589368086779575978259251720029980655644790465254951448194710584230098489732637703819106720935376496517841788507273903175469897103859611331100545364249483088831520541660951382659294376726172983396374439867149870807521191671805902233698315119009713542754446376327365814873898054136563782777104472609469109963308092044568027239290595186247761999234668032081218755268222207063445264559530223287160963458677689875951320832784965806613254975793162543596534222371458668498571166837299325731596777670132830001546839544284346351393964824730839639301046179558652696082308824070477223869283054978658326855126932082754121256920575641227926598676719724725719222484148625020220494108342394030408253089899891700400203336918661663751523788622735773864833731552284954237137952497719069892440806380625733323869952845631051069940707365414990621967523332677411935527536814983008403556834213618522880787952621206983027073172116156651218377851746340174808375254284001435816118302249193303397466776845851743890519082821148416722135170698614740907867435963618925044956902958148324272894672030283819168758463855285701991252475351862754820487744045764868396684777846686070069982217881227849496760269225414231083805733290534151123406915650028121222263850640283860639197520959825152626458400452325975452613482437167476356009654121926543290145079478070360029730020980795208355698196814222112480898983202043419519375263651949181097645574205178523255626929768121920234439313474099206104455976950857197860880977258241730976397804678973733516947554105951667082135434125689463359251547871548911802646544683845207784833032667495833535290224433943754770189766271196987201022608066882057869125850499995301677418321251261832661046278653566452890787168741868239138468494682699662284065061316757322733605 +-132132245132134.1515123765412 ^ -112 = 0 + +Number "0.1322135476547459213732911312" (scale 0) +0.1322135476547459213732911312 ^ 15 = 0 +0.1322135476547459213732911312 ^ -15 = 15165635699683 +0.1322135476547459213732911312 ^ 1 = 0 +0.1322135476547459213732911312 ^ -9 = 81005847 +0.1322135476547459213732911312 ^ 0 = 1 +0.1322135476547459213732911312 ^ -0 = 1 +0.1322135476547459213732911312 ^ 252 = 0 +0.1322135476547459213732911312 ^ -112 = 261271852670585926399109608993686784219014928770917821092988518427507780528448900476275115673665845 + +Number "-0.123912932193769965476541321" (scale 0) +-0.123912932193769965476541321 ^ 15 = 0 +-0.123912932193769965476541321 ^ -15 = -40109799462729 +-0.123912932193769965476541321 ^ 1 = 0 +-0.123912932193769965476541321 ^ -9 = -145194543 +-0.123912932193769965476541321 ^ 0 = 1 +-0.123912932193769965476541321 ^ -0 = 1 +-0.123912932193769965476541321 ^ 252 = 0 +-0.123912932193769965476541321 ^ -112 = 372337687215014577843846097845819604950292238064034167723169672020440891758727112526694844172394015451 + +Number "15" (scale 10) + 15 ^ 15 = 437893890380859375.0000000000 + 15 ^ -15 = 0.0000000000 + 15 ^ 1 = 15.0000000000 + 15 ^ -9 = 0.0000000000 + 15 ^ 0 = 1.0000000000 + 15 ^ -0 = 1.0000000000 + 15 ^ 252 = 237135886481351297382468574917313144844970356302221777632832615638003070736580081217360793962070064247594576249396872345556164659881002366207912047265309059413892077092997608382858888266273629252398653205357976938870120670782142034597069710705445432682146079950147310455577098764479160308837890625.0000000000 + 15 ^ -112 = 0.0000000000 + +Number "-15" (scale 10) + -15 ^ 15 = -437893890380859375.0000000000 + -15 ^ -15 = 0.0000000000 + -15 ^ 1 = -15.0000000000 + -15 ^ -9 = 0.0000000000 + -15 ^ 0 = 1.0000000000 + -15 ^ -0 = 1.0000000000 + -15 ^ 252 = 237135886481351297382468574917313144844970356302221777632832615638003070736580081217360793962070064247594576249396872345556164659881002366207912047265309059413892077092997608382858888266273629252398653205357976938870120670782142034597069710705445432682146079950147310455577098764479160308837890625.0000000000 + -15 ^ -112 = 0.0000000000 + +Number "1" (scale 10) + 1 ^ 15 = 1.0000000000 + 1 ^ -15 = 1.0000000000 + 1 ^ 1 = 1.0000000000 + 1 ^ -9 = 1.0000000000 + 1 ^ 0 = 1.0000000000 + 1 ^ -0 = 1.0000000000 + 1 ^ 252 = 1.0000000000 + 1 ^ -112 = 1.0000000000 + +Number "-9" (scale 10) + -9 ^ 15 = -205891132094649.0000000000 + -9 ^ -15 = 0.0000000000 + -9 ^ 1 = -9.0000000000 + -9 ^ -9 = -0.0000000025 + -9 ^ 0 = 1.0000000000 + -9 ^ -0 = 1.0000000000 + -9 ^ 252 = 2945183635465464884233206633443008848559894187106131466268028902439028615518295534220079169301330491447962555905286712315981330452878058357582386904241524088181763471075659119460152769761830870007779820098802358876968679265201323425586410081.0000000000 + -9 ^ -112 = 0.0000000000 + +Number "0" (scale 10) + 0 ^ 15 = 0.0000000000 + 0 ^ -15 = 0.0000000000 + 0 ^ 1 = 0.0000000000 + 0 ^ -9 = 0.0000000000 + 0 ^ 0 = 1.0000000000 + 0 ^ -0 = 1.0000000000 + 0 ^ 252 = 0.0000000000 + 0 ^ -112 = 0.0000000000 + +Number "-0" (scale 10) + -0 ^ 15 = 0.0000000000 + -0 ^ -15 = 0.0000000000 + -0 ^ 1 = 0.0000000000 + -0 ^ -9 = 0.0000000000 + -0 ^ 0 = 1.0000000000 + -0 ^ -0 = 1.0000000000 + -0 ^ 252 = 0.0000000000 + -0 ^ -112 = 0.0000000000 + +Number "252" (scale 10) + 252 ^ 15 = 1049562032118382425513949173821472768.0000000000 + 252 ^ -15 = 0.0000000000 + 252 ^ 1 = 252.0000000000 + 252 ^ -9 = 0.0000000000 + 252 ^ 0 = 1.0000000000 + 252 ^ -0 = 1.0000000000 + 252 ^ 252 = 142212010733424647125806541813713973266552845448041013743767421605354690415544328196152173390963803494710443230142152775687771944805429044982729796870857181947776572826160793933424942988750037827638341986183789792079484880609013515717131451507203060282065264043070502125106179548342207047711204933650239424460841202157152719662980652213693426926863084348529493037513389175805577626219903234384208039735661457745854089305800218117427842428649306815115886661640301037762482527923343983853507875264930793965916131347421096416232894153340276842687468868552274843085150094307684610419227652811804917758213226496.0000000000 + 252 ^ -112 = 0.0000000000 + +Number "-112" (scale 10) + -112 ^ 15 = -5473565759257037859954903482368.0000000000 + -112 ^ -15 = 0.0000000000 + -112 ^ 1 = -112.0000000000 + -112 ^ -9 = 0.0000000000 + -112 ^ 0 = 1.0000000000 + -112 ^ -0 = 1.0000000000 + -112 ^ 252 = 2528958559509291693508169626548016243760525615786379976651267082288161074806837567146354242426675448089179587223689918667106749284121965637887934532709154725528081671334320643858146400820666287506930741579829377389324701928200642059190071982670723834096616484481264403390509754202256821825886418273918096647296731861068941003342202311747852949747419032091731983573265045376333262301085406296848909763397511959941544798830761308589095475080050282796818166220650002245272286955283850226653729461037771414650027776147456.0000000000 + -112 ^ -112 = 0.0000000000 + +Number "0.00" (scale 10) + 0.00 ^ 15 = 0.0000000000 + 0.00 ^ -15 = 0.0000000000 + 0.00 ^ 1 = 0.0000000000 + 0.00 ^ -9 = 0.0000000000 + 0.00 ^ 0 = 1.0000000000 + 0.00 ^ -0 = 1.0000000000 + 0.00 ^ 252 = 0.0000000000 + 0.00 ^ -112 = 0.0000000000 + +Number "-0.00" (scale 10) + -0.00 ^ 15 = 0.0000000000 + -0.00 ^ -15 = 0.0000000000 + -0.00 ^ 1 = 0.0000000000 + -0.00 ^ -9 = 0.0000000000 + -0.00 ^ 0 = 1.0000000000 + -0.00 ^ -0 = 1.0000000000 + -0.00 ^ 252 = 0.0000000000 + -0.00 ^ -112 = 0.0000000000 + +Number "14.14" (scale 10) + 14.14 ^ 15 = 180609729388653367.2586094856 + 14.14 ^ -15 = 0.0000000000 + 14.14 ^ 1 = 14.1400000000 + 14.14 ^ -9 = 0.0000000000 + 14.14 ^ 0 = 1.0000000000 + 14.14 ^ -0 = 1.0000000000 + 14.14 ^ 252 = 81893830287657387446140079713887806093576884288543703328783802176508922753380870094003376900318176725198165627317176488631295332728458521626072637389422651709754634844150191850264235770478926203337416116264674564206565124289082609409927041547210316199545928823591027686585730497632744792533.0727815413 + 14.14 ^ -112 = 0.0000000000 + +Number "-16.60" (scale 10) +-16.60 ^ 15 = -2002725006700243463.1471178615 +-16.60 ^ -15 = 0.0000000000 +-16.60 ^ 1 = -16.6000000000 +-16.60 ^ -9 = 0.0000000000 +-16.60 ^ 0 = 1.0000000000 +-16.60 ^ -0 = 1.0000000000 +-16.60 ^ 252 = 29325011162031531635050775473043742335712717807162139294189975794596377719994688259393390430325862997866008694776131070878139493075620575422701181905723221059535177378476880731856824922247604302185770818227621273103971150596854313288134126369153196254990016237048145067458027194360617116808917107675683822643.7551838996 +-16.60 ^ -112 = 0.0000000000 + +Number "0.15" (scale 10) + 0.15 ^ 15 = 0.0000000000 + 0.15 ^ -15 = 2283658260521.1672220051 + 0.15 ^ 1 = 0.1500000000 + 0.15 ^ -9 = 26012294.8737489203 + 0.15 ^ 0 = 1.0000000000 + 0.15 ^ -0 = 1.0000000000 + 0.15 ^ 252 = 0.0000000000 + 0.15 ^ -112 = 189574092538418764958341193234367215745086742520818271114560854632390900314942322598922704092.1046205530 + +Number "-0.01" (scale 10) + -0.01 ^ 15 = 0.0000000000 + -0.01 ^ -15 = -1000000000000000000000000000000.0000000000 + -0.01 ^ 1 = -0.0100000000 + -0.01 ^ -9 = -1000000000000000000.0000000000 + -0.01 ^ 0 = 1.0000000000 + -0.01 ^ -0 = 1.0000000000 + -0.01 ^ 252 = 0.0000000000 + -0.01 ^ -112 = 100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000.0000000000 + +Number "15151324141414.412312232141241" (scale 10) +15151324141414.412312232141241 ^ 15 = 509048123991351801905481953476379185972789524506389464560948346272971876778908444213802402540123245924548973078757287880001162665191012187707496396738218203170247236816923480505943223846447785782345.3558894965 +15151324141414.412312232141241 ^ -15 = 0.0000000000 +15151324141414.412312232141241 ^ 1 = 15151324141414.4123122321 +15151324141414.412312232141241 ^ -9 = 0.0000000000 +15151324141414.412312232141241 ^ 0 = 1.0000000000 +15151324141414.412312232141241 ^ -0 = 1.0000000000 +15151324141414.412312232141241 ^ 252 = 2975421749795666718292864311407249970705086081437807395789379168718267809761515926216519710525556923711393180871882349125480337759668727402072958238900666362552341750552695988372017271582392491705356316948514737089205360282499880482512926893561832567935188520485154057479922893292233844872682027689029924296957873832086320362860520134654280058518517337570653996385278714198685752823835453817905306636319703719003676343516921560023010996505106467350842109482615346014981820723775172695392986401597801626150692206539756529644889137926049906575290564959396735953680592250779460130816876807757766338263686270020029393453575181327870591265373834140347848891333472452106266668645850397235968389042220027274496640159090815418483309643657324273121448493101717217140617069517287371864653153681358830190414615833078002577453411141597016583358385430394744450538495805740402488576124870572258200605831119008100984519684993455060646872766261382240383564392178883974453450433114215183488267147681395487265404247208352661495181304031822061114406175030677886104508679211172804603630316447723815907701460914622481206853022006681302191940743481903991732602477879503644713688600025822484351386994709104484371310424352144611218737196401824457866949669228902625541115988570606278592188602331451576075786613348336629409301707863923798082511203519536680273830467529869070112013346223720130183581189201489843066803035998524636580843999168622007134798723860720169157200004627398709928941733609441557160972211113022692009799237864185615460855228045985383589616750868474559577038584404446390706055987175018852877810774653462856565006598191028334508282011970034047209214176244147503985386832987247129380772291221015035166871079932982021644848487302418889155646720341011763574205760582552545432674974794783974025401318074084939141860755094923101801284442989344181743012614781021983935394731085008059924819771193595363859258571474767439534580638568746666210621240873673676940762489862112336626521441471577301366647762037305798100798711822457474507172500970023127288841824797039587587687760406935930088932018738492033507792817250533066953710174207685876451854460620309225706829752706450285622677922594957647037672524232255747269667789144401086986842640538153043741101238245322300993710394384754508967946211337487952324876892016919924636143376046118565299301806000686710931777881411145696867371682466218379864851343043041312758162391699150775018231599537746501756924961427444527995061269251565547747098676254156910141573235165420989417824245466381006116578002121746837672733849938657667872006918460874232266046864354612969306512425002050502769904919642157609172541701550215596501139800180259552618049103708500764672848369198536220300039766241517053637402993685274740246644140211865650547971680391614831119804648079596819224703795536455681460692071824945358084847698465553826334065350185771802401947633785300181386909348829848309501929340612695571623266869616638304357843374880496058625355636022120527400443841025788264209843812042625792300865583082505414465908017500188208987693716855836263772885824776988984333362684311002647195832946927199653846403980218407171091513992332604667414925751436017212580993860794349764631915036822374405575551253454423848395310883501116565831195963321659796880685759075194666868292856205113353111159407896940446955956749209.1357309004 +15151324141414.412312232141241 ^ -112 = 0.0000000000 + +Number "141241241241241248267654747412" (scale 10) +141241241241241248267654747412 ^ 15 = 177591789298838947421924937418435926483207726032941337126565686201154837989992676792469043927153886362407093561688979426718344848540943458245870720268722797084708626211824507010348223033844880992203548347580375252630658556528592298319547225224912135982081686378909626742998484437641863458021277126578238452879997277005795795020835662533892290564198652316605246272512413311084386660488961246461538425989780621930750572963428718487554490368.0000000000 +141241241241241248267654747412 ^ -15 = 0.0000000000 +141241241241241248267654747412 ^ 1 = 141241241241241248267654747412.0000000000 +141241241241241248267654747412 ^ -9 = 0.0000000000 +141241241241241248267654747412 ^ 0 = 1.0000000000 +141241241241241248267654747412 ^ -0 = 1.0000000000 +141241241241241248267654747412 ^ 252 = 61702737614252266948752156824258824995959599972302320510716529982037298313739133760034183411877915226877565852198668440669791795617272708708492070599904800132098399232978789534072748261835151242629120913793827710449864804330737116696282852494151262231643262037509694372134135894276508967194766869889867303622326767458055285775054658565704105389065774707528077134226867060689181155582362175947504766959470020293226474023546968232460082444503912720021117368360386834444296061143129153351909427031876573177512880122064185569107842900553293550154759961105705458193916741180207197209621223094253214396769871913256823886396746414009606236401337641975159583111263046921277256870910247139612445619959067659323246784229705879779504519921968053141823090638689328500711053428918278999419825533334808914479125124304786443895285883492931266287931531729858829237461074566895486671242348082833878884776228517928133923449282430038745609287058924814413730985957861336607098992582653851368483642246306509531450226330989261394231526444743678146424987980458014955926233473826334115019067286145968725016152043997048698852555649504111446712360855837865476980303396801134199935075659852802884819197423764473479086847306010829721607657507579637914756242599185804487547475812412827298700399642854781876339506969947557967510353980827513717983184885292080872213577420468280210432294624241752834053309219199045973319521987975932929891565623163042217388611918307622483024452293173783579391106196420370018442330967765451700900306909737464257886906607274005552053888483483054020641145694539605337937744331035605313696665428737416632101002639001569789365490404722602805032116136122275148638414611401101532057194278420768914301864998398142593349158088898737725867540737097890425196584907775942120540985239557579236871185430362654320129291837576497911030976672546705634824923076862019595021475580215199988383732424366096745105419692283398918642003304826916218038854944067948189983518814346644870415937764601253868517196737959263980145504426078052198314663327843039356842201353163719488533902336353096176525901730253653712920740921897375508115858541406566947578335604123685577167716291169069652779908723297589735946583152466623845488142430700731769152222928283344575334939855201356733293357748709762620500872007205341239109409378799478441798933979724812650664098561233648811173269759247319678281986289749980800969619374582248288309266623507972587507556836064440726974305255199923316929818005467224051058298675312384426804897772240949920506431569837490498738453686746046335084609377713999742753257733912005654985684955512755879419270408315204048723476100838206401604215791253443838837275686487522888505399721610616356437415942085415265887671279570399360491649770978544857086906535678225672378863908117400571273280456942553369722415886814734827811782754510807365782422375263311630528352008474205547181623751728827140229718189606400373948548748620058632906237446487461463924934038124060220073591275626363882021308939573471462771350670733259367229333311304626874470724822013347119651171746131956616787517406892676075170382597409056665459502450515715507008118773500106516262784295667877075894103798253576492873141052750983781150748301119099230755964674235471935040610571173788486284126167436426267511157335062848567544617136701036212286420938449059910123857126789600929537328019086612659111870130906758076250376040429753144954758559356615713330390937898173091733151870035205661876454153260289142884914806807421852435737887997788694746400471112311576221296382603532103910277379683106908049352464276556594523117986718023572377990452537890518505167077689962380643979739773271443338742938727262511258728095020188473504370112836853749915575721872419520821790251159556333443030459056638192775423075084514851738672355958336265015380193591541922572518272773045049968850063625505732261611074622474965936400258314638193512375533757871806804692087708082031597721541387274042872955965737015089791668860525425793056778509470752578481376934088995106166553613693981904966686690212955481430046830913629928245843069361759411764297658217897316455217217021684202563946301505904193890271187899540947054172542875489231623713315378660419455411924354406330626224728228155305799300626640774404377831301051311563284401393151464407836422401342988060834178957138740247616789909739231830346449366019203847401064438442628508720077238078363655382024999197911442576806729689998326498342414751123237684542163876848231535744093508827210033685403359485309410368756619655335647815457456271662771356876949346139750604173629577681834134842499790368833444683342223857503185849902689436294823704067138925427306607192910954091698318729347145907800382668086667899534178563329442767437901814888337083677115243233418029978664046416826126543919629091736900005600339085979551469129407326751494940405612077593337217212627875249494414287211237336394051868492049328715249941706898117243520077930496903083255415280985218820687648161267600024140589397356281610905118704267436760893073994318473316685154852928135755455009702456043054322286620596648587752781151951829993681040341917550141278881598811594525627199147969934315163608714206891254146576331437603057409575204473025499304932390635935053481842967808825955521225903532223710955029023291335271704387554010604494359260592752707638749226503894251533287510138743058143563627083333323467953930288323174099691963642626244047994212921019096440748326461891434713107878328347627128553535347757109535162399519267201671099780388509076162219198648438104874056150803718036255353941654576267453857313032960105282442901730781706849116468293203141632905459414497264691251443801343872064950763335362229179456002525747120895247485013820030787875667079177283909056955331506973886798132875485898886780825156590108516771255757929317588856294114876639328139025640209294004084324019087271465180464949662380290646689899281765951368313154956095080011378907737551290670716282657109905603462006701850544998109045986412695185702298097876768249839078776688511467326239283983098509833719622936353377241972069901941714532498768716115868591570677576564417673178096539225866975241748028970361222145947727863536827216898514621847057819434576609230609611433988111992050578257972824282582096472184583048169498234433362074234852397751092471572561447915858864173251918950055149910352613561842701231235991010567523708933526326914146617809092162785366466356881319331412699810698600005749537204138000103625418561709921211393425978474528008482773381566071958815629154952129819071276958851406185526598276525973924382616619638927391896061767984462316342879485215181167142278283860974122393376129042592163052368958562549536015824310093694746026464275365131184771894447337638915074864139725976487382152380756354201968249702096723240570755670245536167613452904133125178947690742699517259032210148920215799181139024035965215646290857562866703810691715946409991609804815076179410873897787742683601227701850554553822077038999133518015046632371381193916753753001215985430108776610861216333105848176092629616183087158890392572221891278673318821093507423533826286478376277706846738214944276585022159559546442701466991751438781940501472267762449963577519763912275982471063234586863118222911568589623962096407513817772511232500343850038909537966015828523715127021508912585417674924982540682182384350779611171081429430780526138025312256.0000000000 +141241241241241248267654747412 ^ -112 = 0.0000000000 + +Number "-149143276547656984948124912" (scale 10) +-149143276547656984948124912 ^ 15 = -401841881822660241398409660309345646463535278187389488718526585893873800090729191609465595568674086078015487989884600849819723618141030735892646637579078630759905628572464757376301450900008605507116286859140901254928168279833198528761329808672095261265618307499605901098109261736293336298350347017449323858811047847238969925531775390894165290898723086447624518554747816961256145036283496890368.0000000000 +-149143276547656984948124912 ^ -15 = 0.0000000000 +-149143276547656984948124912 ^ 1 = -149143276547656984948124912.0000000000 +-149143276547656984948124912 ^ -9 = 0.0000000000 +-149143276547656984948124912 ^ 0 = 1.0000000000 +-149143276547656984948124912 ^ -0 = 1.0000000000 +-149143276547656984948124912 ^ 252 = 55992175588333605542254063511278186461754574279839591709604310477562564689608443402403312222078711893971235561416950804719506082702379684733623971919408777114548100892216614108951324353246556535017960316014312222959702094808816331434094822650280427440063882576116695336500221646817757077369708529723823620336810350659576930581023887896886330503478109619863448515840946841190553234682382107049366084010115954164628751537372573754962628376851714140066914283347218349289869214926741444216767437164014398845666639858144658260377876458100579298055950974326675298651898083944350131609483093051504290661822668587661388602474880915186436725755772988399461893678236514411268113165984474267116617738961793643422894941375678592236663229748980138556108251262049269924802865828570213870281755635578142765872996532114681632125265545602095618091845037482357075517681870091778157619627960547482657474217943178159685376848804852485477702194998676631497601923456769896045663194900447061246337026655179495322126687564510781039271062988745945476519142221837023581656486042843501094480484668735886050383956287988798135101996785626705798462084512791858856000486173266205660052015961534265640905209313211125294627662693933297211009401491531951462889268507817897027972228709128736864008707571464724272762871838758126048184870005667275664845553774616604225572310912906152876060860153081105424979281592600839984125772468965874379832364640972866833334251698542584896314049237205644695553901317638647614318787708386467733615459065054365995897250270550067664267902152593317177099901109073008588486059511534052232495744462484660835773139005865467174339411663680328459135341612957853618227176487790111649236830978394018719354265785673205669861260376582410982507319458447629229410566850388275381698880420276787659514779189425772384786376987076804655929761620083736939837925917040082332479217674557289518688000706235667753826358380348450542285250406537012741099810396394118895119698580737840025778922487867828224721621696636134003638036732306141123387999132026332818408631403997196873195235009010958949928160436198665838441080496516462280678580659979676597569859757823014996017746962217866836145864024569035599176373962484096890443265839324221819146344682358316417403925617439797384999832590030653638024893217809739723987689363496190587792737138664106310356621671611551929705606372447129233289185995118668079125240237102990263869918086723137110005986280396651777574801894806896216800028637569274623115952691705831786855142876372495042729622496416156065929528185678346792948178219730451297126977072400452744745442561264775799188074289500187819445634298783592673376925950468898124384645088176602526214362158710249480242291627057463890117803354864730141461123747252541155347156400786777580958799766203254109472380735138017589461079608897268030232306639370404014163374433657561727131953203599087127600881156801848610207055453714038310061358219048264213893904654160135134848687217172657051056772433684382081263303256605397966956854911368891641655435481304103776752873688058287104569168817065852794438626208265013522214226436602866008965183348172506623891029487173951745639310845051694186685631363145511797791938639666555812388418639006943045236047084104158886785565539716175502784568418794921820159931670582549209945162053950333817714412469166667825536844480057325499652926508866184039633216003293080890783177150560019167662732664450429084752291624787970859408952386737598480289325786960288529818745254001900176106836194717861463240979411026596588950731407070101543407905496821261729510687348937796821412471929466014397692973783859204087752392409288320366943382998932124935828714903875879810782071015247527108459417616171666066601727254393827585882211498062627962114450203721750315845815155021697506333572413625746275557635360793506459802530913864986879539619322648374208957842152789346087113544250046274926635250206832991054325050621508788782189089586427470337274776955856080752508329602238857381659447673739378703749938045217491297442880220072951767019308302182120866450686427636523729778183001298464279351451928526859912935358200922256687852217293342222770676364112675875706669220947500716778555631580892140965700894865432467415441058797916958701058613262784771287521375767679654675090202761215911050514394041232506701642838754586624728822744306994328186360720405674825737265107963504397795466141078520379635918101893732280384966090817776697492519589958581600274196260931284807107964025197355095278741484748256594018281189059520971488155232871826436474292672923671151932746647309516440171397028945399089869838594185867352632608780487775648305026266036688377754295386304268591067685420141876930761382919961712554949830460502589375485003677323126912620975565484588745962938195716999584478642921595627905781087037922126946614604204487324577624535390564298909897280520685096190766392954666547140142042912418332011086985860840135170509805299821832401396881784927340948572834668444512971438394035995512132253672305434131965163273499166432580879149169510915828895700480265882084820049681597304529404116243028731782666223146293276746325246389991906529999778889818267030526761479627741075225237850144113075710406764114186915812713229218993793341952820039777430468508433933966568805816476723519852998663547981299673789287916637548338855826997859936126186385134251146763787920958572343543991163814387927189271315975774832941216796979710625756748626599205479744652593376548351502299670239068557344870045319781398252470403969497344298988472389766532157945149006071078612248352124554889096445319251898085100982701259010029952682041054540095054811702903956018540222632923457127530247486958765495736895235378687056667532898872772226646337210525647648255272837299826798955752834895854767176324936924389475920748073831818096942140696117576092974900312853119224158903042363552736819426608351322112183508012056364946319635528219546604362373666786411115604890681450553292576529326479658711947191604698823116618052429048783309728106697011619648892228467141759801681403110446555051361286503728164299660143689758025052636205563319986489358179027312653555993846959468256374852368137107311301180752627493394581971715347510238354749743466448707369816187860965509171840845607662996123030730513040791692384884335938330381280366200730869537716461479253093292207520004802508144089109220447459994338712030132586927643258314767215456297941961060686384969263988976767300178026850202211882886115891867194452898699949334970606719473728841882215132953439233323551171404920756819606555668846000416712701888993858314625083201880134723672826428864990888175557418214752256.0000000000 +-149143276547656984948124912 ^ -112 = 0.0000000000 + +Number "-132132245132134.1515123765412" (scale 10) +-132132245132134.1515123765412 ^ 15 = -65332942084431118671715132691017936828728297532817376297090067844431557352758338594306899592493441083845683845573112529065975725871957965764869599362286162979915656223771056616561461958797695558519631556073805440.8743426066 +-132132245132134.1515123765412 ^ -15 = 0.0000000000 +-132132245132134.1515123765412 ^ 1 = -132132245132134.1515123765 +-132132245132134.1515123765412 ^ -9 = 0.0000000000 +-132132245132134.1515123765412 ^ 0 = 1.0000000000 +-132132245132134.1515123765412 ^ -0 = 1.0000000000 +-132132245132134.1515123765412 ^ 252 = 3120478727852745944038201629388077518619819959072778583628662888334880902703519914956089883839049682560676318469032398877418258855834502244373291879606411026505240673439178203360337045239911911401143426214698971271446651876647780290878775496277056268500023561875074401483645577685406485543728816046104697722586058947707076996271324455741296959565524792629154208973708365548001942744414873486576135834495119053638656800810039027025111460331113258212007994067919145384836907081609212431099297641564986044622031456724633662129385296885404614299495960919762385823257644295402159220952463360942737103080118148157378054224237643480822424971993488886224977914497478451840908909543741696948530676782472589176085509233818251158281114742053469197512119057322174380982258491102193374311292374479260658074669161655748423441627187461082149885494689147360706871450098031935056173199096293719222350434764175998710688281702890509097348360359424470253307347729933523000107901985428772530720331531602039527737982138204747133438804098370520558033130528360187686745723186175166911233242211471504301640494824606523094514433764325212802493051981781145617974800929022725476602466144772127930440805434165616744472255347819425748816302231931654549386733679017858450849437143025476899823162000718594064313231515875922351213500222461590573572602190403067267602652736825180691112504152614488461179376450513626420818955027469144025952675277586101528625525962975039500773275778271940118869825449096270757603664530201369396099033029284457100867407697277568670150540402862276543512075434177386868941061854045298572535075420109196042754099960063991947561825511501510308275562634049421237378673160125072162000008236844954128527856723821733254208508907735993281091035579467181540332944219703979021157597903396359158593344664084014589368086779575978259251720029980655644790465254951448194710584230098489732637703819106720935376496517841788507273903175469897103859611331100545364249483088831520541660951382659294376726172983396374439867149870807521191671805902233698315119009713542754446376327365814873898054136563782777104472609469109963308092044568027239290595186247761999234668032081218755268222207063445264559530223287160963458677689875951320832784965806613254975793162543596534222371458668498571166837299325731596777670132830001546839544284346351393964824730839639301046179558652696082308824070477223869283054978658326855126932082754121256920575641227926598676719724725719222484148625020220494108342394030408253089899891700400203336918661663751523788622735773864833731552284954237137952497719069892440806380625733323869952845631051069940707365414990621967523332677411935527536814983008403556834213618522880787952621206983027073172116156651218377851746340174808375254284001435816118302249193303397466776845851743890519082821148416722135170698614740907867435963618925044956902958148324272894672030283819168758463855285701991252475351862754820487744045764868396684777846686070069982217881227849496760269225414231083805733290534151123406915650028121222263850640283860639197520959825152626458400452325975452613482437167476356009654121926543290145079478070360029730020980795208355698196814222112480898983202043419519375263651949181097645574205178523255626929768121920234439313474099206104455976950857197860880977258241730976397804678973733516947554105951667082135434125689463359251547871548911802646544683845207784833032667495833535290224433943754770189766271196987201022608066882057869125850499995301677418321251261832661046278653566452890787168741868239138468494682699662284065061316757322733605.4563495790 +-132132245132134.1515123765412 ^ -112 = 0.0000000000 + +Number "0.1322135476547459213732911312" (scale 10) +0.1322135476547459213732911312 ^ 15 = 0.0000000000 +0.1322135476547459213732911312 ^ -15 = 15165635699683.8093525277 +0.1322135476547459213732911312 ^ 1 = 0.1322135476 +0.1322135476547459213732911312 ^ -9 = 81005847.7955131768 +0.1322135476547459213732911312 ^ 0 = 1.0000000000 +0.1322135476547459213732911312 ^ -0 = 1.0000000000 +0.1322135476547459213732911312 ^ 252 = 0.0000000000 +0.1322135476547459213732911312 ^ -112 = 261271852670585926399109608993686784219014928770917821092988518427507780528448900476275115673665845.0719674616 + +Number "-0.123912932193769965476541321" (scale 10) +-0.123912932193769965476541321 ^ 15 = 0.0000000000 +-0.123912932193769965476541321 ^ -15 = -40109799462729.8625078080 +-0.123912932193769965476541321 ^ 1 = -0.1239129321 +-0.123912932193769965476541321 ^ -9 = -145194543.0878622400 +-0.123912932193769965476541321 ^ 0 = 1.0000000000 +-0.123912932193769965476541321 ^ -0 = 1.0000000000 +-0.123912932193769965476541321 ^ 252 = 0.0000000000 +-0.123912932193769965476541321 ^ -112 = 372337687215014577843846097845819604950292238064034167723169672020440891758727112526694844172394015451.7302535898 \ No newline at end of file diff --git a/ext/bcmath/tests/bcpow_basic.phpt b/ext/bcmath/tests/bcpow_basic.phpt deleted file mode 100644 index ebcfb76c42617..0000000000000 --- a/ext/bcmath/tests/bcpow_basic.phpt +++ /dev/null @@ -1,383 +0,0 @@ ---TEST-- -bcpow() function - extended basic tests ---EXTENSIONS-- -bcmath ---INI-- -bcmath.scale=0 ---FILE-- - ---EXPECT-- -Number "15" (scale 0) - 15 × 15 = 437893890380859375 - 15 × -15 = 0 - 15 × 1 = 15 - 15 × -9 = 0 - 15 × 0 = 1 - 15 × -0 = 1 - 15 × 252 = 237135886481351297382468574917313144844970356302221777632832615638003070736580081217360793962070064247594576249396872345556164659881002366207912047265309059413892077092997608382858888266273629252398653205357976938870120670782142034597069710705445432682146079950147310455577098764479160308837890625 - 15 × -112 = 0 - -Number "-15" (scale 0) - -15 × 15 = -437893890380859375 - -15 × -15 = 0 - -15 × 1 = -15 - -15 × -9 = 0 - -15 × 0 = 1 - -15 × -0 = 1 - -15 × 252 = 237135886481351297382468574917313144844970356302221777632832615638003070736580081217360793962070064247594576249396872345556164659881002366207912047265309059413892077092997608382858888266273629252398653205357976938870120670782142034597069710705445432682146079950147310455577098764479160308837890625 - -15 × -112 = 0 - -Number "1" (scale 0) - 1 × 15 = 1 - 1 × -15 = 1 - 1 × 1 = 1 - 1 × -9 = 1 - 1 × 0 = 1 - 1 × -0 = 1 - 1 × 252 = 1 - 1 × -112 = 1 - -Number "-9" (scale 0) - -9 × 15 = -205891132094649 - -9 × -15 = 0 - -9 × 1 = -9 - -9 × -9 = 0 - -9 × 0 = 1 - -9 × -0 = 1 - -9 × 252 = 2945183635465464884233206633443008848559894187106131466268028902439028615518295534220079169301330491447962555905286712315981330452878058357582386904241524088181763471075659119460152769761830870007779820098802358876968679265201323425586410081 - -9 × -112 = 0 - -Number "0" (scale 0) - 0 × 15 = 0 - 0 × -15 = 0 - 0 × 1 = 0 - 0 × -9 = 0 - 0 × 0 = 1 - 0 × -0 = 1 - 0 × 252 = 0 - 0 × -112 = 0 - -Number "-0" (scale 0) - -0 × 15 = 0 - -0 × -15 = 0 - -0 × 1 = 0 - -0 × -9 = 0 - -0 × 0 = 1 - -0 × -0 = 1 - -0 × 252 = 0 - -0 × -112 = 0 - -Number "252" (scale 0) - 252 × 15 = 1049562032118382425513949173821472768 - 252 × -15 = 0 - 252 × 1 = 252 - 252 × -9 = 0 - 252 × 0 = 1 - 252 × -0 = 1 - 252 × 252 = 142212010733424647125806541813713973266552845448041013743767421605354690415544328196152173390963803494710443230142152775687771944805429044982729796870857181947776572826160793933424942988750037827638341986183789792079484880609013515717131451507203060282065264043070502125106179548342207047711204933650239424460841202157152719662980652213693426926863084348529493037513389175805577626219903234384208039735661457745854089305800218117427842428649306815115886661640301037762482527923343983853507875264930793965916131347421096416232894153340276842687468868552274843085150094307684610419227652811804917758213226496 - 252 × -112 = 0 - -Number "-112" (scale 0) - -112 × 15 = -5473565759257037859954903482368 - -112 × -15 = 0 - -112 × 1 = -112 - -112 × -9 = 0 - -112 × 0 = 1 - -112 × -0 = 1 - -112 × 252 = 2528958559509291693508169626548016243760525615786379976651267082288161074806837567146354242426675448089179587223689918667106749284121965637887934532709154725528081671334320643858146400820666287506930741579829377389324701928200642059190071982670723834096616484481264403390509754202256821825886418273918096647296731861068941003342202311747852949747419032091731983573265045376333262301085406296848909763397511959941544798830761308589095475080050282796818166220650002245272286955283850226653729461037771414650027776147456 - -112 × -112 = 0 - -Number "0.00" (scale 0) - 0.00 × 15 = 0 - 0.00 × -15 = 0 - 0.00 × 1 = 0 - 0.00 × -9 = 0 - 0.00 × 0 = 1 - 0.00 × -0 = 1 - 0.00 × 252 = 0 - 0.00 × -112 = 0 - -Number "-0.00" (scale 0) - -0.00 × 15 = 0 - -0.00 × -15 = 0 - -0.00 × 1 = 0 - -0.00 × -9 = 0 - -0.00 × 0 = 1 - -0.00 × -0 = 1 - -0.00 × 252 = 0 - -0.00 × -112 = 0 - -Number "14.14" (scale 0) - 14.14 × 15 = 180609729388653367 - 14.14 × -15 = 0 - 14.14 × 1 = 14 - 14.14 × -9 = 0 - 14.14 × 0 = 1 - 14.14 × -0 = 1 - 14.14 × 252 = 81893830287657387446140079713887806093576884288543703328783802176508922753380870094003376900318176725198165627317176488631295332728458521626072637389422651709754634844150191850264235770478926203337416116264674564206565124289082609409927041547210316199545928823591027686585730497632744792533 - 14.14 × -112 = 0 - -Number "-16.60" (scale 0) --16.60 × 15 = -2002725006700243463 --16.60 × -15 = 0 --16.60 × 1 = -16 --16.60 × -9 = 0 --16.60 × 0 = 1 --16.60 × -0 = 1 --16.60 × 252 = 29325011162031531635050775473043742335712717807162139294189975794596377719994688259393390430325862997866008694776131070878139493075620575422701181905723221059535177378476880731856824922247604302185770818227621273103971150596854313288134126369153196254990016237048145067458027194360617116808917107675683822643 --16.60 × -112 = 0 - -Number "0.15" (scale 0) - 0.15 × 15 = 0 - 0.15 × -15 = 2283658260521 - 0.15 × 1 = 0 - 0.15 × -9 = 26012294 - 0.15 × 0 = 1 - 0.15 × -0 = 1 - 0.15 × 252 = 0 - 0.15 × -112 = 189574092538418764958341193234367215745086742520818271114560854632390900314942322598922704092 - -Number "-0.01" (scale 0) - -0.01 × 15 = 0 - -0.01 × -15 = -1000000000000000000000000000000 - -0.01 × 1 = 0 - -0.01 × -9 = -1000000000000000000 - -0.01 × 0 = 1 - -0.01 × -0 = 1 - -0.01 × 252 = 0 - -0.01 × -112 = 100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 - -Number "1414.412312232141241" (scale 0) -1414.412312232141241 × 15 = 181401311345004795369605348243285615744264918219 -1414.412312232141241 × -15 = 0 -1414.412312232141241 × 1 = 1414 -1414.412312232141241 × -9 = 0 -1414.412312232141241 × 0 = 1 -1414.412312232141241 × -0 = 1 -1414.412312232141241 × 252 = 88137168372666155804276495888737017565625188638155610906073316863891843320209228429385459358700876956099493254286705412798169482492099355760118256405004521410502409380482979616205204763164274984079035060505522944560782048471974647094875802745042305471941726529061645806690049668231712810607048046215822585537680231309871526203378473994191056482542621083433249873256740456202966865602420914295256907342241117457321018827844364210473247086616620208279353513472352052663849994485380858895191637653803060163638226611530802000741575923441458533998708849302187532129439615530480573791657814606600833250886238137718388081368496703759038475953104308366982392163641103640160792529936819416987286935547975099937169920389706687266005474641429822696630088998290423392470284448349396681711686536386207832962 -1414.412312232141241 × -112 = 0 - -Number "-132132245132134.1515123765412" (scale 0) --132132245132134.1515123765412 × 15 = -65332942084431118671715132691017936828728297532817376297090067844431557352758338594306899592493441083845683845573112529065975725871957965764869599362286162979915656223771056616561461958797695558519631556073805440 --132132245132134.1515123765412 × -15 = 0 --132132245132134.1515123765412 × 1 = -132132245132134 --132132245132134.1515123765412 × -9 = 0 --132132245132134.1515123765412 × 0 = 1 --132132245132134.1515123765412 × -0 = 1 --132132245132134.1515123765412 × 252 = 3120478727852745944038201629388077518619819959072778583628662888334880902703519914956089883839049682560676318469032398877418258855834502244373291879606411026505240673439178203360337045239911911401143426214698971271446651876647780290878775496277056268500023561875074401483645577685406485543728816046104697722586058947707076996271324455741296959565524792629154208973708365548001942744414873486576135834495119053638656800810039027025111460331113258212007994067919145384836907081609212431099297641564986044622031456724633662129385296885404614299495960919762385823257644295402159220952463360942737103080118148157378054224237643480822424971993488886224977914497478451840908909543741696948530676782472589176085509233818251158281114742053469197512119057322174380982258491102193374311292374479260658074669161655748423441627187461082149885494689147360706871450098031935056173199096293719222350434764175998710688281702890509097348360359424470253307347729933523000107901985428772530720331531602039527737982138204747133438804098370520558033130528360187686745723186175166911233242211471504301640494824606523094514433764325212802493051981781145617974800929022725476602466144772127930440805434165616744472255347819425748816302231931654549386733679017858450849437143025476899823162000718594064313231515875922351213500222461590573572602190403067267602652736825180691112504152614488461179376450513626420818955027469144025952675277586101528625525962975039500773275778271940118869825449096270757603664530201369396099033029284457100867407697277568670150540402862276543512075434177386868941061854045298572535075420109196042754099960063991947561825511501510308275562634049421237378673160125072162000008236844954128527856723821733254208508907735993281091035579467181540332944219703979021157597903396359158593344664084014589368086779575978259251720029980655644790465254951448194710584230098489732637703819106720935376496517841788507273903175469897103859611331100545364249483088831520541660951382659294376726172983396374439867149870807521191671805902233698315119009713542754446376327365814873898054136563782777104472609469109963308092044568027239290595186247761999234668032081218755268222207063445264559530223287160963458677689875951320832784965806613254975793162543596534222371458668498571166837299325731596777670132830001546839544284346351393964824730839639301046179558652696082308824070477223869283054978658326855126932082754121256920575641227926598676719724725719222484148625020220494108342394030408253089899891700400203336918661663751523788622735773864833731552284954237137952497719069892440806380625733323869952845631051069940707365414990621967523332677411935527536814983008403556834213618522880787952621206983027073172116156651218377851746340174808375254284001435816118302249193303397466776845851743890519082821148416722135170698614740907867435963618925044956902958148324272894672030283819168758463855285701991252475351862754820487744045764868396684777846686070069982217881227849496760269225414231083805733290534151123406915650028121222263850640283860639197520959825152626458400452325975452613482437167476356009654121926543290145079478070360029730020980795208355698196814222112480898983202043419519375263651949181097645574205178523255626929768121920234439313474099206104455976950857197860880977258241730976397804678973733516947554105951667082135434125689463359251547871548911802646544683845207784833032667495833535290224433943754770189766271196987201022608066882057869125850499995301677418321251261832661046278653566452890787168741868239138468494682699662284065061316757322733605 --132132245132134.1515123765412 × -112 = 0 - -Number "0.1322135476547459213732911312" (scale 0) -0.1322135476547459213732911312 × 15 = 0 -0.1322135476547459213732911312 × -15 = 15165635699683 -0.1322135476547459213732911312 × 1 = 0 -0.1322135476547459213732911312 × -9 = 81005847 -0.1322135476547459213732911312 × 0 = 1 -0.1322135476547459213732911312 × -0 = 1 -0.1322135476547459213732911312 × 252 = 0 -0.1322135476547459213732911312 × -112 = 261271852670585926399109608993686784219014928770917821092988518427507780528448900476275115673665845 - -Number "-0.123912932193769965476541321" (scale 0) --0.123912932193769965476541321 × 15 = 0 --0.123912932193769965476541321 × -15 = -40109799462729 --0.123912932193769965476541321 × 1 = 0 --0.123912932193769965476541321 × -9 = -145194543 --0.123912932193769965476541321 × 0 = 1 --0.123912932193769965476541321 × -0 = 1 --0.123912932193769965476541321 × 252 = 0 --0.123912932193769965476541321 × -112 = 372337687215014577843846097845819604950292238064034167723169672020440891758727112526694844172394015451 - -Number "15" (scale 10) - 15 × 15 = 437893890380859375.0000000000 - 15 × -15 = 0.0000000000 - 15 × 1 = 15.0000000000 - 15 × -9 = 0.0000000000 - 15 × 0 = 1.0000000000 - 15 × -0 = 1.0000000000 - 15 × 252 = 237135886481351297382468574917313144844970356302221777632832615638003070736580081217360793962070064247594576249396872345556164659881002366207912047265309059413892077092997608382858888266273629252398653205357976938870120670782142034597069710705445432682146079950147310455577098764479160308837890625.0000000000 - 15 × -112 = 0.0000000000 - -Number "-15" (scale 10) - -15 × 15 = -437893890380859375.0000000000 - -15 × -15 = 0.0000000000 - -15 × 1 = -15.0000000000 - -15 × -9 = 0.0000000000 - -15 × 0 = 1.0000000000 - -15 × -0 = 1.0000000000 - -15 × 252 = 237135886481351297382468574917313144844970356302221777632832615638003070736580081217360793962070064247594576249396872345556164659881002366207912047265309059413892077092997608382858888266273629252398653205357976938870120670782142034597069710705445432682146079950147310455577098764479160308837890625.0000000000 - -15 × -112 = 0.0000000000 - -Number "1" (scale 10) - 1 × 15 = 1.0000000000 - 1 × -15 = 1.0000000000 - 1 × 1 = 1.0000000000 - 1 × -9 = 1.0000000000 - 1 × 0 = 1.0000000000 - 1 × -0 = 1.0000000000 - 1 × 252 = 1.0000000000 - 1 × -112 = 1.0000000000 - -Number "-9" (scale 10) - -9 × 15 = -205891132094649.0000000000 - -9 × -15 = 0.0000000000 - -9 × 1 = -9.0000000000 - -9 × -9 = -0.0000000025 - -9 × 0 = 1.0000000000 - -9 × -0 = 1.0000000000 - -9 × 252 = 2945183635465464884233206633443008848559894187106131466268028902439028615518295534220079169301330491447962555905286712315981330452878058357582386904241524088181763471075659119460152769761830870007779820098802358876968679265201323425586410081.0000000000 - -9 × -112 = 0.0000000000 - -Number "0" (scale 10) - 0 × 15 = 0.0000000000 - 0 × -15 = 0.0000000000 - 0 × 1 = 0.0000000000 - 0 × -9 = 0.0000000000 - 0 × 0 = 1.0000000000 - 0 × -0 = 1.0000000000 - 0 × 252 = 0.0000000000 - 0 × -112 = 0.0000000000 - -Number "-0" (scale 10) - -0 × 15 = 0.0000000000 - -0 × -15 = 0.0000000000 - -0 × 1 = 0.0000000000 - -0 × -9 = 0.0000000000 - -0 × 0 = 1.0000000000 - -0 × -0 = 1.0000000000 - -0 × 252 = 0.0000000000 - -0 × -112 = 0.0000000000 - -Number "252" (scale 10) - 252 × 15 = 1049562032118382425513949173821472768.0000000000 - 252 × -15 = 0.0000000000 - 252 × 1 = 252.0000000000 - 252 × -9 = 0.0000000000 - 252 × 0 = 1.0000000000 - 252 × -0 = 1.0000000000 - 252 × 252 = 142212010733424647125806541813713973266552845448041013743767421605354690415544328196152173390963803494710443230142152775687771944805429044982729796870857181947776572826160793933424942988750037827638341986183789792079484880609013515717131451507203060282065264043070502125106179548342207047711204933650239424460841202157152719662980652213693426926863084348529493037513389175805577626219903234384208039735661457745854089305800218117427842428649306815115886661640301037762482527923343983853507875264930793965916131347421096416232894153340276842687468868552274843085150094307684610419227652811804917758213226496.0000000000 - 252 × -112 = 0.0000000000 - -Number "-112" (scale 10) - -112 × 15 = -5473565759257037859954903482368.0000000000 - -112 × -15 = 0.0000000000 - -112 × 1 = -112.0000000000 - -112 × -9 = 0.0000000000 - -112 × 0 = 1.0000000000 - -112 × -0 = 1.0000000000 - -112 × 252 = 2528958559509291693508169626548016243760525615786379976651267082288161074806837567146354242426675448089179587223689918667106749284121965637887934532709154725528081671334320643858146400820666287506930741579829377389324701928200642059190071982670723834096616484481264403390509754202256821825886418273918096647296731861068941003342202311747852949747419032091731983573265045376333262301085406296848909763397511959941544798830761308589095475080050282796818166220650002245272286955283850226653729461037771414650027776147456.0000000000 - -112 × -112 = 0.0000000000 - -Number "0.00" (scale 10) - 0.00 × 15 = 0.0000000000 - 0.00 × -15 = 0.0000000000 - 0.00 × 1 = 0.0000000000 - 0.00 × -9 = 0.0000000000 - 0.00 × 0 = 1.0000000000 - 0.00 × -0 = 1.0000000000 - 0.00 × 252 = 0.0000000000 - 0.00 × -112 = 0.0000000000 - -Number "-0.00" (scale 10) - -0.00 × 15 = 0.0000000000 - -0.00 × -15 = 0.0000000000 - -0.00 × 1 = 0.0000000000 - -0.00 × -9 = 0.0000000000 - -0.00 × 0 = 1.0000000000 - -0.00 × -0 = 1.0000000000 - -0.00 × 252 = 0.0000000000 - -0.00 × -112 = 0.0000000000 - -Number "14.14" (scale 10) - 14.14 × 15 = 180609729388653367.2586094856 - 14.14 × -15 = 0.0000000000 - 14.14 × 1 = 14.1400000000 - 14.14 × -9 = 0.0000000000 - 14.14 × 0 = 1.0000000000 - 14.14 × -0 = 1.0000000000 - 14.14 × 252 = 81893830287657387446140079713887806093576884288543703328783802176508922753380870094003376900318176725198165627317176488631295332728458521626072637389422651709754634844150191850264235770478926203337416116264674564206565124289082609409927041547210316199545928823591027686585730497632744792533.0727815413 - 14.14 × -112 = 0.0000000000 - -Number "-16.60" (scale 10) --16.60 × 15 = -2002725006700243463.1471178615 --16.60 × -15 = 0.0000000000 --16.60 × 1 = -16.6000000000 --16.60 × -9 = 0.0000000000 --16.60 × 0 = 1.0000000000 --16.60 × -0 = 1.0000000000 --16.60 × 252 = 29325011162031531635050775473043742335712717807162139294189975794596377719994688259393390430325862997866008694776131070878139493075620575422701181905723221059535177378476880731856824922247604302185770818227621273103971150596854313288134126369153196254990016237048145067458027194360617116808917107675683822643.7551838996 --16.60 × -112 = 0.0000000000 - -Number "0.15" (scale 10) - 0.15 × 15 = 0.0000000000 - 0.15 × -15 = 2283658260521.1672220051 - 0.15 × 1 = 0.1500000000 - 0.15 × -9 = 26012294.8737489203 - 0.15 × 0 = 1.0000000000 - 0.15 × -0 = 1.0000000000 - 0.15 × 252 = 0.0000000000 - 0.15 × -112 = 189574092538418764958341193234367215745086742520818271114560854632390900314942322598922704092.1046205530 - -Number "-0.01" (scale 10) - -0.01 × 15 = 0.0000000000 - -0.01 × -15 = -1000000000000000000000000000000.0000000000 - -0.01 × 1 = -0.0100000000 - -0.01 × -9 = -1000000000000000000.0000000000 - -0.01 × 0 = 1.0000000000 - -0.01 × -0 = 1.0000000000 - -0.01 × 252 = 0.0000000000 - -0.01 × -112 = 100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000.0000000000 - -Number "1414.412312232141241" (scale 10) -1414.412312232141241 × 15 = 181401311345004795369605348243285615744264918219.6585339214 -1414.412312232141241 × -15 = 0.0000000000 -1414.412312232141241 × 1 = 1414.4123122321 -1414.412312232141241 × -9 = 0.0000000000 -1414.412312232141241 × 0 = 1.0000000000 -1414.412312232141241 × -0 = 1.0000000000 -1414.412312232141241 × 252 = 88137168372666155804276495888737017565625188638155610906073316863891843320209228429385459358700876956099493254286705412798169482492099355760118256405004521410502409380482979616205204763164274984079035060505522944560782048471974647094875802745042305471941726529061645806690049668231712810607048046215822585537680231309871526203378473994191056482542621083433249873256740456202966865602420914295256907342241117457321018827844364210473247086616620208279353513472352052663849994485380858895191637653803060163638226611530802000741575923441458533998708849302187532129439615530480573791657814606600833250886238137718388081368496703759038475953104308366982392163641103640160792529936819416987286935547975099937169920389706687266005474641429822696630088998290423392470284448349396681711686536386207832962.7649745194 -1414.412312232141241 × -112 = 0.0000000000 - -Number "-132132245132134.1515123765412" (scale 10) --132132245132134.1515123765412 × 15 = -65332942084431118671715132691017936828728297532817376297090067844431557352758338594306899592493441083845683845573112529065975725871957965764869599362286162979915656223771056616561461958797695558519631556073805440.8743426066 --132132245132134.1515123765412 × -15 = 0.0000000000 --132132245132134.1515123765412 × 1 = -132132245132134.1515123765 --132132245132134.1515123765412 × -9 = 0.0000000000 --132132245132134.1515123765412 × 0 = 1.0000000000 --132132245132134.1515123765412 × -0 = 1.0000000000 --132132245132134.1515123765412 × 252 = 3120478727852745944038201629388077518619819959072778583628662888334880902703519914956089883839049682560676318469032398877418258855834502244373291879606411026505240673439178203360337045239911911401143426214698971271446651876647780290878775496277056268500023561875074401483645577685406485543728816046104697722586058947707076996271324455741296959565524792629154208973708365548001942744414873486576135834495119053638656800810039027025111460331113258212007994067919145384836907081609212431099297641564986044622031456724633662129385296885404614299495960919762385823257644295402159220952463360942737103080118148157378054224237643480822424971993488886224977914497478451840908909543741696948530676782472589176085509233818251158281114742053469197512119057322174380982258491102193374311292374479260658074669161655748423441627187461082149885494689147360706871450098031935056173199096293719222350434764175998710688281702890509097348360359424470253307347729933523000107901985428772530720331531602039527737982138204747133438804098370520558033130528360187686745723186175166911233242211471504301640494824606523094514433764325212802493051981781145617974800929022725476602466144772127930440805434165616744472255347819425748816302231931654549386733679017858450849437143025476899823162000718594064313231515875922351213500222461590573572602190403067267602652736825180691112504152614488461179376450513626420818955027469144025952675277586101528625525962975039500773275778271940118869825449096270757603664530201369396099033029284457100867407697277568670150540402862276543512075434177386868941061854045298572535075420109196042754099960063991947561825511501510308275562634049421237378673160125072162000008236844954128527856723821733254208508907735993281091035579467181540332944219703979021157597903396359158593344664084014589368086779575978259251720029980655644790465254951448194710584230098489732637703819106720935376496517841788507273903175469897103859611331100545364249483088831520541660951382659294376726172983396374439867149870807521191671805902233698315119009713542754446376327365814873898054136563782777104472609469109963308092044568027239290595186247761999234668032081218755268222207063445264559530223287160963458677689875951320832784965806613254975793162543596534222371458668498571166837299325731596777670132830001546839544284346351393964824730839639301046179558652696082308824070477223869283054978658326855126932082754121256920575641227926598676719724725719222484148625020220494108342394030408253089899891700400203336918661663751523788622735773864833731552284954237137952497719069892440806380625733323869952845631051069940707365414990621967523332677411935527536814983008403556834213618522880787952621206983027073172116156651218377851746340174808375254284001435816118302249193303397466776845851743890519082821148416722135170698614740907867435963618925044956902958148324272894672030283819168758463855285701991252475351862754820487744045764868396684777846686070069982217881227849496760269225414231083805733290534151123406915650028121222263850640283860639197520959825152626458400452325975452613482437167476356009654121926543290145079478070360029730020980795208355698196814222112480898983202043419519375263651949181097645574205178523255626929768121920234439313474099206104455976950857197860880977258241730976397804678973733516947554105951667082135434125689463359251547871548911802646544683845207784833032667495833535290224433943754770189766271196987201022608066882057869125850499995301677418321251261832661046278653566452890787168741868239138468494682699662284065061316757322733605.4563495790 --132132245132134.1515123765412 × -112 = 0.0000000000 - -Number "0.1322135476547459213732911312" (scale 10) -0.1322135476547459213732911312 × 15 = 0.0000000000 -0.1322135476547459213732911312 × -15 = 15165635699683.8093525277 -0.1322135476547459213732911312 × 1 = 0.1322135476 -0.1322135476547459213732911312 × -9 = 81005847.7955131768 -0.1322135476547459213732911312 × 0 = 1.0000000000 -0.1322135476547459213732911312 × -0 = 1.0000000000 -0.1322135476547459213732911312 × 252 = 0.0000000000 -0.1322135476547459213732911312 × -112 = 261271852670585926399109608993686784219014928770917821092988518427507780528448900476275115673665845.0719674616 - -Number "-0.123912932193769965476541321" (scale 10) --0.123912932193769965476541321 × 15 = 0.0000000000 --0.123912932193769965476541321 × -15 = -40109799462729.8625078080 --0.123912932193769965476541321 × 1 = -0.1239129321 --0.123912932193769965476541321 × -9 = -145194543.0878622400 --0.123912932193769965476541321 × 0 = 1.0000000000 --0.123912932193769965476541321 × -0 = 1.0000000000 --0.123912932193769965476541321 × 252 = 0.0000000000 --0.123912932193769965476541321 × -112 = 372337687215014577843846097845819604950292238064034167723169672020440891758727112526694844172394015451.7302535898 \ No newline at end of file diff --git a/ext/bcmath/tests/bcpowmod_negative_exponent.phpt b/ext/bcmath/tests/bcpowmod_negative_exponent.phpt index ece8d479a766b..7814e2bd41d82 100644 --- a/ext/bcmath/tests/bcpowmod_negative_exponent.phpt +++ b/ext/bcmath/tests/bcpowmod_negative_exponent.phpt @@ -11,11 +11,6 @@ try { } catch (\ValueError $e) { echo $e->getMessage() . \PHP_EOL; } -try { - var_dump(bcpowmod('1', '0', '2')); -} catch (\ValueError $e) { - echo $e->getMessage() . \PHP_EOL; -} ?> --EXPECT-- bcpowmod(): Argument #2 ($exponent) must be greater than or equal to 0 diff --git a/ext/bcmath/tests/bcsqrt.phpt b/ext/bcmath/tests/bcsqrt.phpt index 47f8c047438f8..fea07880f91e4 100644 --- a/ext/bcmath/tests/bcsqrt.phpt +++ b/ext/bcmath/tests/bcsqrt.phpt @@ -7,7 +7,7 @@ bcmath.scale=0 --FILE-- diff --git a/ext/bcmath/tests/bcsqrt_variation001.phpt b/ext/bcmath/tests/bcsqrt_variation001.phpt deleted file mode 100644 index dfa1944ab8d8d..0000000000000 --- a/ext/bcmath/tests/bcsqrt_variation001.phpt +++ /dev/null @@ -1,12 +0,0 @@ ---TEST-- -bcsqrt() with argument of 0 ---EXTENSIONS-- -bcmath ---INI-- -bcmath.scale=0 ---FILE-- - ---EXPECT-- -0 diff --git a/ext/bcmath/tests/bcsub_basic.phpt b/ext/bcmath/tests/bcsub.phpt similarity index 96% rename from ext/bcmath/tests/bcsub_basic.phpt rename to ext/bcmath/tests/bcsub.phpt index 5eb306ea8af5f..9d179e384e79b 100644 --- a/ext/bcmath/tests/bcsub_basic.phpt +++ b/ext/bcmath/tests/bcsub.phpt @@ -1,5 +1,5 @@ --TEST-- -bcsub() function - extended basic tests +bcsub() function --EXTENSIONS-- bcmath --INI-- @@ -7,15 +7,15 @@ bcmath.scale=0 --FILE-- Date: Sat, 1 Jul 2023 21:07:52 +0200 Subject: [PATCH 06/15] Added EOLs on the EOF --- ext/bcmath/tests/bcadd.phpt | 2 +- ext/bcmath/tests/bccomp.phpt | 2 +- ext/bcmath/tests/bccomp_variation001.phpt | 2 +- ext/bcmath/tests/bccomp_variation002.phpt | 2 +- ext/bcmath/tests/bcdiv.phpt | 2 +- ext/bcmath/tests/bcmod.phpt | 2 +- ext/bcmath/tests/bcmod_large_numbers.phpt | 2 +- ext/bcmath/tests/bcmul.phpt | 2 +- ext/bcmath/tests/bcmul_large_numbers.phpt | 2 +- ext/bcmath/tests/bcmul_zero.phpt | 2 +- ext/bcmath/tests/bcpow.phpt | 2 +- ext/bcmath/tests/bcsqrt.phpt | 2 +- ext/bcmath/tests/bcsub.phpt | 2 +- ext/bcmath/tests/bcsub_large_numbers.phpt | 2 +- ext/bcmath/tests/bcsub_zero.phpt | 2 +- ext/bcmath/tests/{bug.66364.phpt => bug66364.phpt} | 0 16 files changed, 15 insertions(+), 15 deletions(-) rename ext/bcmath/tests/{bug.66364.phpt => bug66364.phpt} (100%) diff --git a/ext/bcmath/tests/bcadd.phpt b/ext/bcmath/tests/bcadd.phpt index 74ab959b44449..9fe1baf09e157 100644 --- a/ext/bcmath/tests/bcadd.phpt +++ b/ext/bcmath/tests/bcadd.phpt @@ -341,4 +341,4 @@ Number "-0.01" (scale 10) -0.01 + 141241241241241248267654747412 = 141241241241241248267654747411.9900000000 -0.01 + -149143276547656984948124912 = -149143276547656984948124912.0100000000 -0.01 + 0.1322135476547459213732911312 = 0.1222135476 - -0.01 + -0.123912932193769965476541321 = -0.1339129321 \ No newline at end of file + -0.01 + -0.123912932193769965476541321 = -0.1339129321 diff --git a/ext/bcmath/tests/bccomp.phpt b/ext/bcmath/tests/bccomp.phpt index 2fffddebe836d..6bffac75a074a 100644 --- a/ext/bcmath/tests/bccomp.phpt +++ b/ext/bcmath/tests/bccomp.phpt @@ -21,4 +21,4 @@ echo bccomp("0.000", "0", 3); 1 -1 1 -0 \ No newline at end of file +0 diff --git a/ext/bcmath/tests/bccomp_variation001.phpt b/ext/bcmath/tests/bccomp_variation001.phpt index 78256b7f1255b..9971967fce34e 100644 --- a/ext/bcmath/tests/bccomp_variation001.phpt +++ b/ext/bcmath/tests/bccomp_variation001.phpt @@ -15,4 +15,4 @@ echo bccomp("2.29", "0", "2"); 0 1 -1 -1 \ No newline at end of file +1 diff --git a/ext/bcmath/tests/bccomp_variation002.phpt b/ext/bcmath/tests/bccomp_variation002.phpt index e6dea64dc24d8..0224e6b7f04b9 100644 --- a/ext/bcmath/tests/bccomp_variation002.phpt +++ b/ext/bcmath/tests/bccomp_variation002.phpt @@ -21,4 +21,4 @@ echo bccomp("-2.29", "0", "1"); -1 1 1 --1 \ No newline at end of file +-1 diff --git a/ext/bcmath/tests/bcdiv.phpt b/ext/bcmath/tests/bcdiv.phpt index c3837124739cf..ffec120ebca37 100644 --- a/ext/bcmath/tests/bcdiv.phpt +++ b/ext/bcmath/tests/bcdiv.phpt @@ -276,4 +276,4 @@ Number "-0.01" (scale 10) -0.01 ÷ 141241241241241248267654747412 = 0.0000000000 -0.01 ÷ -149143276547656984948124912 = 0.0000000000 -0.01 ÷ 0.1322135476547459213732911312 = -0.0756352142 --0.01 ÷ -0.123912932193769965476541321 = 0.0807018268 \ No newline at end of file +-0.01 ÷ -0.123912932193769965476541321 = 0.0807018268 diff --git a/ext/bcmath/tests/bcmod.phpt b/ext/bcmath/tests/bcmod.phpt index b37cd82e29d89..4d7d0dd02264d 100644 --- a/ext/bcmath/tests/bcmod.phpt +++ b/ext/bcmath/tests/bcmod.phpt @@ -276,4 +276,4 @@ Number "-0.01" (scale 10) -0.01 mod 141241241241241248267654747412 = -0.0100000000 -0.01 mod -149143276547656984948124912 = -0.0100000000 -0.01 mod 0.1322135476547459213732911312 = -0.0100000000 - -0.01 mod -0.123912932193769965476541321 = -0.0100000000 \ No newline at end of file + -0.01 mod -0.123912932193769965476541321 = -0.0100000000 diff --git a/ext/bcmath/tests/bcmod_large_numbers.phpt b/ext/bcmath/tests/bcmod_large_numbers.phpt index e68df169d38b8..fd590c8bf30b1 100644 --- a/ext/bcmath/tests/bcmod_large_numbers.phpt +++ b/ext/bcmath/tests/bcmod_large_numbers.phpt @@ -213,4 +213,4 @@ Number "-0.123912932193769965476541321" (scale 10) -0.123912932193769965476541321 mod 14.14 = -0.1239129321 -0.123912932193769965476541321 mod -16.60 = -0.1239129321 -0.123912932193769965476541321 mod 0.15 = -0.1239129321 --0.123912932193769965476541321 mod -0.01 = -0.0039129321 \ No newline at end of file +-0.123912932193769965476541321 mod -0.01 = -0.0039129321 diff --git a/ext/bcmath/tests/bcmul.phpt b/ext/bcmath/tests/bcmul.phpt index c32be52207531..12828e429e68f 100644 --- a/ext/bcmath/tests/bcmul.phpt +++ b/ext/bcmath/tests/bcmul.phpt @@ -340,4 +340,4 @@ Number "-0.01" (scale 10) -0.01 × 141241241241241248267654747412 = -1412412412412412482676547474.1200000000 -0.01 × -149143276547656984948124912 = 1491432765476569849481249.1200000000 -0.01 × 0.1322135476547459213732911312 = -0.0013221354 - -0.01 × -0.123912932193769965476541321 = 0.0012391293 \ No newline at end of file + -0.01 × -0.123912932193769965476541321 = 0.0012391293 diff --git a/ext/bcmath/tests/bcmul_large_numbers.phpt b/ext/bcmath/tests/bcmul_large_numbers.phpt index 843cd3fe5507a..12a1a6444c65e 100644 --- a/ext/bcmath/tests/bcmul_large_numbers.phpt +++ b/ext/bcmath/tests/bcmul_large_numbers.phpt @@ -260,4 +260,4 @@ Number "-0.123912932193769965476541321" (scale 10) -0.123912932193769965476541321 × 14.14 = -1.7521288612 -0.123912932193769965476541321 × -16.60 = 2.0569546744 -0.123912932193769965476541321 × 0.15 = -0.0185869398 --0.123912932193769965476541321 × -0.01 = 0.0012391293 \ No newline at end of file +-0.123912932193769965476541321 × -0.01 = 0.0012391293 diff --git a/ext/bcmath/tests/bcmul_zero.phpt b/ext/bcmath/tests/bcmul_zero.phpt index c8bec67d93b83..2a95d054e7034 100644 --- a/ext/bcmath/tests/bcmul_zero.phpt +++ b/ext/bcmath/tests/bcmul_zero.phpt @@ -180,4 +180,4 @@ Number "-0.00" (scale 10) -0.00 × 141241241241241248267654747412 = 0.0000000000 -0.00 × -149143276547656984948124912 = 0.0000000000 -0.00 × 0.1322135476547459213732911312 = 0.0000000000 - -0.00 × -0.123912932193769965476541321 = 0.0000000000 \ No newline at end of file + -0.00 × -0.123912932193769965476541321 = 0.0000000000 diff --git a/ext/bcmath/tests/bcpow.phpt b/ext/bcmath/tests/bcpow.phpt index 9eaba7eec8571..b77730c2c74ce 100644 --- a/ext/bcmath/tests/bcpow.phpt +++ b/ext/bcmath/tests/bcpow.phpt @@ -420,4 +420,4 @@ Number "-0.123912932193769965476541321" (scale 10) -0.123912932193769965476541321 ^ 0 = 1.0000000000 -0.123912932193769965476541321 ^ -0 = 1.0000000000 -0.123912932193769965476541321 ^ 252 = 0.0000000000 --0.123912932193769965476541321 ^ -112 = 372337687215014577843846097845819604950292238064034167723169672020440891758727112526694844172394015451.7302535898 \ No newline at end of file +-0.123912932193769965476541321 ^ -112 = 372337687215014577843846097845819604950292238064034167723169672020440891758727112526694844172394015451.7302535898 diff --git a/ext/bcmath/tests/bcsqrt.phpt b/ext/bcmath/tests/bcsqrt.phpt index fea07880f91e4..7f5bb9d047ff2 100644 --- a/ext/bcmath/tests/bcsqrt.phpt +++ b/ext/bcmath/tests/bcsqrt.phpt @@ -56,4 +56,4 @@ foreach($scales as $scale) { 3.8729833462 1.0000000000 3.7603191353 -0.3872983346 \ No newline at end of file +0.3872983346 diff --git a/ext/bcmath/tests/bcsub.phpt b/ext/bcmath/tests/bcsub.phpt index 9d179e384e79b..4f14b2c67a5be 100644 --- a/ext/bcmath/tests/bcsub.phpt +++ b/ext/bcmath/tests/bcsub.phpt @@ -341,4 +341,4 @@ Number "-0.01" (scale 10) -0.01 - 141241241241241248267654747412 = -141241241241241248267654747412.0100000000 -0.01 - -149143276547656984948124912 = 149143276547656984948124911.9900000000 -0.01 - 0.1322135476547459213732911312 = -0.1422135476 - -0.01 - -0.123912932193769965476541321 = 0.1139129321 \ No newline at end of file + -0.01 - -0.123912932193769965476541321 = 0.1139129321 diff --git a/ext/bcmath/tests/bcsub_large_numbers.phpt b/ext/bcmath/tests/bcsub_large_numbers.phpt index 008db163b986b..19441db1b3474 100644 --- a/ext/bcmath/tests/bcsub_large_numbers.phpt +++ b/ext/bcmath/tests/bcsub_large_numbers.phpt @@ -261,4 +261,4 @@ Number "-0.123912932193769965476541321" (scale 10) -0.123912932193769965476541321 + 14.14 = -14.2639129321 -0.123912932193769965476541321 + -16.60 = 16.4760870678 -0.123912932193769965476541321 + 0.15 = -0.2739129321 --0.123912932193769965476541321 + -0.01 = -0.1139129321 \ No newline at end of file +-0.123912932193769965476541321 + -0.01 = -0.1139129321 diff --git a/ext/bcmath/tests/bcsub_zero.phpt b/ext/bcmath/tests/bcsub_zero.phpt index fd547dc2bb063..bff6667eb8225 100644 --- a/ext/bcmath/tests/bcsub_zero.phpt +++ b/ext/bcmath/tests/bcsub_zero.phpt @@ -181,4 +181,4 @@ Number "-0.00" (scale 10) -0.00 - 141241241241241248267654747412 = -141241241241241248267654747412.0000000000 -0.00 - -149143276547656984948124912 = 149143276547656984948124912.0000000000 -0.00 - 0.1322135476547459213732911312 = -0.1322135476 - -0.00 - -0.123912932193769965476541321 = 0.1239129321 \ No newline at end of file + -0.00 - -0.123912932193769965476541321 = 0.1239129321 diff --git a/ext/bcmath/tests/bug.66364.phpt b/ext/bcmath/tests/bug66364.phpt similarity index 100% rename from ext/bcmath/tests/bug.66364.phpt rename to ext/bcmath/tests/bug66364.phpt From 5e586362bf51bd3ebf2f724bc573b8404a332a80 Mon Sep 17 00:00:00 2001 From: Jorg Adam Sowa Date: Sat, 1 Jul 2023 21:14:59 +0200 Subject: [PATCH 07/15] reformatted all the PHP code in tests --- ext/bcmath/tests/bcadd.phpt | 36 ++++++++++++----- ext/bcmath/tests/bcadd_large_numbers.phpt | 47 ++++++++++++++++------ ext/bcmath/tests/bcadd_zero.phpt | 41 ++++++++++++++----- ext/bcmath/tests/bccomp.phpt | 13 +++--- ext/bcmath/tests/bcdiv.phpt | 33 +++++++++++----- ext/bcmath/tests/bcdiv_large_numbers.phpt | 44 +++++++++++++++------ ext/bcmath/tests/bcdiv_zero.phpt | 41 ++++++++++++++----- ext/bcmath/tests/bcmod.phpt | 33 +++++++++++----- ext/bcmath/tests/bcmod_large_numbers.phpt | 44 +++++++++++++++------ ext/bcmath/tests/bcmod_zero.phpt | 41 ++++++++++++++----- ext/bcmath/tests/bcmul.phpt | 37 ++++++++++++----- ext/bcmath/tests/bcmul_large_numbers.phpt | 48 +++++++++++++++++------ ext/bcmath/tests/bcmul_zero.phpt | 41 ++++++++++++++----- ext/bcmath/tests/bcpow.phpt | 41 +++++++++++++------ ext/bcmath/tests/bcsqrt.phpt | 13 +++--- ext/bcmath/tests/bcsub.phpt | 37 ++++++++++++----- ext/bcmath/tests/bcsub_large_numbers.phpt | 48 +++++++++++++++++------ ext/bcmath/tests/bcsub_zero.phpt | 41 ++++++++++++++----- 18 files changed, 501 insertions(+), 178 deletions(-) diff --git a/ext/bcmath/tests/bcadd.phpt b/ext/bcmath/tests/bcadd.phpt index 9fe1baf09e157..ff3150ae47514 100644 --- a/ext/bcmath/tests/bcadd.phpt +++ b/ext/bcmath/tests/bcadd.phpt @@ -8,17 +8,33 @@ bcmath.scale=0 diff --git a/ext/bcmath/tests/bcadd_large_numbers.phpt b/ext/bcmath/tests/bcadd_large_numbers.phpt index 358b41f4c54c0..b2aecd278b620 100644 --- a/ext/bcmath/tests/bcadd_large_numbers.phpt +++ b/ext/bcmath/tests/bcadd_large_numbers.phpt @@ -7,18 +7,43 @@ bcmath.scale=0 --FILE-- diff --git a/ext/bcmath/tests/bcadd_zero.phpt b/ext/bcmath/tests/bcadd_zero.phpt index 96d559ca19658..c35d1c055aa3b 100644 --- a/ext/bcmath/tests/bcadd_zero.phpt +++ b/ext/bcmath/tests/bcadd_zero.phpt @@ -8,19 +8,40 @@ bcmath.scale=0 --EXPECT-- Number "0" (scale 0) diff --git a/ext/bcmath/tests/bccomp.phpt b/ext/bcmath/tests/bccomp.phpt index 6bffac75a074a..c2d4174affae6 100644 --- a/ext/bcmath/tests/bccomp.phpt +++ b/ext/bcmath/tests/bccomp.phpt @@ -6,13 +6,14 @@ bcmath bcmath.scale=0 --FILE-- --EXPECT-- -1 diff --git a/ext/bcmath/tests/bcdiv.phpt b/ext/bcmath/tests/bcdiv.phpt index ffec120ebca37..7b541cc06fd35 100644 --- a/ext/bcmath/tests/bcdiv.phpt +++ b/ext/bcmath/tests/bcdiv.phpt @@ -8,18 +8,31 @@ bcmath.scale=0 --EXPECT-- Number "15" (scale 0) diff --git a/ext/bcmath/tests/bcdiv_large_numbers.phpt b/ext/bcmath/tests/bcdiv_large_numbers.phpt index 8c3dbd5f6b55f..918f92558db64 100644 --- a/ext/bcmath/tests/bcdiv_large_numbers.phpt +++ b/ext/bcmath/tests/bcdiv_large_numbers.phpt @@ -7,19 +7,41 @@ bcmath.scale=0 --FILE-- --EXPECT-- Number "15151324141414.412312232141241" (scale 0) diff --git a/ext/bcmath/tests/bcdiv_zero.phpt b/ext/bcmath/tests/bcdiv_zero.phpt index d2379edf3230d..7d8a5c5cd500d 100644 --- a/ext/bcmath/tests/bcdiv_zero.phpt +++ b/ext/bcmath/tests/bcdiv_zero.phpt @@ -8,18 +8,39 @@ bcmath.scale=0 --EXPECT-- Number "0" (scale 0) diff --git a/ext/bcmath/tests/bcmod.phpt b/ext/bcmath/tests/bcmod.phpt index 4d7d0dd02264d..9c6ac04c3eaf5 100644 --- a/ext/bcmath/tests/bcmod.phpt +++ b/ext/bcmath/tests/bcmod.phpt @@ -8,18 +8,31 @@ bcmath.scale=0 --EXPECT-- Number "15" (scale 0) diff --git a/ext/bcmath/tests/bcmod_large_numbers.phpt b/ext/bcmath/tests/bcmod_large_numbers.phpt index fd590c8bf30b1..3e467d2d39ead 100644 --- a/ext/bcmath/tests/bcmod_large_numbers.phpt +++ b/ext/bcmath/tests/bcmod_large_numbers.phpt @@ -7,20 +7,42 @@ bcmath.scale=0 --FILE-- --EXPECT-- Number "15151324141414.412312232141241" (scale 0) diff --git a/ext/bcmath/tests/bcmod_zero.phpt b/ext/bcmath/tests/bcmod_zero.phpt index f89d8c8cff5f2..8e72f05851d8d 100644 --- a/ext/bcmath/tests/bcmod_zero.phpt +++ b/ext/bcmath/tests/bcmod_zero.phpt @@ -8,19 +8,40 @@ bcmath.scale=0 --EXPECT-- Number "0" (scale 0) diff --git a/ext/bcmath/tests/bcmul.phpt b/ext/bcmath/tests/bcmul.phpt index 12828e429e68f..7f966061776f5 100644 --- a/ext/bcmath/tests/bcmul.phpt +++ b/ext/bcmath/tests/bcmul.phpt @@ -8,18 +8,35 @@ bcmath.scale=0 --EXPECT-- Number "15" (scale 0) diff --git a/ext/bcmath/tests/bcmul_large_numbers.phpt b/ext/bcmath/tests/bcmul_large_numbers.phpt index 12a1a6444c65e..00b8a71bfec1b 100644 --- a/ext/bcmath/tests/bcmul_large_numbers.phpt +++ b/ext/bcmath/tests/bcmul_large_numbers.phpt @@ -7,19 +7,45 @@ bcmath.scale=0 --FILE-- --EXPECT-- Number "15151324141414.412312232141241" (scale 0) diff --git a/ext/bcmath/tests/bcmul_zero.phpt b/ext/bcmath/tests/bcmul_zero.phpt index 2a95d054e7034..bf09eadf8aae2 100644 --- a/ext/bcmath/tests/bcmul_zero.phpt +++ b/ext/bcmath/tests/bcmul_zero.phpt @@ -8,18 +8,39 @@ bcmath.scale=0 --EXPECT-- Number "0" (scale 0) diff --git a/ext/bcmath/tests/bcpow.phpt b/ext/bcmath/tests/bcpow.phpt index b77730c2c74ce..491a594fc3a29 100644 --- a/ext/bcmath/tests/bcpow.phpt +++ b/ext/bcmath/tests/bcpow.phpt @@ -8,18 +8,37 @@ bcmath.scale=0 --EXPECT-- Number "15" (scale 0) diff --git a/ext/bcmath/tests/bcsqrt.phpt b/ext/bcmath/tests/bcsqrt.phpt index 7f5bb9d047ff2..5a37e5cdc1ff3 100644 --- a/ext/bcmath/tests/bcsqrt.phpt +++ b/ext/bcmath/tests/bcsqrt.phpt @@ -20,15 +20,16 @@ $radicants = [ "15", "1", "14.14", - "0.15" - ]; -$scales = [0,10]; + "0.15", +]; +$scales = [0, 10]; -foreach($scales as $scale) { - foreach($radicants as $radicant) { - echo bcsqrt($radicant, $scale),"\n"; +foreach ($scales as $scale) { + foreach ($radicants as $radicant) { + echo bcsqrt($radicant, $scale), "\n"; } } + ?> --EXPECT-- 0 diff --git a/ext/bcmath/tests/bcsub.phpt b/ext/bcmath/tests/bcsub.phpt index 4f14b2c67a5be..ded2041fc9946 100644 --- a/ext/bcmath/tests/bcsub.phpt +++ b/ext/bcmath/tests/bcsub.phpt @@ -8,19 +8,36 @@ bcmath.scale=0 --EXPECT-- Number "15" (scale 0) diff --git a/ext/bcmath/tests/bcsub_large_numbers.phpt b/ext/bcmath/tests/bcsub_large_numbers.phpt index 19441db1b3474..37def98d83046 100644 --- a/ext/bcmath/tests/bcsub_large_numbers.phpt +++ b/ext/bcmath/tests/bcsub_large_numbers.phpt @@ -7,20 +7,46 @@ bcmath.scale=0 --FILE-- --EXPECT-- Number "15151324141414.412312232141241" (scale 0) diff --git a/ext/bcmath/tests/bcsub_zero.phpt b/ext/bcmath/tests/bcsub_zero.phpt index bff6667eb8225..8545a4b59dbfe 100644 --- a/ext/bcmath/tests/bcsub_zero.phpt +++ b/ext/bcmath/tests/bcsub_zero.phpt @@ -8,19 +8,40 @@ bcmath.scale=0 --EXPECT-- Number "0" (scale 0) From 898a561c1cd80819214e3779ee98415921ac08f0 Mon Sep 17 00:00:00 2001 From: Jorg Adam Sowa Date: Sat, 1 Jul 2023 21:17:27 +0200 Subject: [PATCH 08/15] =?UTF-8?q?Changed=20symbol=20of=20division=20from?= =?UTF-8?q?=20=C3=B7=20to=20/?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ext/bcmath/tests/bcdiv.phpt | 450 +++++++++++----------- ext/bcmath/tests/bcdiv_large_numbers.phpt | 338 ++++++++-------- ext/bcmath/tests/bcdiv_zero.phpt | 226 +++++------ 3 files changed, 507 insertions(+), 507 deletions(-) diff --git a/ext/bcmath/tests/bcdiv.phpt b/ext/bcmath/tests/bcdiv.phpt index 7b541cc06fd35..afd4ea63c28f0 100644 --- a/ext/bcmath/tests/bcdiv.phpt +++ b/ext/bcmath/tests/bcdiv.phpt @@ -23,7 +23,7 @@ foreach ($scales as $scale) { echo "Number \"$dividend\" (scale $scale)\n"; foreach ($divisors as $divisor) { echo $dividend, - " ÷ ", + " / ", str_pad($divisor, 30), " = ", bcdiv($dividend, $divisor, $scale), @@ -36,257 +36,257 @@ foreach ($scales as $scale) { ?> --EXPECT-- Number "15" (scale 0) -15 ÷ 15 = 1 -15 ÷ -15 = -1 -15 ÷ 1 = 15 -15 ÷ -9 = -1 -15 ÷ 14.14 = 1 -15 ÷ -16.60 = 0 -15 ÷ 0.15 = 100 -15 ÷ -0.01 = -1500 -15 ÷ 15151324141414.412312232141241 = 0 -15 ÷ -132132245132134.1515123765412 = 0 -15 ÷ 141241241241241248267654747412 = 0 -15 ÷ -149143276547656984948124912 = 0 -15 ÷ 0.1322135476547459213732911312 = 113 -15 ÷ -0.123912932193769965476541321 = -121 +15 / 15 = 1 +15 / -15 = -1 +15 / 1 = 15 +15 / -9 = -1 +15 / 14.14 = 1 +15 / -16.60 = 0 +15 / 0.15 = 100 +15 / -0.01 = -1500 +15 / 15151324141414.412312232141241 = 0 +15 / -132132245132134.1515123765412 = 0 +15 / 141241241241241248267654747412 = 0 +15 / -149143276547656984948124912 = 0 +15 / 0.1322135476547459213732911312 = 113 +15 / -0.123912932193769965476541321 = -121 Number "-15" (scale 0) --15 ÷ 15 = -1 --15 ÷ -15 = 1 --15 ÷ 1 = -15 --15 ÷ -9 = 1 --15 ÷ 14.14 = -1 --15 ÷ -16.60 = 0 --15 ÷ 0.15 = -100 --15 ÷ -0.01 = 1500 --15 ÷ 15151324141414.412312232141241 = 0 --15 ÷ -132132245132134.1515123765412 = 0 --15 ÷ 141241241241241248267654747412 = 0 --15 ÷ -149143276547656984948124912 = 0 --15 ÷ 0.1322135476547459213732911312 = -113 --15 ÷ -0.123912932193769965476541321 = 121 +-15 / 15 = -1 +-15 / -15 = 1 +-15 / 1 = -15 +-15 / -9 = 1 +-15 / 14.14 = -1 +-15 / -16.60 = 0 +-15 / 0.15 = -100 +-15 / -0.01 = 1500 +-15 / 15151324141414.412312232141241 = 0 +-15 / -132132245132134.1515123765412 = 0 +-15 / 141241241241241248267654747412 = 0 +-15 / -149143276547656984948124912 = 0 +-15 / 0.1322135476547459213732911312 = -113 +-15 / -0.123912932193769965476541321 = 121 Number "1" (scale 0) -1 ÷ 15 = 0 -1 ÷ -15 = 0 -1 ÷ 1 = 1 -1 ÷ -9 = 0 -1 ÷ 14.14 = 0 -1 ÷ -16.60 = 0 -1 ÷ 0.15 = 6 -1 ÷ -0.01 = -100 -1 ÷ 15151324141414.412312232141241 = 0 -1 ÷ -132132245132134.1515123765412 = 0 -1 ÷ 141241241241241248267654747412 = 0 -1 ÷ -149143276547656984948124912 = 0 -1 ÷ 0.1322135476547459213732911312 = 7 -1 ÷ -0.123912932193769965476541321 = -8 +1 / 15 = 0 +1 / -15 = 0 +1 / 1 = 1 +1 / -9 = 0 +1 / 14.14 = 0 +1 / -16.60 = 0 +1 / 0.15 = 6 +1 / -0.01 = -100 +1 / 15151324141414.412312232141241 = 0 +1 / -132132245132134.1515123765412 = 0 +1 / 141241241241241248267654747412 = 0 +1 / -149143276547656984948124912 = 0 +1 / 0.1322135476547459213732911312 = 7 +1 / -0.123912932193769965476541321 = -8 Number "-9" (scale 0) --9 ÷ 15 = 0 --9 ÷ -15 = 0 --9 ÷ 1 = -9 --9 ÷ -9 = 1 --9 ÷ 14.14 = 0 --9 ÷ -16.60 = 0 --9 ÷ 0.15 = -60 --9 ÷ -0.01 = 900 --9 ÷ 15151324141414.412312232141241 = 0 --9 ÷ -132132245132134.1515123765412 = 0 --9 ÷ 141241241241241248267654747412 = 0 --9 ÷ -149143276547656984948124912 = 0 --9 ÷ 0.1322135476547459213732911312 = -68 --9 ÷ -0.123912932193769965476541321 = 72 +-9 / 15 = 0 +-9 / -15 = 0 +-9 / 1 = -9 +-9 / -9 = 1 +-9 / 14.14 = 0 +-9 / -16.60 = 0 +-9 / 0.15 = -60 +-9 / -0.01 = 900 +-9 / 15151324141414.412312232141241 = 0 +-9 / -132132245132134.1515123765412 = 0 +-9 / 141241241241241248267654747412 = 0 +-9 / -149143276547656984948124912 = 0 +-9 / 0.1322135476547459213732911312 = -68 +-9 / -0.123912932193769965476541321 = 72 Number "14.14" (scale 0) -14.14 ÷ 15 = 0 -14.14 ÷ -15 = 0 -14.14 ÷ 1 = 14 -14.14 ÷ -9 = -1 -14.14 ÷ 14.14 = 1 -14.14 ÷ -16.60 = 0 -14.14 ÷ 0.15 = 94 -14.14 ÷ -0.01 = -1414 -14.14 ÷ 15151324141414.412312232141241 = 0 -14.14 ÷ -132132245132134.1515123765412 = 0 -14.14 ÷ 141241241241241248267654747412 = 0 -14.14 ÷ -149143276547656984948124912 = 0 -14.14 ÷ 0.1322135476547459213732911312 = 106 -14.14 ÷ -0.123912932193769965476541321 = -114 +14.14 / 15 = 0 +14.14 / -15 = 0 +14.14 / 1 = 14 +14.14 / -9 = -1 +14.14 / 14.14 = 1 +14.14 / -16.60 = 0 +14.14 / 0.15 = 94 +14.14 / -0.01 = -1414 +14.14 / 15151324141414.412312232141241 = 0 +14.14 / -132132245132134.1515123765412 = 0 +14.14 / 141241241241241248267654747412 = 0 +14.14 / -149143276547656984948124912 = 0 +14.14 / 0.1322135476547459213732911312 = 106 +14.14 / -0.123912932193769965476541321 = -114 Number "-16.60" (scale 0) --16.60 ÷ 15 = -1 --16.60 ÷ -15 = 1 --16.60 ÷ 1 = -16 --16.60 ÷ -9 = 1 --16.60 ÷ 14.14 = -1 --16.60 ÷ -16.60 = 1 --16.60 ÷ 0.15 = -110 --16.60 ÷ -0.01 = 1660 --16.60 ÷ 15151324141414.412312232141241 = 0 --16.60 ÷ -132132245132134.1515123765412 = 0 --16.60 ÷ 141241241241241248267654747412 = 0 --16.60 ÷ -149143276547656984948124912 = 0 --16.60 ÷ 0.1322135476547459213732911312 = -125 --16.60 ÷ -0.123912932193769965476541321 = 133 +-16.60 / 15 = -1 +-16.60 / -15 = 1 +-16.60 / 1 = -16 +-16.60 / -9 = 1 +-16.60 / 14.14 = -1 +-16.60 / -16.60 = 1 +-16.60 / 0.15 = -110 +-16.60 / -0.01 = 1660 +-16.60 / 15151324141414.412312232141241 = 0 +-16.60 / -132132245132134.1515123765412 = 0 +-16.60 / 141241241241241248267654747412 = 0 +-16.60 / -149143276547656984948124912 = 0 +-16.60 / 0.1322135476547459213732911312 = -125 +-16.60 / -0.123912932193769965476541321 = 133 Number "0.15" (scale 0) -0.15 ÷ 15 = 0 -0.15 ÷ -15 = 0 -0.15 ÷ 1 = 0 -0.15 ÷ -9 = 0 -0.15 ÷ 14.14 = 0 -0.15 ÷ -16.60 = 0 -0.15 ÷ 0.15 = 1 -0.15 ÷ -0.01 = -15 -0.15 ÷ 15151324141414.412312232141241 = 0 -0.15 ÷ -132132245132134.1515123765412 = 0 -0.15 ÷ 141241241241241248267654747412 = 0 -0.15 ÷ -149143276547656984948124912 = 0 -0.15 ÷ 0.1322135476547459213732911312 = 1 -0.15 ÷ -0.123912932193769965476541321 = -1 +0.15 / 15 = 0 +0.15 / -15 = 0 +0.15 / 1 = 0 +0.15 / -9 = 0 +0.15 / 14.14 = 0 +0.15 / -16.60 = 0 +0.15 / 0.15 = 1 +0.15 / -0.01 = -15 +0.15 / 15151324141414.412312232141241 = 0 +0.15 / -132132245132134.1515123765412 = 0 +0.15 / 141241241241241248267654747412 = 0 +0.15 / -149143276547656984948124912 = 0 +0.15 / 0.1322135476547459213732911312 = 1 +0.15 / -0.123912932193769965476541321 = -1 Number "-0.01" (scale 0) --0.01 ÷ 15 = 0 --0.01 ÷ -15 = 0 --0.01 ÷ 1 = 0 --0.01 ÷ -9 = 0 --0.01 ÷ 14.14 = 0 --0.01 ÷ -16.60 = 0 --0.01 ÷ 0.15 = 0 --0.01 ÷ -0.01 = 1 --0.01 ÷ 15151324141414.412312232141241 = 0 --0.01 ÷ -132132245132134.1515123765412 = 0 --0.01 ÷ 141241241241241248267654747412 = 0 --0.01 ÷ -149143276547656984948124912 = 0 --0.01 ÷ 0.1322135476547459213732911312 = 0 --0.01 ÷ -0.123912932193769965476541321 = 0 +-0.01 / 15 = 0 +-0.01 / -15 = 0 +-0.01 / 1 = 0 +-0.01 / -9 = 0 +-0.01 / 14.14 = 0 +-0.01 / -16.60 = 0 +-0.01 / 0.15 = 0 +-0.01 / -0.01 = 1 +-0.01 / 15151324141414.412312232141241 = 0 +-0.01 / -132132245132134.1515123765412 = 0 +-0.01 / 141241241241241248267654747412 = 0 +-0.01 / -149143276547656984948124912 = 0 +-0.01 / 0.1322135476547459213732911312 = 0 +-0.01 / -0.123912932193769965476541321 = 0 Number "15" (scale 10) -15 ÷ 15 = 1.0000000000 -15 ÷ -15 = -1.0000000000 -15 ÷ 1 = 15.0000000000 -15 ÷ -9 = -1.6666666666 -15 ÷ 14.14 = 1.0608203677 -15 ÷ -16.60 = -0.9036144578 -15 ÷ 0.15 = 100.0000000000 -15 ÷ -0.01 = -1500.0000000000 -15 ÷ 15151324141414.412312232141241 = 0.0000000000 -15 ÷ -132132245132134.1515123765412 = 0.0000000000 -15 ÷ 141241241241241248267654747412 = 0.0000000000 -15 ÷ -149143276547656984948124912 = 0.0000000000 -15 ÷ 0.1322135476547459213732911312 = 113.4528213339 -15 ÷ -0.123912932193769965476541321 = -121.0527402946 +15 / 15 = 1.0000000000 +15 / -15 = -1.0000000000 +15 / 1 = 15.0000000000 +15 / -9 = -1.6666666666 +15 / 14.14 = 1.0608203677 +15 / -16.60 = -0.9036144578 +15 / 0.15 = 100.0000000000 +15 / -0.01 = -1500.0000000000 +15 / 15151324141414.412312232141241 = 0.0000000000 +15 / -132132245132134.1515123765412 = 0.0000000000 +15 / 141241241241241248267654747412 = 0.0000000000 +15 / -149143276547656984948124912 = 0.0000000000 +15 / 0.1322135476547459213732911312 = 113.4528213339 +15 / -0.123912932193769965476541321 = -121.0527402946 Number "-15" (scale 10) --15 ÷ 15 = -1.0000000000 --15 ÷ -15 = 1.0000000000 --15 ÷ 1 = -15.0000000000 --15 ÷ -9 = 1.6666666666 --15 ÷ 14.14 = -1.0608203677 --15 ÷ -16.60 = 0.9036144578 --15 ÷ 0.15 = -100.0000000000 --15 ÷ -0.01 = 1500.0000000000 --15 ÷ 15151324141414.412312232141241 = 0.0000000000 --15 ÷ -132132245132134.1515123765412 = 0.0000000000 --15 ÷ 141241241241241248267654747412 = 0.0000000000 --15 ÷ -149143276547656984948124912 = 0.0000000000 --15 ÷ 0.1322135476547459213732911312 = -113.4528213339 --15 ÷ -0.123912932193769965476541321 = 121.0527402946 +-15 / 15 = -1.0000000000 +-15 / -15 = 1.0000000000 +-15 / 1 = -15.0000000000 +-15 / -9 = 1.6666666666 +-15 / 14.14 = -1.0608203677 +-15 / -16.60 = 0.9036144578 +-15 / 0.15 = -100.0000000000 +-15 / -0.01 = 1500.0000000000 +-15 / 15151324141414.412312232141241 = 0.0000000000 +-15 / -132132245132134.1515123765412 = 0.0000000000 +-15 / 141241241241241248267654747412 = 0.0000000000 +-15 / -149143276547656984948124912 = 0.0000000000 +-15 / 0.1322135476547459213732911312 = -113.4528213339 +-15 / -0.123912932193769965476541321 = 121.0527402946 Number "1" (scale 10) -1 ÷ 15 = 0.0666666666 -1 ÷ -15 = -0.0666666666 -1 ÷ 1 = 1.0000000000 -1 ÷ -9 = -0.1111111111 -1 ÷ 14.14 = 0.0707213578 -1 ÷ -16.60 = -0.0602409638 -1 ÷ 0.15 = 6.6666666666 -1 ÷ -0.01 = -100.0000000000 -1 ÷ 15151324141414.412312232141241 = 0.0000000000 -1 ÷ -132132245132134.1515123765412 = 0.0000000000 -1 ÷ 141241241241241248267654747412 = 0.0000000000 -1 ÷ -149143276547656984948124912 = 0.0000000000 -1 ÷ 0.1322135476547459213732911312 = 7.5635214222 -1 ÷ -0.123912932193769965476541321 = -8.0701826863 +1 / 15 = 0.0666666666 +1 / -15 = -0.0666666666 +1 / 1 = 1.0000000000 +1 / -9 = -0.1111111111 +1 / 14.14 = 0.0707213578 +1 / -16.60 = -0.0602409638 +1 / 0.15 = 6.6666666666 +1 / -0.01 = -100.0000000000 +1 / 15151324141414.412312232141241 = 0.0000000000 +1 / -132132245132134.1515123765412 = 0.0000000000 +1 / 141241241241241248267654747412 = 0.0000000000 +1 / -149143276547656984948124912 = 0.0000000000 +1 / 0.1322135476547459213732911312 = 7.5635214222 +1 / -0.123912932193769965476541321 = -8.0701826863 Number "-9" (scale 10) --9 ÷ 15 = -0.6000000000 --9 ÷ -15 = 0.6000000000 --9 ÷ 1 = -9.0000000000 --9 ÷ -9 = 1.0000000000 --9 ÷ 14.14 = -0.6364922206 --9 ÷ -16.60 = 0.5421686746 --9 ÷ 0.15 = -60.0000000000 --9 ÷ -0.01 = 900.0000000000 --9 ÷ 15151324141414.412312232141241 = 0.0000000000 --9 ÷ -132132245132134.1515123765412 = 0.0000000000 --9 ÷ 141241241241241248267654747412 = 0.0000000000 --9 ÷ -149143276547656984948124912 = 0.0000000000 --9 ÷ 0.1322135476547459213732911312 = -68.0716928003 --9 ÷ -0.123912932193769965476541321 = 72.6316441767 +-9 / 15 = -0.6000000000 +-9 / -15 = 0.6000000000 +-9 / 1 = -9.0000000000 +-9 / -9 = 1.0000000000 +-9 / 14.14 = -0.6364922206 +-9 / -16.60 = 0.5421686746 +-9 / 0.15 = -60.0000000000 +-9 / -0.01 = 900.0000000000 +-9 / 15151324141414.412312232141241 = 0.0000000000 +-9 / -132132245132134.1515123765412 = 0.0000000000 +-9 / 141241241241241248267654747412 = 0.0000000000 +-9 / -149143276547656984948124912 = 0.0000000000 +-9 / 0.1322135476547459213732911312 = -68.0716928003 +-9 / -0.123912932193769965476541321 = 72.6316441767 Number "14.14" (scale 10) -14.14 ÷ 15 = 0.9426666666 -14.14 ÷ -15 = -0.9426666666 -14.14 ÷ 1 = 14.1400000000 -14.14 ÷ -9 = -1.5711111111 -14.14 ÷ 14.14 = 1.0000000000 -14.14 ÷ -16.60 = -0.8518072289 -14.14 ÷ 0.15 = 94.2666666666 -14.14 ÷ -0.01 = -1414.0000000000 -14.14 ÷ 15151324141414.412312232141241 = 0.0000000000 -14.14 ÷ -132132245132134.1515123765412 = 0.0000000000 -14.14 ÷ 141241241241241248267654747412 = 0.0000000000 -14.14 ÷ -149143276547656984948124912 = 0.0000000000 -14.14 ÷ 0.1322135476547459213732911312 = 106.9481929107 -14.14 ÷ -0.123912932193769965476541321 = -114.1123831844 +14.14 / 15 = 0.9426666666 +14.14 / -15 = -0.9426666666 +14.14 / 1 = 14.1400000000 +14.14 / -9 = -1.5711111111 +14.14 / 14.14 = 1.0000000000 +14.14 / -16.60 = -0.8518072289 +14.14 / 0.15 = 94.2666666666 +14.14 / -0.01 = -1414.0000000000 +14.14 / 15151324141414.412312232141241 = 0.0000000000 +14.14 / -132132245132134.1515123765412 = 0.0000000000 +14.14 / 141241241241241248267654747412 = 0.0000000000 +14.14 / -149143276547656984948124912 = 0.0000000000 +14.14 / 0.1322135476547459213732911312 = 106.9481929107 +14.14 / -0.123912932193769965476541321 = -114.1123831844 Number "-16.60" (scale 10) --16.60 ÷ 15 = -1.1066666666 --16.60 ÷ -15 = 1.1066666666 --16.60 ÷ 1 = -16.6000000000 --16.60 ÷ -9 = 1.8444444444 --16.60 ÷ 14.14 = -1.1739745403 --16.60 ÷ -16.60 = 1.0000000000 --16.60 ÷ 0.15 = -110.6666666666 --16.60 ÷ -0.01 = 1660.0000000000 --16.60 ÷ 15151324141414.412312232141241 = 0.0000000000 --16.60 ÷ -132132245132134.1515123765412 = 0.0000000000 --16.60 ÷ 141241241241241248267654747412 = 0.0000000000 --16.60 ÷ -149143276547656984948124912 = 0.0000000000 --16.60 ÷ 0.1322135476547459213732911312 = -125.5544556095 --16.60 ÷ -0.123912932193769965476541321 = 133.9650325927 +-16.60 / 15 = -1.1066666666 +-16.60 / -15 = 1.1066666666 +-16.60 / 1 = -16.6000000000 +-16.60 / -9 = 1.8444444444 +-16.60 / 14.14 = -1.1739745403 +-16.60 / -16.60 = 1.0000000000 +-16.60 / 0.15 = -110.6666666666 +-16.60 / -0.01 = 1660.0000000000 +-16.60 / 15151324141414.412312232141241 = 0.0000000000 +-16.60 / -132132245132134.1515123765412 = 0.0000000000 +-16.60 / 141241241241241248267654747412 = 0.0000000000 +-16.60 / -149143276547656984948124912 = 0.0000000000 +-16.60 / 0.1322135476547459213732911312 = -125.5544556095 +-16.60 / -0.123912932193769965476541321 = 133.9650325927 Number "0.15" (scale 10) -0.15 ÷ 15 = 0.0100000000 -0.15 ÷ -15 = -0.0100000000 -0.15 ÷ 1 = 0.1500000000 -0.15 ÷ -9 = -0.0166666666 -0.15 ÷ 14.14 = 0.0106082036 -0.15 ÷ -16.60 = -0.0090361445 -0.15 ÷ 0.15 = 1.0000000000 -0.15 ÷ -0.01 = -15.0000000000 -0.15 ÷ 15151324141414.412312232141241 = 0.0000000000 -0.15 ÷ -132132245132134.1515123765412 = 0.0000000000 -0.15 ÷ 141241241241241248267654747412 = 0.0000000000 -0.15 ÷ -149143276547656984948124912 = 0.0000000000 -0.15 ÷ 0.1322135476547459213732911312 = 1.1345282133 -0.15 ÷ -0.123912932193769965476541321 = -1.2105274029 +0.15 / 15 = 0.0100000000 +0.15 / -15 = -0.0100000000 +0.15 / 1 = 0.1500000000 +0.15 / -9 = -0.0166666666 +0.15 / 14.14 = 0.0106082036 +0.15 / -16.60 = -0.0090361445 +0.15 / 0.15 = 1.0000000000 +0.15 / -0.01 = -15.0000000000 +0.15 / 15151324141414.412312232141241 = 0.0000000000 +0.15 / -132132245132134.1515123765412 = 0.0000000000 +0.15 / 141241241241241248267654747412 = 0.0000000000 +0.15 / -149143276547656984948124912 = 0.0000000000 +0.15 / 0.1322135476547459213732911312 = 1.1345282133 +0.15 / -0.123912932193769965476541321 = -1.2105274029 Number "-0.01" (scale 10) --0.01 ÷ 15 = -0.0006666666 --0.01 ÷ -15 = 0.0006666666 --0.01 ÷ 1 = -0.0100000000 --0.01 ÷ -9 = 0.0011111111 --0.01 ÷ 14.14 = -0.0007072135 --0.01 ÷ -16.60 = 0.0006024096 --0.01 ÷ 0.15 = -0.0666666666 --0.01 ÷ -0.01 = 1.0000000000 --0.01 ÷ 15151324141414.412312232141241 = 0.0000000000 --0.01 ÷ -132132245132134.1515123765412 = 0.0000000000 --0.01 ÷ 141241241241241248267654747412 = 0.0000000000 --0.01 ÷ -149143276547656984948124912 = 0.0000000000 --0.01 ÷ 0.1322135476547459213732911312 = -0.0756352142 --0.01 ÷ -0.123912932193769965476541321 = 0.0807018268 +-0.01 / 15 = -0.0006666666 +-0.01 / -15 = 0.0006666666 +-0.01 / 1 = -0.0100000000 +-0.01 / -9 = 0.0011111111 +-0.01 / 14.14 = -0.0007072135 +-0.01 / -16.60 = 0.0006024096 +-0.01 / 0.15 = -0.0666666666 +-0.01 / -0.01 = 1.0000000000 +-0.01 / 15151324141414.412312232141241 = 0.0000000000 +-0.01 / -132132245132134.1515123765412 = 0.0000000000 +-0.01 / 141241241241241248267654747412 = 0.0000000000 +-0.01 / -149143276547656984948124912 = 0.0000000000 +-0.01 / 0.1322135476547459213732911312 = -0.0756352142 +-0.01 / -0.123912932193769965476541321 = 0.0807018268 diff --git a/ext/bcmath/tests/bcdiv_large_numbers.phpt b/ext/bcmath/tests/bcdiv_large_numbers.phpt index 918f92558db64..be8b63983d4c6 100644 --- a/ext/bcmath/tests/bcdiv_large_numbers.phpt +++ b/ext/bcmath/tests/bcdiv_large_numbers.phpt @@ -32,7 +32,7 @@ foreach ($scales as $scale) { echo "Number \"$dividend\" (scale $scale)\n"; foreach ($divisors as $divisor) { echo $dividend, - " ÷ ", + " / ", str_pad($divisor, 30), " = ", bcdiv($dividend, $divisor, $scale), @@ -45,193 +45,193 @@ foreach ($scales as $scale) { ?> --EXPECT-- Number "15151324141414.412312232141241" (scale 0) -15151324141414.412312232141241 ÷ 15151324141414.412312232141241 = 1 -15151324141414.412312232141241 ÷ -132132245132134.1515123765412 = 0 -15151324141414.412312232141241 ÷ 141241241241241248267654747412 = 0 -15151324141414.412312232141241 ÷ -149143276547656984948124912 = 0 -15151324141414.412312232141241 ÷ 0.1322135476547459213732911312 = 114597364719231 -15151324141414.412312232141241 ÷ -0.123912932193769965476541321 = -122273953760705 -15151324141414.412312232141241 ÷ 15 = 1010088276094 -15151324141414.412312232141241 ÷ -15 = -1010088276094 -15151324141414.412312232141241 ÷ 1 = 15151324141414 -15151324141414.412312232141241 ÷ -9 = -1683480460157 -15151324141414.412312232141241 ÷ 14.14 = 1071522216507 -15151324141414.412312232141241 ÷ -16.60 = -912730369964 -15151324141414.412312232141241 ÷ 0.15 = 101008827609429 -15151324141414.412312232141241 ÷ -0.01 = -1515132414141441 +15151324141414.412312232141241 / 15151324141414.412312232141241 = 1 +15151324141414.412312232141241 / -132132245132134.1515123765412 = 0 +15151324141414.412312232141241 / 141241241241241248267654747412 = 0 +15151324141414.412312232141241 / -149143276547656984948124912 = 0 +15151324141414.412312232141241 / 0.1322135476547459213732911312 = 114597364719231 +15151324141414.412312232141241 / -0.123912932193769965476541321 = -122273953760705 +15151324141414.412312232141241 / 15 = 1010088276094 +15151324141414.412312232141241 / -15 = -1010088276094 +15151324141414.412312232141241 / 1 = 15151324141414 +15151324141414.412312232141241 / -9 = -1683480460157 +15151324141414.412312232141241 / 14.14 = 1071522216507 +15151324141414.412312232141241 / -16.60 = -912730369964 +15151324141414.412312232141241 / 0.15 = 101008827609429 +15151324141414.412312232141241 / -0.01 = -1515132414141441 Number "-132132245132134.1515123765412" (scale 0) --132132245132134.1515123765412 ÷ 15151324141414.412312232141241 = -8 --132132245132134.1515123765412 ÷ -132132245132134.1515123765412 = 1 --132132245132134.1515123765412 ÷ 141241241241241248267654747412 = 0 --132132245132134.1515123765412 ÷ -149143276547656984948124912 = 0 --132132245132134.1515123765412 ÷ 0.1322135476547459213732911312 = -999385066628541 --132132245132134.1515123765412 ÷ -0.123912932193769965476541321 = 1066331356968545 --132132245132134.1515123765412 ÷ 15 = -8808816342142 --132132245132134.1515123765412 ÷ -15 = 8808816342142 --132132245132134.1515123765412 ÷ 1 = -132132245132134 --132132245132134.1515123765412 ÷ -9 = 14681360570237 --132132245132134.1515123765412 ÷ 14.14 = -9344571791522 --132132245132134.1515123765412 ÷ -16.60 = 7959773803140 --132132245132134.1515123765412 ÷ 0.15 = -880881634214227 --132132245132134.1515123765412 ÷ -0.01 = 13213224513213415 +-132132245132134.1515123765412 / 15151324141414.412312232141241 = -8 +-132132245132134.1515123765412 / -132132245132134.1515123765412 = 1 +-132132245132134.1515123765412 / 141241241241241248267654747412 = 0 +-132132245132134.1515123765412 / -149143276547656984948124912 = 0 +-132132245132134.1515123765412 / 0.1322135476547459213732911312 = -999385066628541 +-132132245132134.1515123765412 / -0.123912932193769965476541321 = 1066331356968545 +-132132245132134.1515123765412 / 15 = -8808816342142 +-132132245132134.1515123765412 / -15 = 8808816342142 +-132132245132134.1515123765412 / 1 = -132132245132134 +-132132245132134.1515123765412 / -9 = 14681360570237 +-132132245132134.1515123765412 / 14.14 = -9344571791522 +-132132245132134.1515123765412 / -16.60 = 7959773803140 +-132132245132134.1515123765412 / 0.15 = -880881634214227 +-132132245132134.1515123765412 / -0.01 = 13213224513213415 Number "141241241241241248267654747412" (scale 0) -141241241241241248267654747412 ÷ 15151324141414.412312232141241 = 9322039441765651 -141241241241241248267654747412 ÷ -132132245132134.1515123765412 = -1068938479778330 -141241241241241248267654747412 ÷ 141241241241241248267654747412 = 1 -141241241241241248267654747412 ÷ -149143276547656984948124912 = -947 -141241241241241248267654747412 ÷ 0.1322135476547459213732911312 = 1068281153835079546834811315187 -141241241241241248267654747412 ÷ -0.123912932193769965476541321 = -1139842619657922251471288994015 -141241241241241248267654747412 ÷ 15 = 9416082749416083217843649827 -141241241241241248267654747412 ÷ -15 = -9416082749416083217843649827 -141241241241241248267654747412 ÷ 1 = 141241241241241248267654747412 -141241241241241248267654747412 ÷ -9 = -15693471249026805363072749712 -141241241241241248267654747412 ÷ 14.14 = 9988772365009989269282513961 -141241241241241248267654747412 ÷ -16.60 = -8508508508508508931786430566 -141241241241241248267654747412 ÷ 0.15 = 941608274941608321784364982746 -141241241241241248267654747412 ÷ -0.01 = -14124124124124124826765474741200 +141241241241241248267654747412 / 15151324141414.412312232141241 = 9322039441765651 +141241241241241248267654747412 / -132132245132134.1515123765412 = -1068938479778330 +141241241241241248267654747412 / 141241241241241248267654747412 = 1 +141241241241241248267654747412 / -149143276547656984948124912 = -947 +141241241241241248267654747412 / 0.1322135476547459213732911312 = 1068281153835079546834811315187 +141241241241241248267654747412 / -0.123912932193769965476541321 = -1139842619657922251471288994015 +141241241241241248267654747412 / 15 = 9416082749416083217843649827 +141241241241241248267654747412 / -15 = -9416082749416083217843649827 +141241241241241248267654747412 / 1 = 141241241241241248267654747412 +141241241241241248267654747412 / -9 = -15693471249026805363072749712 +141241241241241248267654747412 / 14.14 = 9988772365009989269282513961 +141241241241241248267654747412 / -16.60 = -8508508508508508931786430566 +141241241241241248267654747412 / 0.15 = 941608274941608321784364982746 +141241241241241248267654747412 / -0.01 = -14124124124124124826765474741200 Number "-149143276547656984948124912" (scale 0) --149143276547656984948124912 ÷ 15151324141414.412312232141241 = -9843580346881 --149143276547656984948124912 ÷ -132132245132134.1515123765412 = 1128742468566 --149143276547656984948124912 ÷ 141241241241241248267654747412 = 0 --149143276547656984948124912 ÷ -149143276547656984948124912 = 1 --149143276547656984948124912 ÷ 0.1322135476547459213732911312 = -1128048367154629906735882014 --149143276547656984948124912 ÷ -0.123912932193769965476541321 = 1203613488174364568320268735 --149143276547656984948124912 ÷ 15 = -9942885103177132329874994 --149143276547656984948124912 ÷ -15 = 9942885103177132329874994 --149143276547656984948124912 ÷ 1 = -149143276547656984948124912 --149143276547656984948124912 ÷ -9 = 16571475171961887216458323 --149143276547656984948124912 ÷ 14.14 = -10547615031658909826600064 --149143276547656984948124912 ÷ -16.60 = 8984534731786565358320777 --149143276547656984948124912 ÷ 0.15 = -994288510317713232987499413 --149143276547656984948124912 ÷ -0.01 = 14914327654765698494812491200 +-149143276547656984948124912 / 15151324141414.412312232141241 = -9843580346881 +-149143276547656984948124912 / -132132245132134.1515123765412 = 1128742468566 +-149143276547656984948124912 / 141241241241241248267654747412 = 0 +-149143276547656984948124912 / -149143276547656984948124912 = 1 +-149143276547656984948124912 / 0.1322135476547459213732911312 = -1128048367154629906735882014 +-149143276547656984948124912 / -0.123912932193769965476541321 = 1203613488174364568320268735 +-149143276547656984948124912 / 15 = -9942885103177132329874994 +-149143276547656984948124912 / -15 = 9942885103177132329874994 +-149143276547656984948124912 / 1 = -149143276547656984948124912 +-149143276547656984948124912 / -9 = 16571475171961887216458323 +-149143276547656984948124912 / 14.14 = -10547615031658909826600064 +-149143276547656984948124912 / -16.60 = 8984534731786565358320777 +-149143276547656984948124912 / 0.15 = -994288510317713232987499413 +-149143276547656984948124912 / -0.01 = 14914327654765698494812491200 Number "0.1322135476547459213732911312" (scale 0) -0.1322135476547459213732911312 ÷ 15151324141414.412312232141241 = 0 -0.1322135476547459213732911312 ÷ -132132245132134.1515123765412 = 0 -0.1322135476547459213732911312 ÷ 141241241241241248267654747412 = 0 -0.1322135476547459213732911312 ÷ -149143276547656984948124912 = 0 -0.1322135476547459213732911312 ÷ 0.1322135476547459213732911312 = 1 -0.1322135476547459213732911312 ÷ -0.123912932193769965476541321 = -1 -0.1322135476547459213732911312 ÷ 15 = 0 -0.1322135476547459213732911312 ÷ -15 = 0 -0.1322135476547459213732911312 ÷ 1 = 0 -0.1322135476547459213732911312 ÷ -9 = 0 -0.1322135476547459213732911312 ÷ 14.14 = 0 -0.1322135476547459213732911312 ÷ -16.60 = 0 -0.1322135476547459213732911312 ÷ 0.15 = 0 -0.1322135476547459213732911312 ÷ -0.01 = -13 +0.1322135476547459213732911312 / 15151324141414.412312232141241 = 0 +0.1322135476547459213732911312 / -132132245132134.1515123765412 = 0 +0.1322135476547459213732911312 / 141241241241241248267654747412 = 0 +0.1322135476547459213732911312 / -149143276547656984948124912 = 0 +0.1322135476547459213732911312 / 0.1322135476547459213732911312 = 1 +0.1322135476547459213732911312 / -0.123912932193769965476541321 = -1 +0.1322135476547459213732911312 / 15 = 0 +0.1322135476547459213732911312 / -15 = 0 +0.1322135476547459213732911312 / 1 = 0 +0.1322135476547459213732911312 / -9 = 0 +0.1322135476547459213732911312 / 14.14 = 0 +0.1322135476547459213732911312 / -16.60 = 0 +0.1322135476547459213732911312 / 0.15 = 0 +0.1322135476547459213732911312 / -0.01 = -13 Number "-0.123912932193769965476541321" (scale 0) --0.123912932193769965476541321 ÷ 15151324141414.412312232141241 = 0 --0.123912932193769965476541321 ÷ -132132245132134.1515123765412 = 0 --0.123912932193769965476541321 ÷ 141241241241241248267654747412 = 0 --0.123912932193769965476541321 ÷ -149143276547656984948124912 = 0 --0.123912932193769965476541321 ÷ 0.1322135476547459213732911312 = 0 --0.123912932193769965476541321 ÷ -0.123912932193769965476541321 = 1 --0.123912932193769965476541321 ÷ 15 = 0 --0.123912932193769965476541321 ÷ -15 = 0 --0.123912932193769965476541321 ÷ 1 = 0 --0.123912932193769965476541321 ÷ -9 = 0 --0.123912932193769965476541321 ÷ 14.14 = 0 --0.123912932193769965476541321 ÷ -16.60 = 0 --0.123912932193769965476541321 ÷ 0.15 = 0 --0.123912932193769965476541321 ÷ -0.01 = 12 +-0.123912932193769965476541321 / 15151324141414.412312232141241 = 0 +-0.123912932193769965476541321 / -132132245132134.1515123765412 = 0 +-0.123912932193769965476541321 / 141241241241241248267654747412 = 0 +-0.123912932193769965476541321 / -149143276547656984948124912 = 0 +-0.123912932193769965476541321 / 0.1322135476547459213732911312 = 0 +-0.123912932193769965476541321 / -0.123912932193769965476541321 = 1 +-0.123912932193769965476541321 / 15 = 0 +-0.123912932193769965476541321 / -15 = 0 +-0.123912932193769965476541321 / 1 = 0 +-0.123912932193769965476541321 / -9 = 0 +-0.123912932193769965476541321 / 14.14 = 0 +-0.123912932193769965476541321 / -16.60 = 0 +-0.123912932193769965476541321 / 0.15 = 0 +-0.123912932193769965476541321 / -0.01 = 12 Number "15151324141414.412312232141241" (scale 10) -15151324141414.412312232141241 ÷ 15151324141414.412312232141241 = 1.0000000000 -15151324141414.412312232141241 ÷ -132132245132134.1515123765412 = -0.1146678778 -15151324141414.412312232141241 ÷ 141241241241241248267654747412 = 0.0000000000 -15151324141414.412312232141241 ÷ -149143276547656984948124912 = 0.0000000000 -15151324141414.412312232141241 ÷ 0.1322135476547459213732911312 = 114597364719231.4957119169 -15151324141414.412312232141241 ÷ -0.123912932193769965476541321 = -122273953760705.0772823300 -15151324141414.412312232141241 ÷ 15 = 1010088276094.2941541488 -15151324141414.412312232141241 ÷ -15 = -1010088276094.2941541488 -15151324141414.412312232141241 ÷ 1 = 15151324141414.4123122321 -15151324141414.412312232141241 ÷ -9 = -1683480460157.1569235813 -15151324141414.412312232141241 ÷ 14.14 = 1071522216507.3841804973 -15151324141414.412312232141241 ÷ -16.60 = -912730369964.7236332669 -15151324141414.412312232141241 ÷ 0.15 = 101008827609429.4154148809 -15151324141414.412312232141241 ÷ -0.01 = -1515132414141441.2312232141 +15151324141414.412312232141241 / 15151324141414.412312232141241 = 1.0000000000 +15151324141414.412312232141241 / -132132245132134.1515123765412 = -0.1146678778 +15151324141414.412312232141241 / 141241241241241248267654747412 = 0.0000000000 +15151324141414.412312232141241 / -149143276547656984948124912 = 0.0000000000 +15151324141414.412312232141241 / 0.1322135476547459213732911312 = 114597364719231.4957119169 +15151324141414.412312232141241 / -0.123912932193769965476541321 = -122273953760705.0772823300 +15151324141414.412312232141241 / 15 = 1010088276094.2941541488 +15151324141414.412312232141241 / -15 = -1010088276094.2941541488 +15151324141414.412312232141241 / 1 = 15151324141414.4123122321 +15151324141414.412312232141241 / -9 = -1683480460157.1569235813 +15151324141414.412312232141241 / 14.14 = 1071522216507.3841804973 +15151324141414.412312232141241 / -16.60 = -912730369964.7236332669 +15151324141414.412312232141241 / 0.15 = 101008827609429.4154148809 +15151324141414.412312232141241 / -0.01 = -1515132414141441.2312232141 Number "-132132245132134.1515123765412" (scale 10) --132132245132134.1515123765412 ÷ 15151324141414.412312232141241 = -8.7208381194 --132132245132134.1515123765412 ÷ -132132245132134.1515123765412 = 1.0000000000 --132132245132134.1515123765412 ÷ 141241241241241248267654747412 = 0.0000000000 --132132245132134.1515123765412 ÷ -149143276547656984948124912 = 0.0000000000 --132132245132134.1515123765412 ÷ 0.1322135476547459213732911312 = -999385066628541.8940917146 --132132245132134.1515123765412 ÷ -0.123912932193769965476541321 = 1066331356968545.9568177107 --132132245132134.1515123765412 ÷ 15 = -8808816342142.2767674917 --132132245132134.1515123765412 ÷ -15 = 8808816342142.2767674917 --132132245132134.1515123765412 ÷ 1 = -132132245132134.1515123765 --132132245132134.1515123765412 ÷ -9 = 14681360570237.1279458196 --132132245132134.1515123765412 ÷ 14.14 = -9344571791522.9244351044 --132132245132134.1515123765412 ÷ -16.60 = 7959773803140.6115368901 --132132245132134.1515123765412 ÷ 0.15 = -880881634214227.6767491769 --132132245132134.1515123765412 ÷ -0.01 = 13213224513213415.1512376541 +-132132245132134.1515123765412 / 15151324141414.412312232141241 = -8.7208381194 +-132132245132134.1515123765412 / -132132245132134.1515123765412 = 1.0000000000 +-132132245132134.1515123765412 / 141241241241241248267654747412 = 0.0000000000 +-132132245132134.1515123765412 / -149143276547656984948124912 = 0.0000000000 +-132132245132134.1515123765412 / 0.1322135476547459213732911312 = -999385066628541.8940917146 +-132132245132134.1515123765412 / -0.123912932193769965476541321 = 1066331356968545.9568177107 +-132132245132134.1515123765412 / 15 = -8808816342142.2767674917 +-132132245132134.1515123765412 / -15 = 8808816342142.2767674917 +-132132245132134.1515123765412 / 1 = -132132245132134.1515123765 +-132132245132134.1515123765412 / -9 = 14681360570237.1279458196 +-132132245132134.1515123765412 / 14.14 = -9344571791522.9244351044 +-132132245132134.1515123765412 / -16.60 = 7959773803140.6115368901 +-132132245132134.1515123765412 / 0.15 = -880881634214227.6767491769 +-132132245132134.1515123765412 / -0.01 = 13213224513213415.1512376541 Number "141241241241241248267654747412" (scale 10) -141241241241241248267654747412 ÷ 15151324141414.412312232141241 = 9322039441765651.5733487418 -141241241241241248267654747412 ÷ -132132245132134.1515123765412 = -1068938479778330.9382445997 -141241241241241248267654747412 ÷ 141241241241241248267654747412 = 1.0000000000 -141241241241241248267654747412 ÷ -149143276547656984948124912 = -947.0171536435 -141241241241241248267654747412 ÷ 0.1322135476547459213732911312 = 1068281153835079546834811315187.2460414102 -141241241241241248267654747412 ÷ -0.123912932193769965476541321 = -1139842619657922251471288994015.5745430452 -141241241241241248267654747412 ÷ 15 = 9416082749416083217843649827.4666666666 -141241241241241248267654747412 ÷ -15 = -9416082749416083217843649827.4666666666 -141241241241241248267654747412 ÷ 1 = 141241241241241248267654747412.0000000000 -141241241241241248267654747412 ÷ -9 = -15693471249026805363072749712.4444444444 -141241241241241248267654747412 ÷ 14.14 = 9988772365009989269282513961.2446958981 -141241241241241248267654747412 ÷ -16.60 = -8508508508508508931786430566.9879518072 -141241241241241248267654747412 ÷ 0.15 = 941608274941608321784364982746.6666666666 -141241241241241248267654747412 ÷ -0.01 = -14124124124124124826765474741200.0000000000 +141241241241241248267654747412 / 15151324141414.412312232141241 = 9322039441765651.5733487418 +141241241241241248267654747412 / -132132245132134.1515123765412 = -1068938479778330.9382445997 +141241241241241248267654747412 / 141241241241241248267654747412 = 1.0000000000 +141241241241241248267654747412 / -149143276547656984948124912 = -947.0171536435 +141241241241241248267654747412 / 0.1322135476547459213732911312 = 1068281153835079546834811315187.2460414102 +141241241241241248267654747412 / -0.123912932193769965476541321 = -1139842619657922251471288994015.5745430452 +141241241241241248267654747412 / 15 = 9416082749416083217843649827.4666666666 +141241241241241248267654747412 / -15 = -9416082749416083217843649827.4666666666 +141241241241241248267654747412 / 1 = 141241241241241248267654747412.0000000000 +141241241241241248267654747412 / -9 = -15693471249026805363072749712.4444444444 +141241241241241248267654747412 / 14.14 = 9988772365009989269282513961.2446958981 +141241241241241248267654747412 / -16.60 = -8508508508508508931786430566.9879518072 +141241241241241248267654747412 / 0.15 = 941608274941608321784364982746.6666666666 +141241241241241248267654747412 / -0.01 = -14124124124124124826765474741200.0000000000 Number "-149143276547656984948124912" (scale 10) --149143276547656984948124912 ÷ 15151324141414.412312232141241 = -9843580346881.4246956668 --149143276547656984948124912 ÷ -132132245132134.1515123765412 = 1128742468566.3333472319 --149143276547656984948124912 ÷ 141241241241241248267654747412 = -0.0010559470 --149143276547656984948124912 ÷ -149143276547656984948124912 = 1.0000000000 --149143276547656984948124912 ÷ 0.1322135476547459213732911312 = -1128048367154629906735882014.2432613477 --149143276547656984948124912 ÷ -0.123912932193769965476541321 = 1203613488174364568320268735.7225301437 --149143276547656984948124912 ÷ 15 = -9942885103177132329874994.1333333333 --149143276547656984948124912 ÷ -15 = 9942885103177132329874994.1333333333 --149143276547656984948124912 ÷ 1 = -149143276547656984948124912.0000000000 --149143276547656984948124912 ÷ -9 = 16571475171961887216458323.5555555555 --149143276547656984948124912 ÷ 14.14 = -10547615031658909826600064.4978783592 --149143276547656984948124912 ÷ -16.60 = 8984534731786565358320777.8313253012 --149143276547656984948124912 ÷ 0.15 = -994288510317713232987499413.3333333333 --149143276547656984948124912 ÷ -0.01 = 14914327654765698494812491200.0000000000 +-149143276547656984948124912 / 15151324141414.412312232141241 = -9843580346881.4246956668 +-149143276547656984948124912 / -132132245132134.1515123765412 = 1128742468566.3333472319 +-149143276547656984948124912 / 141241241241241248267654747412 = -0.0010559470 +-149143276547656984948124912 / -149143276547656984948124912 = 1.0000000000 +-149143276547656984948124912 / 0.1322135476547459213732911312 = -1128048367154629906735882014.2432613477 +-149143276547656984948124912 / -0.123912932193769965476541321 = 1203613488174364568320268735.7225301437 +-149143276547656984948124912 / 15 = -9942885103177132329874994.1333333333 +-149143276547656984948124912 / -15 = 9942885103177132329874994.1333333333 +-149143276547656984948124912 / 1 = -149143276547656984948124912.0000000000 +-149143276547656984948124912 / -9 = 16571475171961887216458323.5555555555 +-149143276547656984948124912 / 14.14 = -10547615031658909826600064.4978783592 +-149143276547656984948124912 / -16.60 = 8984534731786565358320777.8313253012 +-149143276547656984948124912 / 0.15 = -994288510317713232987499413.3333333333 +-149143276547656984948124912 / -0.01 = 14914327654765698494812491200.0000000000 Number "0.1322135476547459213732911312" (scale 10) -0.1322135476547459213732911312 ÷ 15151324141414.412312232141241 = 0.0000000000 -0.1322135476547459213732911312 ÷ -132132245132134.1515123765412 = 0.0000000000 -0.1322135476547459213732911312 ÷ 141241241241241248267654747412 = 0.0000000000 -0.1322135476547459213732911312 ÷ -149143276547656984948124912 = 0.0000000000 -0.1322135476547459213732911312 ÷ 0.1322135476547459213732911312 = 1.0000000000 -0.1322135476547459213732911312 ÷ -0.123912932193769965476541321 = -1.0669874831 -0.1322135476547459213732911312 ÷ 15 = 0.0088142365 -0.1322135476547459213732911312 ÷ -15 = -0.0088142365 -0.1322135476547459213732911312 ÷ 1 = 0.1322135476 -0.1322135476547459213732911312 ÷ -9 = -0.0146903941 -0.1322135476547459213732911312 ÷ 14.14 = 0.0093503216 -0.1322135476547459213732911312 ÷ -16.60 = -0.0079646715 -0.1322135476547459213732911312 ÷ 0.15 = 0.8814236510 -0.1322135476547459213732911312 ÷ -0.01 = -13.2213547654 +0.1322135476547459213732911312 / 15151324141414.412312232141241 = 0.0000000000 +0.1322135476547459213732911312 / -132132245132134.1515123765412 = 0.0000000000 +0.1322135476547459213732911312 / 141241241241241248267654747412 = 0.0000000000 +0.1322135476547459213732911312 / -149143276547656984948124912 = 0.0000000000 +0.1322135476547459213732911312 / 0.1322135476547459213732911312 = 1.0000000000 +0.1322135476547459213732911312 / -0.123912932193769965476541321 = -1.0669874831 +0.1322135476547459213732911312 / 15 = 0.0088142365 +0.1322135476547459213732911312 / -15 = -0.0088142365 +0.1322135476547459213732911312 / 1 = 0.1322135476 +0.1322135476547459213732911312 / -9 = -0.0146903941 +0.1322135476547459213732911312 / 14.14 = 0.0093503216 +0.1322135476547459213732911312 / -16.60 = -0.0079646715 +0.1322135476547459213732911312 / 0.15 = 0.8814236510 +0.1322135476547459213732911312 / -0.01 = -13.2213547654 Number "-0.123912932193769965476541321" (scale 10) --0.123912932193769965476541321 ÷ 15151324141414.412312232141241 = 0.0000000000 --0.123912932193769965476541321 ÷ -132132245132134.1515123765412 = 0.0000000000 --0.123912932193769965476541321 ÷ 141241241241241248267654747412 = 0.0000000000 --0.123912932193769965476541321 ÷ -149143276547656984948124912 = 0.0000000000 --0.123912932193769965476541321 ÷ 0.1322135476547459213732911312 = -0.9372181171 --0.123912932193769965476541321 ÷ -0.123912932193769965476541321 = 1.0000000000 --0.123912932193769965476541321 ÷ 15 = -0.0082608621 --0.123912932193769965476541321 ÷ -15 = 0.0082608621 --0.123912932193769965476541321 ÷ 1 = -0.1239129321 --0.123912932193769965476541321 ÷ -9 = 0.0137681035 --0.123912932193769965476541321 ÷ 14.14 = -0.0087632908 --0.123912932193769965476541321 ÷ -16.60 = 0.0074646344 --0.123912932193769965476541321 ÷ 0.15 = -0.8260862146 --0.123912932193769965476541321 ÷ -0.01 = 12.3912932193 +-0.123912932193769965476541321 / 15151324141414.412312232141241 = 0.0000000000 +-0.123912932193769965476541321 / -132132245132134.1515123765412 = 0.0000000000 +-0.123912932193769965476541321 / 141241241241241248267654747412 = 0.0000000000 +-0.123912932193769965476541321 / -149143276547656984948124912 = 0.0000000000 +-0.123912932193769965476541321 / 0.1322135476547459213732911312 = -0.9372181171 +-0.123912932193769965476541321 / -0.123912932193769965476541321 = 1.0000000000 +-0.123912932193769965476541321 / 15 = -0.0082608621 +-0.123912932193769965476541321 / -15 = 0.0082608621 +-0.123912932193769965476541321 / 1 = -0.1239129321 +-0.123912932193769965476541321 / -9 = 0.0137681035 +-0.123912932193769965476541321 / 14.14 = -0.0087632908 +-0.123912932193769965476541321 / -16.60 = 0.0074646344 +-0.123912932193769965476541321 / 0.15 = -0.8260862146 +-0.123912932193769965476541321 / -0.01 = 12.3912932193 diff --git a/ext/bcmath/tests/bcdiv_zero.phpt b/ext/bcmath/tests/bcdiv_zero.phpt index 7d8a5c5cd500d..e8685c7a63713 100644 --- a/ext/bcmath/tests/bcdiv_zero.phpt +++ b/ext/bcmath/tests/bcdiv_zero.phpt @@ -31,7 +31,7 @@ foreach ($scales as $scale) { echo "Number \"$dividend\" (scale $scale)\n"; foreach ($divisors as $divisor) { echo str_pad($dividend, 6, " ", STR_PAD_LEFT), - " ÷ ", + " / ", str_pad($divisor, 30), " = ", bcdiv($dividend, $divisor, $scale), @@ -44,129 +44,129 @@ foreach ($scales as $scale) { ?> --EXPECT-- Number "0" (scale 0) - 0 ÷ 15 = 0 - 0 ÷ -15 = 0 - 0 ÷ 1 = 0 - 0 ÷ -9 = 0 - 0 ÷ 14.14 = 0 - 0 ÷ -16.60 = 0 - 0 ÷ 0.15 = 0 - 0 ÷ -0.01 = 0 - 0 ÷ 15151324141414.412312232141241 = 0 - 0 ÷ -132132245132134.1515123765412 = 0 - 0 ÷ 141241241241241248267654747412 = 0 - 0 ÷ -149143276547656984948124912 = 0 - 0 ÷ 0.1322135476547459213732911312 = 0 - 0 ÷ -0.123912932193769965476541321 = 0 + 0 / 15 = 0 + 0 / -15 = 0 + 0 / 1 = 0 + 0 / -9 = 0 + 0 / 14.14 = 0 + 0 / -16.60 = 0 + 0 / 0.15 = 0 + 0 / -0.01 = 0 + 0 / 15151324141414.412312232141241 = 0 + 0 / -132132245132134.1515123765412 = 0 + 0 / 141241241241241248267654747412 = 0 + 0 / -149143276547656984948124912 = 0 + 0 / 0.1322135476547459213732911312 = 0 + 0 / -0.123912932193769965476541321 = 0 Number "0.00" (scale 0) - 0.00 ÷ 15 = 0 - 0.00 ÷ -15 = 0 - 0.00 ÷ 1 = 0 - 0.00 ÷ -9 = 0 - 0.00 ÷ 14.14 = 0 - 0.00 ÷ -16.60 = 0 - 0.00 ÷ 0.15 = 0 - 0.00 ÷ -0.01 = 0 - 0.00 ÷ 15151324141414.412312232141241 = 0 - 0.00 ÷ -132132245132134.1515123765412 = 0 - 0.00 ÷ 141241241241241248267654747412 = 0 - 0.00 ÷ -149143276547656984948124912 = 0 - 0.00 ÷ 0.1322135476547459213732911312 = 0 - 0.00 ÷ -0.123912932193769965476541321 = 0 + 0.00 / 15 = 0 + 0.00 / -15 = 0 + 0.00 / 1 = 0 + 0.00 / -9 = 0 + 0.00 / 14.14 = 0 + 0.00 / -16.60 = 0 + 0.00 / 0.15 = 0 + 0.00 / -0.01 = 0 + 0.00 / 15151324141414.412312232141241 = 0 + 0.00 / -132132245132134.1515123765412 = 0 + 0.00 / 141241241241241248267654747412 = 0 + 0.00 / -149143276547656984948124912 = 0 + 0.00 / 0.1322135476547459213732911312 = 0 + 0.00 / -0.123912932193769965476541321 = 0 Number "-0" (scale 0) - -0 ÷ 15 = 0 - -0 ÷ -15 = 0 - -0 ÷ 1 = 0 - -0 ÷ -9 = 0 - -0 ÷ 14.14 = 0 - -0 ÷ -16.60 = 0 - -0 ÷ 0.15 = 0 - -0 ÷ -0.01 = 0 - -0 ÷ 15151324141414.412312232141241 = 0 - -0 ÷ -132132245132134.1515123765412 = 0 - -0 ÷ 141241241241241248267654747412 = 0 - -0 ÷ -149143276547656984948124912 = 0 - -0 ÷ 0.1322135476547459213732911312 = 0 - -0 ÷ -0.123912932193769965476541321 = 0 + -0 / 15 = 0 + -0 / -15 = 0 + -0 / 1 = 0 + -0 / -9 = 0 + -0 / 14.14 = 0 + -0 / -16.60 = 0 + -0 / 0.15 = 0 + -0 / -0.01 = 0 + -0 / 15151324141414.412312232141241 = 0 + -0 / -132132245132134.1515123765412 = 0 + -0 / 141241241241241248267654747412 = 0 + -0 / -149143276547656984948124912 = 0 + -0 / 0.1322135476547459213732911312 = 0 + -0 / -0.123912932193769965476541321 = 0 Number "-0.00" (scale 0) - -0.00 ÷ 15 = 0 - -0.00 ÷ -15 = 0 - -0.00 ÷ 1 = 0 - -0.00 ÷ -9 = 0 - -0.00 ÷ 14.14 = 0 - -0.00 ÷ -16.60 = 0 - -0.00 ÷ 0.15 = 0 - -0.00 ÷ -0.01 = 0 - -0.00 ÷ 15151324141414.412312232141241 = 0 - -0.00 ÷ -132132245132134.1515123765412 = 0 - -0.00 ÷ 141241241241241248267654747412 = 0 - -0.00 ÷ -149143276547656984948124912 = 0 - -0.00 ÷ 0.1322135476547459213732911312 = 0 - -0.00 ÷ -0.123912932193769965476541321 = 0 + -0.00 / 15 = 0 + -0.00 / -15 = 0 + -0.00 / 1 = 0 + -0.00 / -9 = 0 + -0.00 / 14.14 = 0 + -0.00 / -16.60 = 0 + -0.00 / 0.15 = 0 + -0.00 / -0.01 = 0 + -0.00 / 15151324141414.412312232141241 = 0 + -0.00 / -132132245132134.1515123765412 = 0 + -0.00 / 141241241241241248267654747412 = 0 + -0.00 / -149143276547656984948124912 = 0 + -0.00 / 0.1322135476547459213732911312 = 0 + -0.00 / -0.123912932193769965476541321 = 0 Number "0" (scale 10) - 0 ÷ 15 = 0.0000000000 - 0 ÷ -15 = 0.0000000000 - 0 ÷ 1 = 0.0000000000 - 0 ÷ -9 = 0.0000000000 - 0 ÷ 14.14 = 0.0000000000 - 0 ÷ -16.60 = 0.0000000000 - 0 ÷ 0.15 = 0.0000000000 - 0 ÷ -0.01 = 0.0000000000 - 0 ÷ 15151324141414.412312232141241 = 0.0000000000 - 0 ÷ -132132245132134.1515123765412 = 0.0000000000 - 0 ÷ 141241241241241248267654747412 = 0.0000000000 - 0 ÷ -149143276547656984948124912 = 0.0000000000 - 0 ÷ 0.1322135476547459213732911312 = 0.0000000000 - 0 ÷ -0.123912932193769965476541321 = 0.0000000000 + 0 / 15 = 0.0000000000 + 0 / -15 = 0.0000000000 + 0 / 1 = 0.0000000000 + 0 / -9 = 0.0000000000 + 0 / 14.14 = 0.0000000000 + 0 / -16.60 = 0.0000000000 + 0 / 0.15 = 0.0000000000 + 0 / -0.01 = 0.0000000000 + 0 / 15151324141414.412312232141241 = 0.0000000000 + 0 / -132132245132134.1515123765412 = 0.0000000000 + 0 / 141241241241241248267654747412 = 0.0000000000 + 0 / -149143276547656984948124912 = 0.0000000000 + 0 / 0.1322135476547459213732911312 = 0.0000000000 + 0 / -0.123912932193769965476541321 = 0.0000000000 Number "0.00" (scale 10) - 0.00 ÷ 15 = 0.0000000000 - 0.00 ÷ -15 = 0.0000000000 - 0.00 ÷ 1 = 0.0000000000 - 0.00 ÷ -9 = 0.0000000000 - 0.00 ÷ 14.14 = 0.0000000000 - 0.00 ÷ -16.60 = 0.0000000000 - 0.00 ÷ 0.15 = 0.0000000000 - 0.00 ÷ -0.01 = 0.0000000000 - 0.00 ÷ 15151324141414.412312232141241 = 0.0000000000 - 0.00 ÷ -132132245132134.1515123765412 = 0.0000000000 - 0.00 ÷ 141241241241241248267654747412 = 0.0000000000 - 0.00 ÷ -149143276547656984948124912 = 0.0000000000 - 0.00 ÷ 0.1322135476547459213732911312 = 0.0000000000 - 0.00 ÷ -0.123912932193769965476541321 = 0.0000000000 + 0.00 / 15 = 0.0000000000 + 0.00 / -15 = 0.0000000000 + 0.00 / 1 = 0.0000000000 + 0.00 / -9 = 0.0000000000 + 0.00 / 14.14 = 0.0000000000 + 0.00 / -16.60 = 0.0000000000 + 0.00 / 0.15 = 0.0000000000 + 0.00 / -0.01 = 0.0000000000 + 0.00 / 15151324141414.412312232141241 = 0.0000000000 + 0.00 / -132132245132134.1515123765412 = 0.0000000000 + 0.00 / 141241241241241248267654747412 = 0.0000000000 + 0.00 / -149143276547656984948124912 = 0.0000000000 + 0.00 / 0.1322135476547459213732911312 = 0.0000000000 + 0.00 / -0.123912932193769965476541321 = 0.0000000000 Number "-0" (scale 10) - -0 ÷ 15 = 0.0000000000 - -0 ÷ -15 = 0.0000000000 - -0 ÷ 1 = 0.0000000000 - -0 ÷ -9 = 0.0000000000 - -0 ÷ 14.14 = 0.0000000000 - -0 ÷ -16.60 = 0.0000000000 - -0 ÷ 0.15 = 0.0000000000 - -0 ÷ -0.01 = 0.0000000000 - -0 ÷ 15151324141414.412312232141241 = 0.0000000000 - -0 ÷ -132132245132134.1515123765412 = 0.0000000000 - -0 ÷ 141241241241241248267654747412 = 0.0000000000 - -0 ÷ -149143276547656984948124912 = 0.0000000000 - -0 ÷ 0.1322135476547459213732911312 = 0.0000000000 - -0 ÷ -0.123912932193769965476541321 = 0.0000000000 + -0 / 15 = 0.0000000000 + -0 / -15 = 0.0000000000 + -0 / 1 = 0.0000000000 + -0 / -9 = 0.0000000000 + -0 / 14.14 = 0.0000000000 + -0 / -16.60 = 0.0000000000 + -0 / 0.15 = 0.0000000000 + -0 / -0.01 = 0.0000000000 + -0 / 15151324141414.412312232141241 = 0.0000000000 + -0 / -132132245132134.1515123765412 = 0.0000000000 + -0 / 141241241241241248267654747412 = 0.0000000000 + -0 / -149143276547656984948124912 = 0.0000000000 + -0 / 0.1322135476547459213732911312 = 0.0000000000 + -0 / -0.123912932193769965476541321 = 0.0000000000 Number "-0.00" (scale 10) - -0.00 ÷ 15 = 0.0000000000 - -0.00 ÷ -15 = 0.0000000000 - -0.00 ÷ 1 = 0.0000000000 - -0.00 ÷ -9 = 0.0000000000 - -0.00 ÷ 14.14 = 0.0000000000 - -0.00 ÷ -16.60 = 0.0000000000 - -0.00 ÷ 0.15 = 0.0000000000 - -0.00 ÷ -0.01 = 0.0000000000 - -0.00 ÷ 15151324141414.412312232141241 = 0.0000000000 - -0.00 ÷ -132132245132134.1515123765412 = 0.0000000000 - -0.00 ÷ 141241241241241248267654747412 = 0.0000000000 - -0.00 ÷ -149143276547656984948124912 = 0.0000000000 - -0.00 ÷ 0.1322135476547459213732911312 = 0.0000000000 - -0.00 ÷ -0.123912932193769965476541321 = 0.0000000000 + -0.00 / 15 = 0.0000000000 + -0.00 / -15 = 0.0000000000 + -0.00 / 1 = 0.0000000000 + -0.00 / -9 = 0.0000000000 + -0.00 / 14.14 = 0.0000000000 + -0.00 / -16.60 = 0.0000000000 + -0.00 / 0.15 = 0.0000000000 + -0.00 / -0.01 = 0.0000000000 + -0.00 / 15151324141414.412312232141241 = 0.0000000000 + -0.00 / -132132245132134.1515123765412 = 0.0000000000 + -0.00 / 141241241241241248267654747412 = 0.0000000000 + -0.00 / -149143276547656984948124912 = 0.0000000000 + -0.00 / 0.1322135476547459213732911312 = 0.0000000000 + -0.00 / -0.123912932193769965476541321 = 0.0000000000 From 2dc0cdf2dd76a33213bca1ac78845bf458fec56a Mon Sep 17 00:00:00 2001 From: Jorg Adam Sowa Date: Sat, 1 Jul 2023 21:23:26 +0200 Subject: [PATCH 09/15] Extract large exponents from bcpow.phpt into separate test file --- ext/bcmath/tests/bcpow.phpt | 642 +++++++++++----------- ext/bcmath/tests/bcpow_large_numbers.phpt | 154 ++++++ 2 files changed, 475 insertions(+), 321 deletions(-) create mode 100644 ext/bcmath/tests/bcpow_large_numbers.phpt diff --git a/ext/bcmath/tests/bcpow.phpt b/ext/bcmath/tests/bcpow.phpt index 491a594fc3a29..5c2f986cf555d 100644 --- a/ext/bcmath/tests/bcpow.phpt +++ b/ext/bcmath/tests/bcpow.phpt @@ -29,7 +29,7 @@ foreach ($scales as $scale) { echo "Number \"$baseNumber\" (scale $scale)\n"; foreach ($exponents as $exponent) { echo str_pad($baseNumber, 6, " ", STR_PAD_LEFT), - " ^ ", + " ** ", str_pad($exponent, 30), " = ", bcpow($baseNumber, $exponent, $scale), @@ -42,401 +42,401 @@ foreach ($scales as $scale) { ?> --EXPECT-- Number "15" (scale 0) - 15 ^ 15 = 437893890380859375 - 15 ^ -15 = 0 - 15 ^ 1 = 15 - 15 ^ -9 = 0 - 15 ^ 0 = 1 - 15 ^ -0 = 1 - 15 ^ 252 = 237135886481351297382468574917313144844970356302221777632832615638003070736580081217360793962070064247594576249396872345556164659881002366207912047265309059413892077092997608382858888266273629252398653205357976938870120670782142034597069710705445432682146079950147310455577098764479160308837890625 - 15 ^ -112 = 0 + 15 ** 15 = 437893890380859375 + 15 ** -15 = 0 + 15 ** 1 = 15 + 15 ** -9 = 0 + 15 ** 0 = 1 + 15 ** -0 = 1 + 15 ** 252 = 237135886481351297382468574917313144844970356302221777632832615638003070736580081217360793962070064247594576249396872345556164659881002366207912047265309059413892077092997608382858888266273629252398653205357976938870120670782142034597069710705445432682146079950147310455577098764479160308837890625 + 15 ** -112 = 0 Number "-15" (scale 0) - -15 ^ 15 = -437893890380859375 - -15 ^ -15 = 0 - -15 ^ 1 = -15 - -15 ^ -9 = 0 - -15 ^ 0 = 1 - -15 ^ -0 = 1 - -15 ^ 252 = 237135886481351297382468574917313144844970356302221777632832615638003070736580081217360793962070064247594576249396872345556164659881002366207912047265309059413892077092997608382858888266273629252398653205357976938870120670782142034597069710705445432682146079950147310455577098764479160308837890625 - -15 ^ -112 = 0 + -15 ** 15 = -437893890380859375 + -15 ** -15 = 0 + -15 ** 1 = -15 + -15 ** -9 = 0 + -15 ** 0 = 1 + -15 ** -0 = 1 + -15 ** 252 = 237135886481351297382468574917313144844970356302221777632832615638003070736580081217360793962070064247594576249396872345556164659881002366207912047265309059413892077092997608382858888266273629252398653205357976938870120670782142034597069710705445432682146079950147310455577098764479160308837890625 + -15 ** -112 = 0 Number "1" (scale 0) - 1 ^ 15 = 1 - 1 ^ -15 = 1 - 1 ^ 1 = 1 - 1 ^ -9 = 1 - 1 ^ 0 = 1 - 1 ^ -0 = 1 - 1 ^ 252 = 1 - 1 ^ -112 = 1 + 1 ** 15 = 1 + 1 ** -15 = 1 + 1 ** 1 = 1 + 1 ** -9 = 1 + 1 ** 0 = 1 + 1 ** -0 = 1 + 1 ** 252 = 1 + 1 ** -112 = 1 Number "-9" (scale 0) - -9 ^ 15 = -205891132094649 - -9 ^ -15 = 0 - -9 ^ 1 = -9 - -9 ^ -9 = 0 - -9 ^ 0 = 1 - -9 ^ -0 = 1 - -9 ^ 252 = 2945183635465464884233206633443008848559894187106131466268028902439028615518295534220079169301330491447962555905286712315981330452878058357582386904241524088181763471075659119460152769761830870007779820098802358876968679265201323425586410081 - -9 ^ -112 = 0 + -9 ** 15 = -205891132094649 + -9 ** -15 = 0 + -9 ** 1 = -9 + -9 ** -9 = 0 + -9 ** 0 = 1 + -9 ** -0 = 1 + -9 ** 252 = 2945183635465464884233206633443008848559894187106131466268028902439028615518295534220079169301330491447962555905286712315981330452878058357582386904241524088181763471075659119460152769761830870007779820098802358876968679265201323425586410081 + -9 ** -112 = 0 Number "0" (scale 0) - 0 ^ 15 = 0 - 0 ^ -15 = 0 - 0 ^ 1 = 0 - 0 ^ -9 = 0 - 0 ^ 0 = 1 - 0 ^ -0 = 1 - 0 ^ 252 = 0 - 0 ^ -112 = 0 + 0 ** 15 = 0 + 0 ** -15 = 0 + 0 ** 1 = 0 + 0 ** -9 = 0 + 0 ** 0 = 1 + 0 ** -0 = 1 + 0 ** 252 = 0 + 0 ** -112 = 0 Number "-0" (scale 0) - -0 ^ 15 = 0 - -0 ^ -15 = 0 - -0 ^ 1 = 0 - -0 ^ -9 = 0 - -0 ^ 0 = 1 - -0 ^ -0 = 1 - -0 ^ 252 = 0 - -0 ^ -112 = 0 + -0 ** 15 = 0 + -0 ** -15 = 0 + -0 ** 1 = 0 + -0 ** -9 = 0 + -0 ** 0 = 1 + -0 ** -0 = 1 + -0 ** 252 = 0 + -0 ** -112 = 0 Number "252" (scale 0) - 252 ^ 15 = 1049562032118382425513949173821472768 - 252 ^ -15 = 0 - 252 ^ 1 = 252 - 252 ^ -9 = 0 - 252 ^ 0 = 1 - 252 ^ -0 = 1 - 252 ^ 252 = 142212010733424647125806541813713973266552845448041013743767421605354690415544328196152173390963803494710443230142152775687771944805429044982729796870857181947776572826160793933424942988750037827638341986183789792079484880609013515717131451507203060282065264043070502125106179548342207047711204933650239424460841202157152719662980652213693426926863084348529493037513389175805577626219903234384208039735661457745854089305800218117427842428649306815115886661640301037762482527923343983853507875264930793965916131347421096416232894153340276842687468868552274843085150094307684610419227652811804917758213226496 - 252 ^ -112 = 0 + 252 ** 15 = 1049562032118382425513949173821472768 + 252 ** -15 = 0 + 252 ** 1 = 252 + 252 ** -9 = 0 + 252 ** 0 = 1 + 252 ** -0 = 1 + 252 ** 252 = 142212010733424647125806541813713973266552845448041013743767421605354690415544328196152173390963803494710443230142152775687771944805429044982729796870857181947776572826160793933424942988750037827638341986183789792079484880609013515717131451507203060282065264043070502125106179548342207047711204933650239424460841202157152719662980652213693426926863084348529493037513389175805577626219903234384208039735661457745854089305800218117427842428649306815115886661640301037762482527923343983853507875264930793965916131347421096416232894153340276842687468868552274843085150094307684610419227652811804917758213226496 + 252 ** -112 = 0 Number "-112" (scale 0) - -112 ^ 15 = -5473565759257037859954903482368 - -112 ^ -15 = 0 - -112 ^ 1 = -112 - -112 ^ -9 = 0 - -112 ^ 0 = 1 - -112 ^ -0 = 1 - -112 ^ 252 = 2528958559509291693508169626548016243760525615786379976651267082288161074806837567146354242426675448089179587223689918667106749284121965637887934532709154725528081671334320643858146400820666287506930741579829377389324701928200642059190071982670723834096616484481264403390509754202256821825886418273918096647296731861068941003342202311747852949747419032091731983573265045376333262301085406296848909763397511959941544798830761308589095475080050282796818166220650002245272286955283850226653729461037771414650027776147456 - -112 ^ -112 = 0 + -112 ** 15 = -5473565759257037859954903482368 + -112 ** -15 = 0 + -112 ** 1 = -112 + -112 ** -9 = 0 + -112 ** 0 = 1 + -112 ** -0 = 1 + -112 ** 252 = 2528958559509291693508169626548016243760525615786379976651267082288161074806837567146354242426675448089179587223689918667106749284121965637887934532709154725528081671334320643858146400820666287506930741579829377389324701928200642059190071982670723834096616484481264403390509754202256821825886418273918096647296731861068941003342202311747852949747419032091731983573265045376333262301085406296848909763397511959941544798830761308589095475080050282796818166220650002245272286955283850226653729461037771414650027776147456 + -112 ** -112 = 0 Number "0.00" (scale 0) - 0.00 ^ 15 = 0 - 0.00 ^ -15 = 0 - 0.00 ^ 1 = 0 - 0.00 ^ -9 = 0 - 0.00 ^ 0 = 1 - 0.00 ^ -0 = 1 - 0.00 ^ 252 = 0 - 0.00 ^ -112 = 0 + 0.00 ** 15 = 0 + 0.00 ** -15 = 0 + 0.00 ** 1 = 0 + 0.00 ** -9 = 0 + 0.00 ** 0 = 1 + 0.00 ** -0 = 1 + 0.00 ** 252 = 0 + 0.00 ** -112 = 0 Number "-0.00" (scale 0) - -0.00 ^ 15 = 0 - -0.00 ^ -15 = 0 - -0.00 ^ 1 = 0 - -0.00 ^ -9 = 0 - -0.00 ^ 0 = 1 - -0.00 ^ -0 = 1 - -0.00 ^ 252 = 0 - -0.00 ^ -112 = 0 + -0.00 ** 15 = 0 + -0.00 ** -15 = 0 + -0.00 ** 1 = 0 + -0.00 ** -9 = 0 + -0.00 ** 0 = 1 + -0.00 ** -0 = 1 + -0.00 ** 252 = 0 + -0.00 ** -112 = 0 Number "14.14" (scale 0) - 14.14 ^ 15 = 180609729388653367 - 14.14 ^ -15 = 0 - 14.14 ^ 1 = 14 - 14.14 ^ -9 = 0 - 14.14 ^ 0 = 1 - 14.14 ^ -0 = 1 - 14.14 ^ 252 = 81893830287657387446140079713887806093576884288543703328783802176508922753380870094003376900318176725198165627317176488631295332728458521626072637389422651709754634844150191850264235770478926203337416116264674564206565124289082609409927041547210316199545928823591027686585730497632744792533 - 14.14 ^ -112 = 0 + 14.14 ** 15 = 180609729388653367 + 14.14 ** -15 = 0 + 14.14 ** 1 = 14 + 14.14 ** -9 = 0 + 14.14 ** 0 = 1 + 14.14 ** -0 = 1 + 14.14 ** 252 = 81893830287657387446140079713887806093576884288543703328783802176508922753380870094003376900318176725198165627317176488631295332728458521626072637389422651709754634844150191850264235770478926203337416116264674564206565124289082609409927041547210316199545928823591027686585730497632744792533 + 14.14 ** -112 = 0 Number "-16.60" (scale 0) --16.60 ^ 15 = -2002725006700243463 --16.60 ^ -15 = 0 --16.60 ^ 1 = -16 --16.60 ^ -9 = 0 --16.60 ^ 0 = 1 --16.60 ^ -0 = 1 --16.60 ^ 252 = 29325011162031531635050775473043742335712717807162139294189975794596377719994688259393390430325862997866008694776131070878139493075620575422701181905723221059535177378476880731856824922247604302185770818227621273103971150596854313288134126369153196254990016237048145067458027194360617116808917107675683822643 --16.60 ^ -112 = 0 +-16.60 ** 15 = -2002725006700243463 +-16.60 ** -15 = 0 +-16.60 ** 1 = -16 +-16.60 ** -9 = 0 +-16.60 ** 0 = 1 +-16.60 ** -0 = 1 +-16.60 ** 252 = 29325011162031531635050775473043742335712717807162139294189975794596377719994688259393390430325862997866008694776131070878139493075620575422701181905723221059535177378476880731856824922247604302185770818227621273103971150596854313288134126369153196254990016237048145067458027194360617116808917107675683822643 +-16.60 ** -112 = 0 Number "0.15" (scale 0) - 0.15 ^ 15 = 0 - 0.15 ^ -15 = 2283658260521 - 0.15 ^ 1 = 0 - 0.15 ^ -9 = 26012294 - 0.15 ^ 0 = 1 - 0.15 ^ -0 = 1 - 0.15 ^ 252 = 0 - 0.15 ^ -112 = 189574092538418764958341193234367215745086742520818271114560854632390900314942322598922704092 + 0.15 ** 15 = 0 + 0.15 ** -15 = 2283658260521 + 0.15 ** 1 = 0 + 0.15 ** -9 = 26012294 + 0.15 ** 0 = 1 + 0.15 ** -0 = 1 + 0.15 ** 252 = 0 + 0.15 ** -112 = 189574092538418764958341193234367215745086742520818271114560854632390900314942322598922704092 Number "-0.01" (scale 0) - -0.01 ^ 15 = 0 - -0.01 ^ -15 = -1000000000000000000000000000000 - -0.01 ^ 1 = 0 - -0.01 ^ -9 = -1000000000000000000 - -0.01 ^ 0 = 1 - -0.01 ^ -0 = 1 - -0.01 ^ 252 = 0 - -0.01 ^ -112 = 100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 + -0.01 ** 15 = 0 + -0.01 ** -15 = -1000000000000000000000000000000 + -0.01 ** 1 = 0 + -0.01 ** -9 = -1000000000000000000 + -0.01 ** 0 = 1 + -0.01 ** -0 = 1 + -0.01 ** 252 = 0 + -0.01 ** -112 = 100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 Number "15151324141414.412312232141241" (scale 0) -15151324141414.412312232141241 ^ 15 = 509048123991351801905481953476379185972789524506389464560948346272971876778908444213802402540123245924548973078757287880001162665191012187707496396738218203170247236816923480505943223846447785782345 -15151324141414.412312232141241 ^ -15 = 0 -15151324141414.412312232141241 ^ 1 = 15151324141414 -15151324141414.412312232141241 ^ -9 = 0 -15151324141414.412312232141241 ^ 0 = 1 -15151324141414.412312232141241 ^ -0 = 1 -15151324141414.412312232141241 ^ 252 = 2975421749795666718292864311407249970705086081437807395789379168718267809761515926216519710525556923711393180871882349125480337759668727402072958238900666362552341750552695988372017271582392491705356316948514737089205360282499880482512926893561832567935188520485154057479922893292233844872682027689029924296957873832086320362860520134654280058518517337570653996385278714198685752823835453817905306636319703719003676343516921560023010996505106467350842109482615346014981820723775172695392986401597801626150692206539756529644889137926049906575290564959396735953680592250779460130816876807757766338263686270020029393453575181327870591265373834140347848891333472452106266668645850397235968389042220027274496640159090815418483309643657324273121448493101717217140617069517287371864653153681358830190414615833078002577453411141597016583358385430394744450538495805740402488576124870572258200605831119008100984519684993455060646872766261382240383564392178883974453450433114215183488267147681395487265404247208352661495181304031822061114406175030677886104508679211172804603630316447723815907701460914622481206853022006681302191940743481903991732602477879503644713688600025822484351386994709104484371310424352144611218737196401824457866949669228902625541115988570606278592188602331451576075786613348336629409301707863923798082511203519536680273830467529869070112013346223720130183581189201489843066803035998524636580843999168622007134798723860720169157200004627398709928941733609441557160972211113022692009799237864185615460855228045985383589616750868474559577038584404446390706055987175018852877810774653462856565006598191028334508282011970034047209214176244147503985386832987247129380772291221015035166871079932982021644848487302418889155646720341011763574205760582552545432674974794783974025401318074084939141860755094923101801284442989344181743012614781021983935394731085008059924819771193595363859258571474767439534580638568746666210621240873673676940762489862112336626521441471577301366647762037305798100798711822457474507172500970023127288841824797039587587687760406935930088932018738492033507792817250533066953710174207685876451854460620309225706829752706450285622677922594957647037672524232255747269667789144401086986842640538153043741101238245322300993710394384754508967946211337487952324876892016919924636143376046118565299301806000686710931777881411145696867371682466218379864851343043041312758162391699150775018231599537746501756924961427444527995061269251565547747098676254156910141573235165420989417824245466381006116578002121746837672733849938657667872006918460874232266046864354612969306512425002050502769904919642157609172541701550215596501139800180259552618049103708500764672848369198536220300039766241517053637402993685274740246644140211865650547971680391614831119804648079596819224703795536455681460692071824945358084847698465553826334065350185771802401947633785300181386909348829848309501929340612695571623266869616638304357843374880496058625355636022120527400443841025788264209843812042625792300865583082505414465908017500188208987693716855836263772885824776988984333362684311002647195832946927199653846403980218407171091513992332604667414925751436017212580993860794349764631915036822374405575551253454423848395310883501116565831195963321659796880685759075194666868292856205113353111159407896940446955956749209 -15151324141414.412312232141241 ^ -112 = 0 +15151324141414.412312232141241 ** 15 = 509048123991351801905481953476379185972789524506389464560948346272971876778908444213802402540123245924548973078757287880001162665191012187707496396738218203170247236816923480505943223846447785782345 +15151324141414.412312232141241 ** -15 = 0 +15151324141414.412312232141241 ** 1 = 15151324141414 +15151324141414.412312232141241 ** -9 = 0 +15151324141414.412312232141241 ** 0 = 1 +15151324141414.412312232141241 ** -0 = 1 +15151324141414.412312232141241 ** 252 = 2975421749795666718292864311407249970705086081437807395789379168718267809761515926216519710525556923711393180871882349125480337759668727402072958238900666362552341750552695988372017271582392491705356316948514737089205360282499880482512926893561832567935188520485154057479922893292233844872682027689029924296957873832086320362860520134654280058518517337570653996385278714198685752823835453817905306636319703719003676343516921560023010996505106467350842109482615346014981820723775172695392986401597801626150692206539756529644889137926049906575290564959396735953680592250779460130816876807757766338263686270020029393453575181327870591265373834140347848891333472452106266668645850397235968389042220027274496640159090815418483309643657324273121448493101717217140617069517287371864653153681358830190414615833078002577453411141597016583358385430394744450538495805740402488576124870572258200605831119008100984519684993455060646872766261382240383564392178883974453450433114215183488267147681395487265404247208352661495181304031822061114406175030677886104508679211172804603630316447723815907701460914622481206853022006681302191940743481903991732602477879503644713688600025822484351386994709104484371310424352144611218737196401824457866949669228902625541115988570606278592188602331451576075786613348336629409301707863923798082511203519536680273830467529869070112013346223720130183581189201489843066803035998524636580843999168622007134798723860720169157200004627398709928941733609441557160972211113022692009799237864185615460855228045985383589616750868474559577038584404446390706055987175018852877810774653462856565006598191028334508282011970034047209214176244147503985386832987247129380772291221015035166871079932982021644848487302418889155646720341011763574205760582552545432674974794783974025401318074084939141860755094923101801284442989344181743012614781021983935394731085008059924819771193595363859258571474767439534580638568746666210621240873673676940762489862112336626521441471577301366647762037305798100798711822457474507172500970023127288841824797039587587687760406935930088932018738492033507792817250533066953710174207685876451854460620309225706829752706450285622677922594957647037672524232255747269667789144401086986842640538153043741101238245322300993710394384754508967946211337487952324876892016919924636143376046118565299301806000686710931777881411145696867371682466218379864851343043041312758162391699150775018231599537746501756924961427444527995061269251565547747098676254156910141573235165420989417824245466381006116578002121746837672733849938657667872006918460874232266046864354612969306512425002050502769904919642157609172541701550215596501139800180259552618049103708500764672848369198536220300039766241517053637402993685274740246644140211865650547971680391614831119804648079596819224703795536455681460692071824945358084847698465553826334065350185771802401947633785300181386909348829848309501929340612695571623266869616638304357843374880496058625355636022120527400443841025788264209843812042625792300865583082505414465908017500188208987693716855836263772885824776988984333362684311002647195832946927199653846403980218407171091513992332604667414925751436017212580993860794349764631915036822374405575551253454423848395310883501116565831195963321659796880685759075194666868292856205113353111159407896940446955956749209 +15151324141414.412312232141241 ** -112 = 0 Number "141241241241241248267654747412" (scale 0) -141241241241241248267654747412 ^ 15 = 177591789298838947421924937418435926483207726032941337126565686201154837989992676792469043927153886362407093561688979426718344848540943458245870720268722797084708626211824507010348223033844880992203548347580375252630658556528592298319547225224912135982081686378909626742998484437641863458021277126578238452879997277005795795020835662533892290564198652316605246272512413311084386660488961246461538425989780621930750572963428718487554490368 -141241241241241248267654747412 ^ -15 = 0 -141241241241241248267654747412 ^ 1 = 141241241241241248267654747412 -141241241241241248267654747412 ^ -9 = 0 -141241241241241248267654747412 ^ 0 = 1 -141241241241241248267654747412 ^ -0 = 1 -141241241241241248267654747412 ^ 252 = 61702737614252266948752156824258824995959599972302320510716529982037298313739133760034183411877915226877565852198668440669791795617272708708492070599904800132098399232978789534072748261835151242629120913793827710449864804330737116696282852494151262231643262037509694372134135894276508967194766869889867303622326767458055285775054658565704105389065774707528077134226867060689181155582362175947504766959470020293226474023546968232460082444503912720021117368360386834444296061143129153351909427031876573177512880122064185569107842900553293550154759961105705458193916741180207197209621223094253214396769871913256823886396746414009606236401337641975159583111263046921277256870910247139612445619959067659323246784229705879779504519921968053141823090638689328500711053428918278999419825533334808914479125124304786443895285883492931266287931531729858829237461074566895486671242348082833878884776228517928133923449282430038745609287058924814413730985957861336607098992582653851368483642246306509531450226330989261394231526444743678146424987980458014955926233473826334115019067286145968725016152043997048698852555649504111446712360855837865476980303396801134199935075659852802884819197423764473479086847306010829721607657507579637914756242599185804487547475812412827298700399642854781876339506969947557967510353980827513717983184885292080872213577420468280210432294624241752834053309219199045973319521987975932929891565623163042217388611918307622483024452293173783579391106196420370018442330967765451700900306909737464257886906607274005552053888483483054020641145694539605337937744331035605313696665428737416632101002639001569789365490404722602805032116136122275148638414611401101532057194278420768914301864998398142593349158088898737725867540737097890425196584907775942120540985239557579236871185430362654320129291837576497911030976672546705634824923076862019595021475580215199988383732424366096745105419692283398918642003304826916218038854944067948189983518814346644870415937764601253868517196737959263980145504426078052198314663327843039356842201353163719488533902336353096176525901730253653712920740921897375508115858541406566947578335604123685577167716291169069652779908723297589735946583152466623845488142430700731769152222928283344575334939855201356733293357748709762620500872007205341239109409378799478441798933979724812650664098561233648811173269759247319678281986289749980800969619374582248288309266623507972587507556836064440726974305255199923316929818005467224051058298675312384426804897772240949920506431569837490498738453686746046335084609377713999742753257733912005654985684955512755879419270408315204048723476100838206401604215791253443838837275686487522888505399721610616356437415942085415265887671279570399360491649770978544857086906535678225672378863908117400571273280456942553369722415886814734827811782754510807365782422375263311630528352008474205547181623751728827140229718189606400373948548748620058632906237446487461463924934038124060220073591275626363882021308939573471462771350670733259367229333311304626874470724822013347119651171746131956616787517406892676075170382597409056665459502450515715507008118773500106516262784295667877075894103798253576492873141052750983781150748301119099230755964674235471935040610571173788486284126167436426267511157335062848567544617136701036212286420938449059910123857126789600929537328019086612659111870130906758076250376040429753144954758559356615713330390937898173091733151870035205661876454153260289142884914806807421852435737887997788694746400471112311576221296382603532103910277379683106908049352464276556594523117986718023572377990452537890518505167077689962380643979739773271443338742938727262511258728095020188473504370112836853749915575721872419520821790251159556333443030459056638192775423075084514851738672355958336265015380193591541922572518272773045049968850063625505732261611074622474965936400258314638193512375533757871806804692087708082031597721541387274042872955965737015089791668860525425793056778509470752578481376934088995106166553613693981904966686690212955481430046830913629928245843069361759411764297658217897316455217217021684202563946301505904193890271187899540947054172542875489231623713315378660419455411924354406330626224728228155305799300626640774404377831301051311563284401393151464407836422401342988060834178957138740247616789909739231830346449366019203847401064438442628508720077238078363655382024999197911442576806729689998326498342414751123237684542163876848231535744093508827210033685403359485309410368756619655335647815457456271662771356876949346139750604173629577681834134842499790368833444683342223857503185849902689436294823704067138925427306607192910954091698318729347145907800382668086667899534178563329442767437901814888337083677115243233418029978664046416826126543919629091736900005600339085979551469129407326751494940405612077593337217212627875249494414287211237336394051868492049328715249941706898117243520077930496903083255415280985218820687648161267600024140589397356281610905118704267436760893073994318473316685154852928135755455009702456043054322286620596648587752781151951829993681040341917550141278881598811594525627199147969934315163608714206891254146576331437603057409575204473025499304932390635935053481842967808825955521225903532223710955029023291335271704387554010604494359260592752707638749226503894251533287510138743058143563627083333323467953930288323174099691963642626244047994212921019096440748326461891434713107878328347627128553535347757109535162399519267201671099780388509076162219198648438104874056150803718036255353941654576267453857313032960105282442901730781706849116468293203141632905459414497264691251443801343872064950763335362229179456002525747120895247485013820030787875667079177283909056955331506973886798132875485898886780825156590108516771255757929317588856294114876639328139025640209294004084324019087271465180464949662380290646689899281765951368313154956095080011378907737551290670716282657109905603462006701850544998109045986412695185702298097876768249839078776688511467326239283983098509833719622936353377241972069901941714532498768716115868591570677576564417673178096539225866975241748028970361222145947727863536827216898514621847057819434576609230609611433988111992050578257972824282582096472184583048169498234433362074234852397751092471572561447915858864173251918950055149910352613561842701231235991010567523708933526326914146617809092162785366466356881319331412699810698600005749537204138000103625418561709921211393425978474528008482773381566071958815629154952129819071276958851406185526598276525973924382616619638927391896061767984462316342879485215181167142278283860974122393376129042592163052368958562549536015824310093694746026464275365131184771894447337638915074864139725976487382152380756354201968249702096723240570755670245536167613452904133125178947690742699517259032210148920215799181139024035965215646290857562866703810691715946409991609804815076179410873897787742683601227701850554553822077038999133518015046632371381193916753753001215985430108776610861216333105848176092629616183087158890392572221891278673318821093507423533826286478376277706846738214944276585022159559546442701466991751438781940501472267762449963577519763912275982471063234586863118222911568589623962096407513817772511232500343850038909537966015828523715127021508912585417674924982540682182384350779611171081429430780526138025312256 -141241241241241248267654747412 ^ -112 = 0 +141241241241241248267654747412 ** 15 = 177591789298838947421924937418435926483207726032941337126565686201154837989992676792469043927153886362407093561688979426718344848540943458245870720268722797084708626211824507010348223033844880992203548347580375252630658556528592298319547225224912135982081686378909626742998484437641863458021277126578238452879997277005795795020835662533892290564198652316605246272512413311084386660488961246461538425989780621930750572963428718487554490368 +141241241241241248267654747412 ** -15 = 0 +141241241241241248267654747412 ** 1 = 141241241241241248267654747412 +141241241241241248267654747412 ** -9 = 0 +141241241241241248267654747412 ** 0 = 1 +141241241241241248267654747412 ** -0 = 1 +141241241241241248267654747412 ** 252 = 61702737614252266948752156824258824995959599972302320510716529982037298313739133760034183411877915226877565852198668440669791795617272708708492070599904800132098399232978789534072748261835151242629120913793827710449864804330737116696282852494151262231643262037509694372134135894276508967194766869889867303622326767458055285775054658565704105389065774707528077134226867060689181155582362175947504766959470020293226474023546968232460082444503912720021117368360386834444296061143129153351909427031876573177512880122064185569107842900553293550154759961105705458193916741180207197209621223094253214396769871913256823886396746414009606236401337641975159583111263046921277256870910247139612445619959067659323246784229705879779504519921968053141823090638689328500711053428918278999419825533334808914479125124304786443895285883492931266287931531729858829237461074566895486671242348082833878884776228517928133923449282430038745609287058924814413730985957861336607098992582653851368483642246306509531450226330989261394231526444743678146424987980458014955926233473826334115019067286145968725016152043997048698852555649504111446712360855837865476980303396801134199935075659852802884819197423764473479086847306010829721607657507579637914756242599185804487547475812412827298700399642854781876339506969947557967510353980827513717983184885292080872213577420468280210432294624241752834053309219199045973319521987975932929891565623163042217388611918307622483024452293173783579391106196420370018442330967765451700900306909737464257886906607274005552053888483483054020641145694539605337937744331035605313696665428737416632101002639001569789365490404722602805032116136122275148638414611401101532057194278420768914301864998398142593349158088898737725867540737097890425196584907775942120540985239557579236871185430362654320129291837576497911030976672546705634824923076862019595021475580215199988383732424366096745105419692283398918642003304826916218038854944067948189983518814346644870415937764601253868517196737959263980145504426078052198314663327843039356842201353163719488533902336353096176525901730253653712920740921897375508115858541406566947578335604123685577167716291169069652779908723297589735946583152466623845488142430700731769152222928283344575334939855201356733293357748709762620500872007205341239109409378799478441798933979724812650664098561233648811173269759247319678281986289749980800969619374582248288309266623507972587507556836064440726974305255199923316929818005467224051058298675312384426804897772240949920506431569837490498738453686746046335084609377713999742753257733912005654985684955512755879419270408315204048723476100838206401604215791253443838837275686487522888505399721610616356437415942085415265887671279570399360491649770978544857086906535678225672378863908117400571273280456942553369722415886814734827811782754510807365782422375263311630528352008474205547181623751728827140229718189606400373948548748620058632906237446487461463924934038124060220073591275626363882021308939573471462771350670733259367229333311304626874470724822013347119651171746131956616787517406892676075170382597409056665459502450515715507008118773500106516262784295667877075894103798253576492873141052750983781150748301119099230755964674235471935040610571173788486284126167436426267511157335062848567544617136701036212286420938449059910123857126789600929537328019086612659111870130906758076250376040429753144954758559356615713330390937898173091733151870035205661876454153260289142884914806807421852435737887997788694746400471112311576221296382603532103910277379683106908049352464276556594523117986718023572377990452537890518505167077689962380643979739773271443338742938727262511258728095020188473504370112836853749915575721872419520821790251159556333443030459056638192775423075084514851738672355958336265015380193591541922572518272773045049968850063625505732261611074622474965936400258314638193512375533757871806804692087708082031597721541387274042872955965737015089791668860525425793056778509470752578481376934088995106166553613693981904966686690212955481430046830913629928245843069361759411764297658217897316455217217021684202563946301505904193890271187899540947054172542875489231623713315378660419455411924354406330626224728228155305799300626640774404377831301051311563284401393151464407836422401342988060834178957138740247616789909739231830346449366019203847401064438442628508720077238078363655382024999197911442576806729689998326498342414751123237684542163876848231535744093508827210033685403359485309410368756619655335647815457456271662771356876949346139750604173629577681834134842499790368833444683342223857503185849902689436294823704067138925427306607192910954091698318729347145907800382668086667899534178563329442767437901814888337083677115243233418029978664046416826126543919629091736900005600339085979551469129407326751494940405612077593337217212627875249494414287211237336394051868492049328715249941706898117243520077930496903083255415280985218820687648161267600024140589397356281610905118704267436760893073994318473316685154852928135755455009702456043054322286620596648587752781151951829993681040341917550141278881598811594525627199147969934315163608714206891254146576331437603057409575204473025499304932390635935053481842967808825955521225903532223710955029023291335271704387554010604494359260592752707638749226503894251533287510138743058143563627083333323467953930288323174099691963642626244047994212921019096440748326461891434713107878328347627128553535347757109535162399519267201671099780388509076162219198648438104874056150803718036255353941654576267453857313032960105282442901730781706849116468293203141632905459414497264691251443801343872064950763335362229179456002525747120895247485013820030787875667079177283909056955331506973886798132875485898886780825156590108516771255757929317588856294114876639328139025640209294004084324019087271465180464949662380290646689899281765951368313154956095080011378907737551290670716282657109905603462006701850544998109045986412695185702298097876768249839078776688511467326239283983098509833719622936353377241972069901941714532498768716115868591570677576564417673178096539225866975241748028970361222145947727863536827216898514621847057819434576609230609611433988111992050578257972824282582096472184583048169498234433362074234852397751092471572561447915858864173251918950055149910352613561842701231235991010567523708933526326914146617809092162785366466356881319331412699810698600005749537204138000103625418561709921211393425978474528008482773381566071958815629154952129819071276958851406185526598276525973924382616619638927391896061767984462316342879485215181167142278283860974122393376129042592163052368958562549536015824310093694746026464275365131184771894447337638915074864139725976487382152380756354201968249702096723240570755670245536167613452904133125178947690742699517259032210148920215799181139024035965215646290857562866703810691715946409991609804815076179410873897787742683601227701850554553822077038999133518015046632371381193916753753001215985430108776610861216333105848176092629616183087158890392572221891278673318821093507423533826286478376277706846738214944276585022159559546442701466991751438781940501472267762449963577519763912275982471063234586863118222911568589623962096407513817772511232500343850038909537966015828523715127021508912585417674924982540682182384350779611171081429430780526138025312256 +141241241241241248267654747412 ** -112 = 0 Number "-149143276547656984948124912" (scale 0) --149143276547656984948124912 ^ 15 = -401841881822660241398409660309345646463535278187389488718526585893873800090729191609465595568674086078015487989884600849819723618141030735892646637579078630759905628572464757376301450900008605507116286859140901254928168279833198528761329808672095261265618307499605901098109261736293336298350347017449323858811047847238969925531775390894165290898723086447624518554747816961256145036283496890368 --149143276547656984948124912 ^ -15 = 0 --149143276547656984948124912 ^ 1 = -149143276547656984948124912 --149143276547656984948124912 ^ -9 = 0 --149143276547656984948124912 ^ 0 = 1 --149143276547656984948124912 ^ -0 = 1 --149143276547656984948124912 ^ 252 = 55992175588333605542254063511278186461754574279839591709604310477562564689608443402403312222078711893971235561416950804719506082702379684733623971919408777114548100892216614108951324353246556535017960316014312222959702094808816331434094822650280427440063882576116695336500221646817757077369708529723823620336810350659576930581023887896886330503478109619863448515840946841190553234682382107049366084010115954164628751537372573754962628376851714140066914283347218349289869214926741444216767437164014398845666639858144658260377876458100579298055950974326675298651898083944350131609483093051504290661822668587661388602474880915186436725755772988399461893678236514411268113165984474267116617738961793643422894941375678592236663229748980138556108251262049269924802865828570213870281755635578142765872996532114681632125265545602095618091845037482357075517681870091778157619627960547482657474217943178159685376848804852485477702194998676631497601923456769896045663194900447061246337026655179495322126687564510781039271062988745945476519142221837023581656486042843501094480484668735886050383956287988798135101996785626705798462084512791858856000486173266205660052015961534265640905209313211125294627662693933297211009401491531951462889268507817897027972228709128736864008707571464724272762871838758126048184870005667275664845553774616604225572310912906152876060860153081105424979281592600839984125772468965874379832364640972866833334251698542584896314049237205644695553901317638647614318787708386467733615459065054365995897250270550067664267902152593317177099901109073008588486059511534052232495744462484660835773139005865467174339411663680328459135341612957853618227176487790111649236830978394018719354265785673205669861260376582410982507319458447629229410566850388275381698880420276787659514779189425772384786376987076804655929761620083736939837925917040082332479217674557289518688000706235667753826358380348450542285250406537012741099810396394118895119698580737840025778922487867828224721621696636134003638036732306141123387999132026332818408631403997196873195235009010958949928160436198665838441080496516462280678580659979676597569859757823014996017746962217866836145864024569035599176373962484096890443265839324221819146344682358316417403925617439797384999832590030653638024893217809739723987689363496190587792737138664106310356621671611551929705606372447129233289185995118668079125240237102990263869918086723137110005986280396651777574801894806896216800028637569274623115952691705831786855142876372495042729622496416156065929528185678346792948178219730451297126977072400452744745442561264775799188074289500187819445634298783592673376925950468898124384645088176602526214362158710249480242291627057463890117803354864730141461123747252541155347156400786777580958799766203254109472380735138017589461079608897268030232306639370404014163374433657561727131953203599087127600881156801848610207055453714038310061358219048264213893904654160135134848687217172657051056772433684382081263303256605397966956854911368891641655435481304103776752873688058287104569168817065852794438626208265013522214226436602866008965183348172506623891029487173951745639310845051694186685631363145511797791938639666555812388418639006943045236047084104158886785565539716175502784568418794921820159931670582549209945162053950333817714412469166667825536844480057325499652926508866184039633216003293080890783177150560019167662732664450429084752291624787970859408952386737598480289325786960288529818745254001900176106836194717861463240979411026596588950731407070101543407905496821261729510687348937796821412471929466014397692973783859204087752392409288320366943382998932124935828714903875879810782071015247527108459417616171666066601727254393827585882211498062627962114450203721750315845815155021697506333572413625746275557635360793506459802530913864986879539619322648374208957842152789346087113544250046274926635250206832991054325050621508788782189089586427470337274776955856080752508329602238857381659447673739378703749938045217491297442880220072951767019308302182120866450686427636523729778183001298464279351451928526859912935358200922256687852217293342222770676364112675875706669220947500716778555631580892140965700894865432467415441058797916958701058613262784771287521375767679654675090202761215911050514394041232506701642838754586624728822744306994328186360720405674825737265107963504397795466141078520379635918101893732280384966090817776697492519589958581600274196260931284807107964025197355095278741484748256594018281189059520971488155232871826436474292672923671151932746647309516440171397028945399089869838594185867352632608780487775648305026266036688377754295386304268591067685420141876930761382919961712554949830460502589375485003677323126912620975565484588745962938195716999584478642921595627905781087037922126946614604204487324577624535390564298909897280520685096190766392954666547140142042912418332011086985860840135170509805299821832401396881784927340948572834668444512971438394035995512132253672305434131965163273499166432580879149169510915828895700480265882084820049681597304529404116243028731782666223146293276746325246389991906529999778889818267030526761479627741075225237850144113075710406764114186915812713229218993793341952820039777430468508433933966568805816476723519852998663547981299673789287916637548338855826997859936126186385134251146763787920958572343543991163814387927189271315975774832941216796979710625756748626599205479744652593376548351502299670239068557344870045319781398252470403969497344298988472389766532157945149006071078612248352124554889096445319251898085100982701259010029952682041054540095054811702903956018540222632923457127530247486958765495736895235378687056667532898872772226646337210525647648255272837299826798955752834895854767176324936924389475920748073831818096942140696117576092974900312853119224158903042363552736819426608351322112183508012056364946319635528219546604362373666786411115604890681450553292576529326479658711947191604698823116618052429048783309728106697011619648892228467141759801681403110446555051361286503728164299660143689758025052636205563319986489358179027312653555993846959468256374852368137107311301180752627493394581971715347510238354749743466448707369816187860965509171840845607662996123030730513040791692384884335938330381280366200730869537716461479253093292207520004802508144089109220447459994338712030132586927643258314767215456297941961060686384969263988976767300178026850202211882886115891867194452898699949334970606719473728841882215132953439233323551171404920756819606555668846000416712701888993858314625083201880134723672826428864990888175557418214752256 --149143276547656984948124912 ^ -112 = 0 +-149143276547656984948124912 ** 15 = -401841881822660241398409660309345646463535278187389488718526585893873800090729191609465595568674086078015487989884600849819723618141030735892646637579078630759905628572464757376301450900008605507116286859140901254928168279833198528761329808672095261265618307499605901098109261736293336298350347017449323858811047847238969925531775390894165290898723086447624518554747816961256145036283496890368 +-149143276547656984948124912 ** -15 = 0 +-149143276547656984948124912 ** 1 = -149143276547656984948124912 +-149143276547656984948124912 ** -9 = 0 +-149143276547656984948124912 ** 0 = 1 +-149143276547656984948124912 ** -0 = 1 +-149143276547656984948124912 ** 252 = 55992175588333605542254063511278186461754574279839591709604310477562564689608443402403312222078711893971235561416950804719506082702379684733623971919408777114548100892216614108951324353246556535017960316014312222959702094808816331434094822650280427440063882576116695336500221646817757077369708529723823620336810350659576930581023887896886330503478109619863448515840946841190553234682382107049366084010115954164628751537372573754962628376851714140066914283347218349289869214926741444216767437164014398845666639858144658260377876458100579298055950974326675298651898083944350131609483093051504290661822668587661388602474880915186436725755772988399461893678236514411268113165984474267116617738961793643422894941375678592236663229748980138556108251262049269924802865828570213870281755635578142765872996532114681632125265545602095618091845037482357075517681870091778157619627960547482657474217943178159685376848804852485477702194998676631497601923456769896045663194900447061246337026655179495322126687564510781039271062988745945476519142221837023581656486042843501094480484668735886050383956287988798135101996785626705798462084512791858856000486173266205660052015961534265640905209313211125294627662693933297211009401491531951462889268507817897027972228709128736864008707571464724272762871838758126048184870005667275664845553774616604225572310912906152876060860153081105424979281592600839984125772468965874379832364640972866833334251698542584896314049237205644695553901317638647614318787708386467733615459065054365995897250270550067664267902152593317177099901109073008588486059511534052232495744462484660835773139005865467174339411663680328459135341612957853618227176487790111649236830978394018719354265785673205669861260376582410982507319458447629229410566850388275381698880420276787659514779189425772384786376987076804655929761620083736939837925917040082332479217674557289518688000706235667753826358380348450542285250406537012741099810396394118895119698580737840025778922487867828224721621696636134003638036732306141123387999132026332818408631403997196873195235009010958949928160436198665838441080496516462280678580659979676597569859757823014996017746962217866836145864024569035599176373962484096890443265839324221819146344682358316417403925617439797384999832590030653638024893217809739723987689363496190587792737138664106310356621671611551929705606372447129233289185995118668079125240237102990263869918086723137110005986280396651777574801894806896216800028637569274623115952691705831786855142876372495042729622496416156065929528185678346792948178219730451297126977072400452744745442561264775799188074289500187819445634298783592673376925950468898124384645088176602526214362158710249480242291627057463890117803354864730141461123747252541155347156400786777580958799766203254109472380735138017589461079608897268030232306639370404014163374433657561727131953203599087127600881156801848610207055453714038310061358219048264213893904654160135134848687217172657051056772433684382081263303256605397966956854911368891641655435481304103776752873688058287104569168817065852794438626208265013522214226436602866008965183348172506623891029487173951745639310845051694186685631363145511797791938639666555812388418639006943045236047084104158886785565539716175502784568418794921820159931670582549209945162053950333817714412469166667825536844480057325499652926508866184039633216003293080890783177150560019167662732664450429084752291624787970859408952386737598480289325786960288529818745254001900176106836194717861463240979411026596588950731407070101543407905496821261729510687348937796821412471929466014397692973783859204087752392409288320366943382998932124935828714903875879810782071015247527108459417616171666066601727254393827585882211498062627962114450203721750315845815155021697506333572413625746275557635360793506459802530913864986879539619322648374208957842152789346087113544250046274926635250206832991054325050621508788782189089586427470337274776955856080752508329602238857381659447673739378703749938045217491297442880220072951767019308302182120866450686427636523729778183001298464279351451928526859912935358200922256687852217293342222770676364112675875706669220947500716778555631580892140965700894865432467415441058797916958701058613262784771287521375767679654675090202761215911050514394041232506701642838754586624728822744306994328186360720405674825737265107963504397795466141078520379635918101893732280384966090817776697492519589958581600274196260931284807107964025197355095278741484748256594018281189059520971488155232871826436474292672923671151932746647309516440171397028945399089869838594185867352632608780487775648305026266036688377754295386304268591067685420141876930761382919961712554949830460502589375485003677323126912620975565484588745962938195716999584478642921595627905781087037922126946614604204487324577624535390564298909897280520685096190766392954666547140142042912418332011086985860840135170509805299821832401396881784927340948572834668444512971438394035995512132253672305434131965163273499166432580879149169510915828895700480265882084820049681597304529404116243028731782666223146293276746325246389991906529999778889818267030526761479627741075225237850144113075710406764114186915812713229218993793341952820039777430468508433933966568805816476723519852998663547981299673789287916637548338855826997859936126186385134251146763787920958572343543991163814387927189271315975774832941216796979710625756748626599205479744652593376548351502299670239068557344870045319781398252470403969497344298988472389766532157945149006071078612248352124554889096445319251898085100982701259010029952682041054540095054811702903956018540222632923457127530247486958765495736895235378687056667532898872772226646337210525647648255272837299826798955752834895854767176324936924389475920748073831818096942140696117576092974900312853119224158903042363552736819426608351322112183508012056364946319635528219546604362373666786411115604890681450553292576529326479658711947191604698823116618052429048783309728106697011619648892228467141759801681403110446555051361286503728164299660143689758025052636205563319986489358179027312653555993846959468256374852368137107311301180752627493394581971715347510238354749743466448707369816187860965509171840845607662996123030730513040791692384884335938330381280366200730869537716461479253093292207520004802508144089109220447459994338712030132586927643258314767215456297941961060686384969263988976767300178026850202211882886115891867194452898699949334970606719473728841882215132953439233323551171404920756819606555668846000416712701888993858314625083201880134723672826428864990888175557418214752256 +-149143276547656984948124912 ** -112 = 0 Number "-132132245132134.1515123765412" (scale 0) --132132245132134.1515123765412 ^ 15 = -65332942084431118671715132691017936828728297532817376297090067844431557352758338594306899592493441083845683845573112529065975725871957965764869599362286162979915656223771056616561461958797695558519631556073805440 --132132245132134.1515123765412 ^ -15 = 0 --132132245132134.1515123765412 ^ 1 = -132132245132134 --132132245132134.1515123765412 ^ -9 = 0 --132132245132134.1515123765412 ^ 0 = 1 --132132245132134.1515123765412 ^ -0 = 1 --132132245132134.1515123765412 ^ 252 = 3120478727852745944038201629388077518619819959072778583628662888334880902703519914956089883839049682560676318469032398877418258855834502244373291879606411026505240673439178203360337045239911911401143426214698971271446651876647780290878775496277056268500023561875074401483645577685406485543728816046104697722586058947707076996271324455741296959565524792629154208973708365548001942744414873486576135834495119053638656800810039027025111460331113258212007994067919145384836907081609212431099297641564986044622031456724633662129385296885404614299495960919762385823257644295402159220952463360942737103080118148157378054224237643480822424971993488886224977914497478451840908909543741696948530676782472589176085509233818251158281114742053469197512119057322174380982258491102193374311292374479260658074669161655748423441627187461082149885494689147360706871450098031935056173199096293719222350434764175998710688281702890509097348360359424470253307347729933523000107901985428772530720331531602039527737982138204747133438804098370520558033130528360187686745723186175166911233242211471504301640494824606523094514433764325212802493051981781145617974800929022725476602466144772127930440805434165616744472255347819425748816302231931654549386733679017858450849437143025476899823162000718594064313231515875922351213500222461590573572602190403067267602652736825180691112504152614488461179376450513626420818955027469144025952675277586101528625525962975039500773275778271940118869825449096270757603664530201369396099033029284457100867407697277568670150540402862276543512075434177386868941061854045298572535075420109196042754099960063991947561825511501510308275562634049421237378673160125072162000008236844954128527856723821733254208508907735993281091035579467181540332944219703979021157597903396359158593344664084014589368086779575978259251720029980655644790465254951448194710584230098489732637703819106720935376496517841788507273903175469897103859611331100545364249483088831520541660951382659294376726172983396374439867149870807521191671805902233698315119009713542754446376327365814873898054136563782777104472609469109963308092044568027239290595186247761999234668032081218755268222207063445264559530223287160963458677689875951320832784965806613254975793162543596534222371458668498571166837299325731596777670132830001546839544284346351393964824730839639301046179558652696082308824070477223869283054978658326855126932082754121256920575641227926598676719724725719222484148625020220494108342394030408253089899891700400203336918661663751523788622735773864833731552284954237137952497719069892440806380625733323869952845631051069940707365414990621967523332677411935527536814983008403556834213618522880787952621206983027073172116156651218377851746340174808375254284001435816118302249193303397466776845851743890519082821148416722135170698614740907867435963618925044956902958148324272894672030283819168758463855285701991252475351862754820487744045764868396684777846686070069982217881227849496760269225414231083805733290534151123406915650028121222263850640283860639197520959825152626458400452325975452613482437167476356009654121926543290145079478070360029730020980795208355698196814222112480898983202043419519375263651949181097645574205178523255626929768121920234439313474099206104455976950857197860880977258241730976397804678973733516947554105951667082135434125689463359251547871548911802646544683845207784833032667495833535290224433943754770189766271196987201022608066882057869125850499995301677418321251261832661046278653566452890787168741868239138468494682699662284065061316757322733605 --132132245132134.1515123765412 ^ -112 = 0 +-132132245132134.1515123765412 ** 15 = -65332942084431118671715132691017936828728297532817376297090067844431557352758338594306899592493441083845683845573112529065975725871957965764869599362286162979915656223771056616561461958797695558519631556073805440 +-132132245132134.1515123765412 ** -15 = 0 +-132132245132134.1515123765412 ** 1 = -132132245132134 +-132132245132134.1515123765412 ** -9 = 0 +-132132245132134.1515123765412 ** 0 = 1 +-132132245132134.1515123765412 ** -0 = 1 +-132132245132134.1515123765412 ** 252 = 3120478727852745944038201629388077518619819959072778583628662888334880902703519914956089883839049682560676318469032398877418258855834502244373291879606411026505240673439178203360337045239911911401143426214698971271446651876647780290878775496277056268500023561875074401483645577685406485543728816046104697722586058947707076996271324455741296959565524792629154208973708365548001942744414873486576135834495119053638656800810039027025111460331113258212007994067919145384836907081609212431099297641564986044622031456724633662129385296885404614299495960919762385823257644295402159220952463360942737103080118148157378054224237643480822424971993488886224977914497478451840908909543741696948530676782472589176085509233818251158281114742053469197512119057322174380982258491102193374311292374479260658074669161655748423441627187461082149885494689147360706871450098031935056173199096293719222350434764175998710688281702890509097348360359424470253307347729933523000107901985428772530720331531602039527737982138204747133438804098370520558033130528360187686745723186175166911233242211471504301640494824606523094514433764325212802493051981781145617974800929022725476602466144772127930440805434165616744472255347819425748816302231931654549386733679017858450849437143025476899823162000718594064313231515875922351213500222461590573572602190403067267602652736825180691112504152614488461179376450513626420818955027469144025952675277586101528625525962975039500773275778271940118869825449096270757603664530201369396099033029284457100867407697277568670150540402862276543512075434177386868941061854045298572535075420109196042754099960063991947561825511501510308275562634049421237378673160125072162000008236844954128527856723821733254208508907735993281091035579467181540332944219703979021157597903396359158593344664084014589368086779575978259251720029980655644790465254951448194710584230098489732637703819106720935376496517841788507273903175469897103859611331100545364249483088831520541660951382659294376726172983396374439867149870807521191671805902233698315119009713542754446376327365814873898054136563782777104472609469109963308092044568027239290595186247761999234668032081218755268222207063445264559530223287160963458677689875951320832784965806613254975793162543596534222371458668498571166837299325731596777670132830001546839544284346351393964824730839639301046179558652696082308824070477223869283054978658326855126932082754121256920575641227926598676719724725719222484148625020220494108342394030408253089899891700400203336918661663751523788622735773864833731552284954237137952497719069892440806380625733323869952845631051069940707365414990621967523332677411935527536814983008403556834213618522880787952621206983027073172116156651218377851746340174808375254284001435816118302249193303397466776845851743890519082821148416722135170698614740907867435963618925044956902958148324272894672030283819168758463855285701991252475351862754820487744045764868396684777846686070069982217881227849496760269225414231083805733290534151123406915650028121222263850640283860639197520959825152626458400452325975452613482437167476356009654121926543290145079478070360029730020980795208355698196814222112480898983202043419519375263651949181097645574205178523255626929768121920234439313474099206104455976950857197860880977258241730976397804678973733516947554105951667082135434125689463359251547871548911802646544683845207784833032667495833535290224433943754770189766271196987201022608066882057869125850499995301677418321251261832661046278653566452890787168741868239138468494682699662284065061316757322733605 +-132132245132134.1515123765412 ** -112 = 0 Number "0.1322135476547459213732911312" (scale 0) -0.1322135476547459213732911312 ^ 15 = 0 -0.1322135476547459213732911312 ^ -15 = 15165635699683 -0.1322135476547459213732911312 ^ 1 = 0 -0.1322135476547459213732911312 ^ -9 = 81005847 -0.1322135476547459213732911312 ^ 0 = 1 -0.1322135476547459213732911312 ^ -0 = 1 -0.1322135476547459213732911312 ^ 252 = 0 -0.1322135476547459213732911312 ^ -112 = 261271852670585926399109608993686784219014928770917821092988518427507780528448900476275115673665845 +0.1322135476547459213732911312 ** 15 = 0 +0.1322135476547459213732911312 ** -15 = 15165635699683 +0.1322135476547459213732911312 ** 1 = 0 +0.1322135476547459213732911312 ** -9 = 81005847 +0.1322135476547459213732911312 ** 0 = 1 +0.1322135476547459213732911312 ** -0 = 1 +0.1322135476547459213732911312 ** 252 = 0 +0.1322135476547459213732911312 ** -112 = 261271852670585926399109608993686784219014928770917821092988518427507780528448900476275115673665845 Number "-0.123912932193769965476541321" (scale 0) --0.123912932193769965476541321 ^ 15 = 0 --0.123912932193769965476541321 ^ -15 = -40109799462729 --0.123912932193769965476541321 ^ 1 = 0 --0.123912932193769965476541321 ^ -9 = -145194543 --0.123912932193769965476541321 ^ 0 = 1 --0.123912932193769965476541321 ^ -0 = 1 --0.123912932193769965476541321 ^ 252 = 0 --0.123912932193769965476541321 ^ -112 = 372337687215014577843846097845819604950292238064034167723169672020440891758727112526694844172394015451 +-0.123912932193769965476541321 ** 15 = 0 +-0.123912932193769965476541321 ** -15 = -40109799462729 +-0.123912932193769965476541321 ** 1 = 0 +-0.123912932193769965476541321 ** -9 = -145194543 +-0.123912932193769965476541321 ** 0 = 1 +-0.123912932193769965476541321 ** -0 = 1 +-0.123912932193769965476541321 ** 252 = 0 +-0.123912932193769965476541321 ** -112 = 372337687215014577843846097845819604950292238064034167723169672020440891758727112526694844172394015451 Number "15" (scale 10) - 15 ^ 15 = 437893890380859375.0000000000 - 15 ^ -15 = 0.0000000000 - 15 ^ 1 = 15.0000000000 - 15 ^ -9 = 0.0000000000 - 15 ^ 0 = 1.0000000000 - 15 ^ -0 = 1.0000000000 - 15 ^ 252 = 237135886481351297382468574917313144844970356302221777632832615638003070736580081217360793962070064247594576249396872345556164659881002366207912047265309059413892077092997608382858888266273629252398653205357976938870120670782142034597069710705445432682146079950147310455577098764479160308837890625.0000000000 - 15 ^ -112 = 0.0000000000 + 15 ** 15 = 437893890380859375.0000000000 + 15 ** -15 = 0.0000000000 + 15 ** 1 = 15.0000000000 + 15 ** -9 = 0.0000000000 + 15 ** 0 = 1.0000000000 + 15 ** -0 = 1.0000000000 + 15 ** 252 = 237135886481351297382468574917313144844970356302221777632832615638003070736580081217360793962070064247594576249396872345556164659881002366207912047265309059413892077092997608382858888266273629252398653205357976938870120670782142034597069710705445432682146079950147310455577098764479160308837890625.0000000000 + 15 ** -112 = 0.0000000000 Number "-15" (scale 10) - -15 ^ 15 = -437893890380859375.0000000000 - -15 ^ -15 = 0.0000000000 - -15 ^ 1 = -15.0000000000 - -15 ^ -9 = 0.0000000000 - -15 ^ 0 = 1.0000000000 - -15 ^ -0 = 1.0000000000 - -15 ^ 252 = 237135886481351297382468574917313144844970356302221777632832615638003070736580081217360793962070064247594576249396872345556164659881002366207912047265309059413892077092997608382858888266273629252398653205357976938870120670782142034597069710705445432682146079950147310455577098764479160308837890625.0000000000 - -15 ^ -112 = 0.0000000000 + -15 ** 15 = -437893890380859375.0000000000 + -15 ** -15 = 0.0000000000 + -15 ** 1 = -15.0000000000 + -15 ** -9 = 0.0000000000 + -15 ** 0 = 1.0000000000 + -15 ** -0 = 1.0000000000 + -15 ** 252 = 237135886481351297382468574917313144844970356302221777632832615638003070736580081217360793962070064247594576249396872345556164659881002366207912047265309059413892077092997608382858888266273629252398653205357976938870120670782142034597069710705445432682146079950147310455577098764479160308837890625.0000000000 + -15 ** -112 = 0.0000000000 Number "1" (scale 10) - 1 ^ 15 = 1.0000000000 - 1 ^ -15 = 1.0000000000 - 1 ^ 1 = 1.0000000000 - 1 ^ -9 = 1.0000000000 - 1 ^ 0 = 1.0000000000 - 1 ^ -0 = 1.0000000000 - 1 ^ 252 = 1.0000000000 - 1 ^ -112 = 1.0000000000 + 1 ** 15 = 1.0000000000 + 1 ** -15 = 1.0000000000 + 1 ** 1 = 1.0000000000 + 1 ** -9 = 1.0000000000 + 1 ** 0 = 1.0000000000 + 1 ** -0 = 1.0000000000 + 1 ** 252 = 1.0000000000 + 1 ** -112 = 1.0000000000 Number "-9" (scale 10) - -9 ^ 15 = -205891132094649.0000000000 - -9 ^ -15 = 0.0000000000 - -9 ^ 1 = -9.0000000000 - -9 ^ -9 = -0.0000000025 - -9 ^ 0 = 1.0000000000 - -9 ^ -0 = 1.0000000000 - -9 ^ 252 = 2945183635465464884233206633443008848559894187106131466268028902439028615518295534220079169301330491447962555905286712315981330452878058357582386904241524088181763471075659119460152769761830870007779820098802358876968679265201323425586410081.0000000000 - -9 ^ -112 = 0.0000000000 + -9 ** 15 = -205891132094649.0000000000 + -9 ** -15 = 0.0000000000 + -9 ** 1 = -9.0000000000 + -9 ** -9 = -0.0000000025 + -9 ** 0 = 1.0000000000 + -9 ** -0 = 1.0000000000 + -9 ** 252 = 2945183635465464884233206633443008848559894187106131466268028902439028615518295534220079169301330491447962555905286712315981330452878058357582386904241524088181763471075659119460152769761830870007779820098802358876968679265201323425586410081.0000000000 + -9 ** -112 = 0.0000000000 Number "0" (scale 10) - 0 ^ 15 = 0.0000000000 - 0 ^ -15 = 0.0000000000 - 0 ^ 1 = 0.0000000000 - 0 ^ -9 = 0.0000000000 - 0 ^ 0 = 1.0000000000 - 0 ^ -0 = 1.0000000000 - 0 ^ 252 = 0.0000000000 - 0 ^ -112 = 0.0000000000 + 0 ** 15 = 0.0000000000 + 0 ** -15 = 0.0000000000 + 0 ** 1 = 0.0000000000 + 0 ** -9 = 0.0000000000 + 0 ** 0 = 1.0000000000 + 0 ** -0 = 1.0000000000 + 0 ** 252 = 0.0000000000 + 0 ** -112 = 0.0000000000 Number "-0" (scale 10) - -0 ^ 15 = 0.0000000000 - -0 ^ -15 = 0.0000000000 - -0 ^ 1 = 0.0000000000 - -0 ^ -9 = 0.0000000000 - -0 ^ 0 = 1.0000000000 - -0 ^ -0 = 1.0000000000 - -0 ^ 252 = 0.0000000000 - -0 ^ -112 = 0.0000000000 + -0 ** 15 = 0.0000000000 + -0 ** -15 = 0.0000000000 + -0 ** 1 = 0.0000000000 + -0 ** -9 = 0.0000000000 + -0 ** 0 = 1.0000000000 + -0 ** -0 = 1.0000000000 + -0 ** 252 = 0.0000000000 + -0 ** -112 = 0.0000000000 Number "252" (scale 10) - 252 ^ 15 = 1049562032118382425513949173821472768.0000000000 - 252 ^ -15 = 0.0000000000 - 252 ^ 1 = 252.0000000000 - 252 ^ -9 = 0.0000000000 - 252 ^ 0 = 1.0000000000 - 252 ^ -0 = 1.0000000000 - 252 ^ 252 = 142212010733424647125806541813713973266552845448041013743767421605354690415544328196152173390963803494710443230142152775687771944805429044982729796870857181947776572826160793933424942988750037827638341986183789792079484880609013515717131451507203060282065264043070502125106179548342207047711204933650239424460841202157152719662980652213693426926863084348529493037513389175805577626219903234384208039735661457745854089305800218117427842428649306815115886661640301037762482527923343983853507875264930793965916131347421096416232894153340276842687468868552274843085150094307684610419227652811804917758213226496.0000000000 - 252 ^ -112 = 0.0000000000 + 252 ** 15 = 1049562032118382425513949173821472768.0000000000 + 252 ** -15 = 0.0000000000 + 252 ** 1 = 252.0000000000 + 252 ** -9 = 0.0000000000 + 252 ** 0 = 1.0000000000 + 252 ** -0 = 1.0000000000 + 252 ** 252 = 142212010733424647125806541813713973266552845448041013743767421605354690415544328196152173390963803494710443230142152775687771944805429044982729796870857181947776572826160793933424942988750037827638341986183789792079484880609013515717131451507203060282065264043070502125106179548342207047711204933650239424460841202157152719662980652213693426926863084348529493037513389175805577626219903234384208039735661457745854089305800218117427842428649306815115886661640301037762482527923343983853507875264930793965916131347421096416232894153340276842687468868552274843085150094307684610419227652811804917758213226496.0000000000 + 252 ** -112 = 0.0000000000 Number "-112" (scale 10) - -112 ^ 15 = -5473565759257037859954903482368.0000000000 - -112 ^ -15 = 0.0000000000 - -112 ^ 1 = -112.0000000000 - -112 ^ -9 = 0.0000000000 - -112 ^ 0 = 1.0000000000 - -112 ^ -0 = 1.0000000000 - -112 ^ 252 = 2528958559509291693508169626548016243760525615786379976651267082288161074806837567146354242426675448089179587223689918667106749284121965637887934532709154725528081671334320643858146400820666287506930741579829377389324701928200642059190071982670723834096616484481264403390509754202256821825886418273918096647296731861068941003342202311747852949747419032091731983573265045376333262301085406296848909763397511959941544798830761308589095475080050282796818166220650002245272286955283850226653729461037771414650027776147456.0000000000 - -112 ^ -112 = 0.0000000000 + -112 ** 15 = -5473565759257037859954903482368.0000000000 + -112 ** -15 = 0.0000000000 + -112 ** 1 = -112.0000000000 + -112 ** -9 = 0.0000000000 + -112 ** 0 = 1.0000000000 + -112 ** -0 = 1.0000000000 + -112 ** 252 = 2528958559509291693508169626548016243760525615786379976651267082288161074806837567146354242426675448089179587223689918667106749284121965637887934532709154725528081671334320643858146400820666287506930741579829377389324701928200642059190071982670723834096616484481264403390509754202256821825886418273918096647296731861068941003342202311747852949747419032091731983573265045376333262301085406296848909763397511959941544798830761308589095475080050282796818166220650002245272286955283850226653729461037771414650027776147456.0000000000 + -112 ** -112 = 0.0000000000 Number "0.00" (scale 10) - 0.00 ^ 15 = 0.0000000000 - 0.00 ^ -15 = 0.0000000000 - 0.00 ^ 1 = 0.0000000000 - 0.00 ^ -9 = 0.0000000000 - 0.00 ^ 0 = 1.0000000000 - 0.00 ^ -0 = 1.0000000000 - 0.00 ^ 252 = 0.0000000000 - 0.00 ^ -112 = 0.0000000000 + 0.00 ** 15 = 0.0000000000 + 0.00 ** -15 = 0.0000000000 + 0.00 ** 1 = 0.0000000000 + 0.00 ** -9 = 0.0000000000 + 0.00 ** 0 = 1.0000000000 + 0.00 ** -0 = 1.0000000000 + 0.00 ** 252 = 0.0000000000 + 0.00 ** -112 = 0.0000000000 Number "-0.00" (scale 10) - -0.00 ^ 15 = 0.0000000000 - -0.00 ^ -15 = 0.0000000000 - -0.00 ^ 1 = 0.0000000000 - -0.00 ^ -9 = 0.0000000000 - -0.00 ^ 0 = 1.0000000000 - -0.00 ^ -0 = 1.0000000000 - -0.00 ^ 252 = 0.0000000000 - -0.00 ^ -112 = 0.0000000000 + -0.00 ** 15 = 0.0000000000 + -0.00 ** -15 = 0.0000000000 + -0.00 ** 1 = 0.0000000000 + -0.00 ** -9 = 0.0000000000 + -0.00 ** 0 = 1.0000000000 + -0.00 ** -0 = 1.0000000000 + -0.00 ** 252 = 0.0000000000 + -0.00 ** -112 = 0.0000000000 Number "14.14" (scale 10) - 14.14 ^ 15 = 180609729388653367.2586094856 - 14.14 ^ -15 = 0.0000000000 - 14.14 ^ 1 = 14.1400000000 - 14.14 ^ -9 = 0.0000000000 - 14.14 ^ 0 = 1.0000000000 - 14.14 ^ -0 = 1.0000000000 - 14.14 ^ 252 = 81893830287657387446140079713887806093576884288543703328783802176508922753380870094003376900318176725198165627317176488631295332728458521626072637389422651709754634844150191850264235770478926203337416116264674564206565124289082609409927041547210316199545928823591027686585730497632744792533.0727815413 - 14.14 ^ -112 = 0.0000000000 + 14.14 ** 15 = 180609729388653367.2586094856 + 14.14 ** -15 = 0.0000000000 + 14.14 ** 1 = 14.1400000000 + 14.14 ** -9 = 0.0000000000 + 14.14 ** 0 = 1.0000000000 + 14.14 ** -0 = 1.0000000000 + 14.14 ** 252 = 81893830287657387446140079713887806093576884288543703328783802176508922753380870094003376900318176725198165627317176488631295332728458521626072637389422651709754634844150191850264235770478926203337416116264674564206565124289082609409927041547210316199545928823591027686585730497632744792533.0727815413 + 14.14 ** -112 = 0.0000000000 Number "-16.60" (scale 10) --16.60 ^ 15 = -2002725006700243463.1471178615 --16.60 ^ -15 = 0.0000000000 --16.60 ^ 1 = -16.6000000000 --16.60 ^ -9 = 0.0000000000 --16.60 ^ 0 = 1.0000000000 --16.60 ^ -0 = 1.0000000000 --16.60 ^ 252 = 29325011162031531635050775473043742335712717807162139294189975794596377719994688259393390430325862997866008694776131070878139493075620575422701181905723221059535177378476880731856824922247604302185770818227621273103971150596854313288134126369153196254990016237048145067458027194360617116808917107675683822643.7551838996 --16.60 ^ -112 = 0.0000000000 +-16.60 ** 15 = -2002725006700243463.1471178615 +-16.60 ** -15 = 0.0000000000 +-16.60 ** 1 = -16.6000000000 +-16.60 ** -9 = 0.0000000000 +-16.60 ** 0 = 1.0000000000 +-16.60 ** -0 = 1.0000000000 +-16.60 ** 252 = 29325011162031531635050775473043742335712717807162139294189975794596377719994688259393390430325862997866008694776131070878139493075620575422701181905723221059535177378476880731856824922247604302185770818227621273103971150596854313288134126369153196254990016237048145067458027194360617116808917107675683822643.7551838996 +-16.60 ** -112 = 0.0000000000 Number "0.15" (scale 10) - 0.15 ^ 15 = 0.0000000000 - 0.15 ^ -15 = 2283658260521.1672220051 - 0.15 ^ 1 = 0.1500000000 - 0.15 ^ -9 = 26012294.8737489203 - 0.15 ^ 0 = 1.0000000000 - 0.15 ^ -0 = 1.0000000000 - 0.15 ^ 252 = 0.0000000000 - 0.15 ^ -112 = 189574092538418764958341193234367215745086742520818271114560854632390900314942322598922704092.1046205530 + 0.15 ** 15 = 0.0000000000 + 0.15 ** -15 = 2283658260521.1672220051 + 0.15 ** 1 = 0.1500000000 + 0.15 ** -9 = 26012294.8737489203 + 0.15 ** 0 = 1.0000000000 + 0.15 ** -0 = 1.0000000000 + 0.15 ** 252 = 0.0000000000 + 0.15 ** -112 = 189574092538418764958341193234367215745086742520818271114560854632390900314942322598922704092.1046205530 Number "-0.01" (scale 10) - -0.01 ^ 15 = 0.0000000000 - -0.01 ^ -15 = -1000000000000000000000000000000.0000000000 - -0.01 ^ 1 = -0.0100000000 - -0.01 ^ -9 = -1000000000000000000.0000000000 - -0.01 ^ 0 = 1.0000000000 - -0.01 ^ -0 = 1.0000000000 - -0.01 ^ 252 = 0.0000000000 - -0.01 ^ -112 = 100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000.0000000000 + -0.01 ** 15 = 0.0000000000 + -0.01 ** -15 = -1000000000000000000000000000000.0000000000 + -0.01 ** 1 = -0.0100000000 + -0.01 ** -9 = -1000000000000000000.0000000000 + -0.01 ** 0 = 1.0000000000 + -0.01 ** -0 = 1.0000000000 + -0.01 ** 252 = 0.0000000000 + -0.01 ** -112 = 100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000.0000000000 Number "15151324141414.412312232141241" (scale 10) -15151324141414.412312232141241 ^ 15 = 509048123991351801905481953476379185972789524506389464560948346272971876778908444213802402540123245924548973078757287880001162665191012187707496396738218203170247236816923480505943223846447785782345.3558894965 -15151324141414.412312232141241 ^ -15 = 0.0000000000 -15151324141414.412312232141241 ^ 1 = 15151324141414.4123122321 -15151324141414.412312232141241 ^ -9 = 0.0000000000 -15151324141414.412312232141241 ^ 0 = 1.0000000000 -15151324141414.412312232141241 ^ -0 = 1.0000000000 -15151324141414.412312232141241 ^ 252 = 2975421749795666718292864311407249970705086081437807395789379168718267809761515926216519710525556923711393180871882349125480337759668727402072958238900666362552341750552695988372017271582392491705356316948514737089205360282499880482512926893561832567935188520485154057479922893292233844872682027689029924296957873832086320362860520134654280058518517337570653996385278714198685752823835453817905306636319703719003676343516921560023010996505106467350842109482615346014981820723775172695392986401597801626150692206539756529644889137926049906575290564959396735953680592250779460130816876807757766338263686270020029393453575181327870591265373834140347848891333472452106266668645850397235968389042220027274496640159090815418483309643657324273121448493101717217140617069517287371864653153681358830190414615833078002577453411141597016583358385430394744450538495805740402488576124870572258200605831119008100984519684993455060646872766261382240383564392178883974453450433114215183488267147681395487265404247208352661495181304031822061114406175030677886104508679211172804603630316447723815907701460914622481206853022006681302191940743481903991732602477879503644713688600025822484351386994709104484371310424352144611218737196401824457866949669228902625541115988570606278592188602331451576075786613348336629409301707863923798082511203519536680273830467529869070112013346223720130183581189201489843066803035998524636580843999168622007134798723860720169157200004627398709928941733609441557160972211113022692009799237864185615460855228045985383589616750868474559577038584404446390706055987175018852877810774653462856565006598191028334508282011970034047209214176244147503985386832987247129380772291221015035166871079932982021644848487302418889155646720341011763574205760582552545432674974794783974025401318074084939141860755094923101801284442989344181743012614781021983935394731085008059924819771193595363859258571474767439534580638568746666210621240873673676940762489862112336626521441471577301366647762037305798100798711822457474507172500970023127288841824797039587587687760406935930088932018738492033507792817250533066953710174207685876451854460620309225706829752706450285622677922594957647037672524232255747269667789144401086986842640538153043741101238245322300993710394384754508967946211337487952324876892016919924636143376046118565299301806000686710931777881411145696867371682466218379864851343043041312758162391699150775018231599537746501756924961427444527995061269251565547747098676254156910141573235165420989417824245466381006116578002121746837672733849938657667872006918460874232266046864354612969306512425002050502769904919642157609172541701550215596501139800180259552618049103708500764672848369198536220300039766241517053637402993685274740246644140211865650547971680391614831119804648079596819224703795536455681460692071824945358084847698465553826334065350185771802401947633785300181386909348829848309501929340612695571623266869616638304357843374880496058625355636022120527400443841025788264209843812042625792300865583082505414465908017500188208987693716855836263772885824776988984333362684311002647195832946927199653846403980218407171091513992332604667414925751436017212580993860794349764631915036822374405575551253454423848395310883501116565831195963321659796880685759075194666868292856205113353111159407896940446955956749209.1357309004 -15151324141414.412312232141241 ^ -112 = 0.0000000000 +15151324141414.412312232141241 ** 15 = 509048123991351801905481953476379185972789524506389464560948346272971876778908444213802402540123245924548973078757287880001162665191012187707496396738218203170247236816923480505943223846447785782345.3558894965 +15151324141414.412312232141241 ** -15 = 0.0000000000 +15151324141414.412312232141241 ** 1 = 15151324141414.4123122321 +15151324141414.412312232141241 ** -9 = 0.0000000000 +15151324141414.412312232141241 ** 0 = 1.0000000000 +15151324141414.412312232141241 ** -0 = 1.0000000000 +15151324141414.412312232141241 ** 252 = 2975421749795666718292864311407249970705086081437807395789379168718267809761515926216519710525556923711393180871882349125480337759668727402072958238900666362552341750552695988372017271582392491705356316948514737089205360282499880482512926893561832567935188520485154057479922893292233844872682027689029924296957873832086320362860520134654280058518517337570653996385278714198685752823835453817905306636319703719003676343516921560023010996505106467350842109482615346014981820723775172695392986401597801626150692206539756529644889137926049906575290564959396735953680592250779460130816876807757766338263686270020029393453575181327870591265373834140347848891333472452106266668645850397235968389042220027274496640159090815418483309643657324273121448493101717217140617069517287371864653153681358830190414615833078002577453411141597016583358385430394744450538495805740402488576124870572258200605831119008100984519684993455060646872766261382240383564392178883974453450433114215183488267147681395487265404247208352661495181304031822061114406175030677886104508679211172804603630316447723815907701460914622481206853022006681302191940743481903991732602477879503644713688600025822484351386994709104484371310424352144611218737196401824457866949669228902625541115988570606278592188602331451576075786613348336629409301707863923798082511203519536680273830467529869070112013346223720130183581189201489843066803035998524636580843999168622007134798723860720169157200004627398709928941733609441557160972211113022692009799237864185615460855228045985383589616750868474559577038584404446390706055987175018852877810774653462856565006598191028334508282011970034047209214176244147503985386832987247129380772291221015035166871079932982021644848487302418889155646720341011763574205760582552545432674974794783974025401318074084939141860755094923101801284442989344181743012614781021983935394731085008059924819771193595363859258571474767439534580638568746666210621240873673676940762489862112336626521441471577301366647762037305798100798711822457474507172500970023127288841824797039587587687760406935930088932018738492033507792817250533066953710174207685876451854460620309225706829752706450285622677922594957647037672524232255747269667789144401086986842640538153043741101238245322300993710394384754508967946211337487952324876892016919924636143376046118565299301806000686710931777881411145696867371682466218379864851343043041312758162391699150775018231599537746501756924961427444527995061269251565547747098676254156910141573235165420989417824245466381006116578002121746837672733849938657667872006918460874232266046864354612969306512425002050502769904919642157609172541701550215596501139800180259552618049103708500764672848369198536220300039766241517053637402993685274740246644140211865650547971680391614831119804648079596819224703795536455681460692071824945358084847698465553826334065350185771802401947633785300181386909348829848309501929340612695571623266869616638304357843374880496058625355636022120527400443841025788264209843812042625792300865583082505414465908017500188208987693716855836263772885824776988984333362684311002647195832946927199653846403980218407171091513992332604667414925751436017212580993860794349764631915036822374405575551253454423848395310883501116565831195963321659796880685759075194666868292856205113353111159407896940446955956749209.1357309004 +15151324141414.412312232141241 ** -112 = 0.0000000000 Number "141241241241241248267654747412" (scale 10) -141241241241241248267654747412 ^ 15 = 177591789298838947421924937418435926483207726032941337126565686201154837989992676792469043927153886362407093561688979426718344848540943458245870720268722797084708626211824507010348223033844880992203548347580375252630658556528592298319547225224912135982081686378909626742998484437641863458021277126578238452879997277005795795020835662533892290564198652316605246272512413311084386660488961246461538425989780621930750572963428718487554490368.0000000000 -141241241241241248267654747412 ^ -15 = 0.0000000000 -141241241241241248267654747412 ^ 1 = 141241241241241248267654747412.0000000000 -141241241241241248267654747412 ^ -9 = 0.0000000000 -141241241241241248267654747412 ^ 0 = 1.0000000000 -141241241241241248267654747412 ^ -0 = 1.0000000000 -141241241241241248267654747412 ^ 252 = 61702737614252266948752156824258824995959599972302320510716529982037298313739133760034183411877915226877565852198668440669791795617272708708492070599904800132098399232978789534072748261835151242629120913793827710449864804330737116696282852494151262231643262037509694372134135894276508967194766869889867303622326767458055285775054658565704105389065774707528077134226867060689181155582362175947504766959470020293226474023546968232460082444503912720021117368360386834444296061143129153351909427031876573177512880122064185569107842900553293550154759961105705458193916741180207197209621223094253214396769871913256823886396746414009606236401337641975159583111263046921277256870910247139612445619959067659323246784229705879779504519921968053141823090638689328500711053428918278999419825533334808914479125124304786443895285883492931266287931531729858829237461074566895486671242348082833878884776228517928133923449282430038745609287058924814413730985957861336607098992582653851368483642246306509531450226330989261394231526444743678146424987980458014955926233473826334115019067286145968725016152043997048698852555649504111446712360855837865476980303396801134199935075659852802884819197423764473479086847306010829721607657507579637914756242599185804487547475812412827298700399642854781876339506969947557967510353980827513717983184885292080872213577420468280210432294624241752834053309219199045973319521987975932929891565623163042217388611918307622483024452293173783579391106196420370018442330967765451700900306909737464257886906607274005552053888483483054020641145694539605337937744331035605313696665428737416632101002639001569789365490404722602805032116136122275148638414611401101532057194278420768914301864998398142593349158088898737725867540737097890425196584907775942120540985239557579236871185430362654320129291837576497911030976672546705634824923076862019595021475580215199988383732424366096745105419692283398918642003304826916218038854944067948189983518814346644870415937764601253868517196737959263980145504426078052198314663327843039356842201353163719488533902336353096176525901730253653712920740921897375508115858541406566947578335604123685577167716291169069652779908723297589735946583152466623845488142430700731769152222928283344575334939855201356733293357748709762620500872007205341239109409378799478441798933979724812650664098561233648811173269759247319678281986289749980800969619374582248288309266623507972587507556836064440726974305255199923316929818005467224051058298675312384426804897772240949920506431569837490498738453686746046335084609377713999742753257733912005654985684955512755879419270408315204048723476100838206401604215791253443838837275686487522888505399721610616356437415942085415265887671279570399360491649770978544857086906535678225672378863908117400571273280456942553369722415886814734827811782754510807365782422375263311630528352008474205547181623751728827140229718189606400373948548748620058632906237446487461463924934038124060220073591275626363882021308939573471462771350670733259367229333311304626874470724822013347119651171746131956616787517406892676075170382597409056665459502450515715507008118773500106516262784295667877075894103798253576492873141052750983781150748301119099230755964674235471935040610571173788486284126167436426267511157335062848567544617136701036212286420938449059910123857126789600929537328019086612659111870130906758076250376040429753144954758559356615713330390937898173091733151870035205661876454153260289142884914806807421852435737887997788694746400471112311576221296382603532103910277379683106908049352464276556594523117986718023572377990452537890518505167077689962380643979739773271443338742938727262511258728095020188473504370112836853749915575721872419520821790251159556333443030459056638192775423075084514851738672355958336265015380193591541922572518272773045049968850063625505732261611074622474965936400258314638193512375533757871806804692087708082031597721541387274042872955965737015089791668860525425793056778509470752578481376934088995106166553613693981904966686690212955481430046830913629928245843069361759411764297658217897316455217217021684202563946301505904193890271187899540947054172542875489231623713315378660419455411924354406330626224728228155305799300626640774404377831301051311563284401393151464407836422401342988060834178957138740247616789909739231830346449366019203847401064438442628508720077238078363655382024999197911442576806729689998326498342414751123237684542163876848231535744093508827210033685403359485309410368756619655335647815457456271662771356876949346139750604173629577681834134842499790368833444683342223857503185849902689436294823704067138925427306607192910954091698318729347145907800382668086667899534178563329442767437901814888337083677115243233418029978664046416826126543919629091736900005600339085979551469129407326751494940405612077593337217212627875249494414287211237336394051868492049328715249941706898117243520077930496903083255415280985218820687648161267600024140589397356281610905118704267436760893073994318473316685154852928135755455009702456043054322286620596648587752781151951829993681040341917550141278881598811594525627199147969934315163608714206891254146576331437603057409575204473025499304932390635935053481842967808825955521225903532223710955029023291335271704387554010604494359260592752707638749226503894251533287510138743058143563627083333323467953930288323174099691963642626244047994212921019096440748326461891434713107878328347627128553535347757109535162399519267201671099780388509076162219198648438104874056150803718036255353941654576267453857313032960105282442901730781706849116468293203141632905459414497264691251443801343872064950763335362229179456002525747120895247485013820030787875667079177283909056955331506973886798132875485898886780825156590108516771255757929317588856294114876639328139025640209294004084324019087271465180464949662380290646689899281765951368313154956095080011378907737551290670716282657109905603462006701850544998109045986412695185702298097876768249839078776688511467326239283983098509833719622936353377241972069901941714532498768716115868591570677576564417673178096539225866975241748028970361222145947727863536827216898514621847057819434576609230609611433988111992050578257972824282582096472184583048169498234433362074234852397751092471572561447915858864173251918950055149910352613561842701231235991010567523708933526326914146617809092162785366466356881319331412699810698600005749537204138000103625418561709921211393425978474528008482773381566071958815629154952129819071276958851406185526598276525973924382616619638927391896061767984462316342879485215181167142278283860974122393376129042592163052368958562549536015824310093694746026464275365131184771894447337638915074864139725976487382152380756354201968249702096723240570755670245536167613452904133125178947690742699517259032210148920215799181139024035965215646290857562866703810691715946409991609804815076179410873897787742683601227701850554553822077038999133518015046632371381193916753753001215985430108776610861216333105848176092629616183087158890392572221891278673318821093507423533826286478376277706846738214944276585022159559546442701466991751438781940501472267762449963577519763912275982471063234586863118222911568589623962096407513817772511232500343850038909537966015828523715127021508912585417674924982540682182384350779611171081429430780526138025312256.0000000000 -141241241241241248267654747412 ^ -112 = 0.0000000000 +141241241241241248267654747412 ** 15 = 177591789298838947421924937418435926483207726032941337126565686201154837989992676792469043927153886362407093561688979426718344848540943458245870720268722797084708626211824507010348223033844880992203548347580375252630658556528592298319547225224912135982081686378909626742998484437641863458021277126578238452879997277005795795020835662533892290564198652316605246272512413311084386660488961246461538425989780621930750572963428718487554490368.0000000000 +141241241241241248267654747412 ** -15 = 0.0000000000 +141241241241241248267654747412 ** 1 = 141241241241241248267654747412.0000000000 +141241241241241248267654747412 ** -9 = 0.0000000000 +141241241241241248267654747412 ** 0 = 1.0000000000 +141241241241241248267654747412 ** -0 = 1.0000000000 +141241241241241248267654747412 ** 252 = 61702737614252266948752156824258824995959599972302320510716529982037298313739133760034183411877915226877565852198668440669791795617272708708492070599904800132098399232978789534072748261835151242629120913793827710449864804330737116696282852494151262231643262037509694372134135894276508967194766869889867303622326767458055285775054658565704105389065774707528077134226867060689181155582362175947504766959470020293226474023546968232460082444503912720021117368360386834444296061143129153351909427031876573177512880122064185569107842900553293550154759961105705458193916741180207197209621223094253214396769871913256823886396746414009606236401337641975159583111263046921277256870910247139612445619959067659323246784229705879779504519921968053141823090638689328500711053428918278999419825533334808914479125124304786443895285883492931266287931531729858829237461074566895486671242348082833878884776228517928133923449282430038745609287058924814413730985957861336607098992582653851368483642246306509531450226330989261394231526444743678146424987980458014955926233473826334115019067286145968725016152043997048698852555649504111446712360855837865476980303396801134199935075659852802884819197423764473479086847306010829721607657507579637914756242599185804487547475812412827298700399642854781876339506969947557967510353980827513717983184885292080872213577420468280210432294624241752834053309219199045973319521987975932929891565623163042217388611918307622483024452293173783579391106196420370018442330967765451700900306909737464257886906607274005552053888483483054020641145694539605337937744331035605313696665428737416632101002639001569789365490404722602805032116136122275148638414611401101532057194278420768914301864998398142593349158088898737725867540737097890425196584907775942120540985239557579236871185430362654320129291837576497911030976672546705634824923076862019595021475580215199988383732424366096745105419692283398918642003304826916218038854944067948189983518814346644870415937764601253868517196737959263980145504426078052198314663327843039356842201353163719488533902336353096176525901730253653712920740921897375508115858541406566947578335604123685577167716291169069652779908723297589735946583152466623845488142430700731769152222928283344575334939855201356733293357748709762620500872007205341239109409378799478441798933979724812650664098561233648811173269759247319678281986289749980800969619374582248288309266623507972587507556836064440726974305255199923316929818005467224051058298675312384426804897772240949920506431569837490498738453686746046335084609377713999742753257733912005654985684955512755879419270408315204048723476100838206401604215791253443838837275686487522888505399721610616356437415942085415265887671279570399360491649770978544857086906535678225672378863908117400571273280456942553369722415886814734827811782754510807365782422375263311630528352008474205547181623751728827140229718189606400373948548748620058632906237446487461463924934038124060220073591275626363882021308939573471462771350670733259367229333311304626874470724822013347119651171746131956616787517406892676075170382597409056665459502450515715507008118773500106516262784295667877075894103798253576492873141052750983781150748301119099230755964674235471935040610571173788486284126167436426267511157335062848567544617136701036212286420938449059910123857126789600929537328019086612659111870130906758076250376040429753144954758559356615713330390937898173091733151870035205661876454153260289142884914806807421852435737887997788694746400471112311576221296382603532103910277379683106908049352464276556594523117986718023572377990452537890518505167077689962380643979739773271443338742938727262511258728095020188473504370112836853749915575721872419520821790251159556333443030459056638192775423075084514851738672355958336265015380193591541922572518272773045049968850063625505732261611074622474965936400258314638193512375533757871806804692087708082031597721541387274042872955965737015089791668860525425793056778509470752578481376934088995106166553613693981904966686690212955481430046830913629928245843069361759411764297658217897316455217217021684202563946301505904193890271187899540947054172542875489231623713315378660419455411924354406330626224728228155305799300626640774404377831301051311563284401393151464407836422401342988060834178957138740247616789909739231830346449366019203847401064438442628508720077238078363655382024999197911442576806729689998326498342414751123237684542163876848231535744093508827210033685403359485309410368756619655335647815457456271662771356876949346139750604173629577681834134842499790368833444683342223857503185849902689436294823704067138925427306607192910954091698318729347145907800382668086667899534178563329442767437901814888337083677115243233418029978664046416826126543919629091736900005600339085979551469129407326751494940405612077593337217212627875249494414287211237336394051868492049328715249941706898117243520077930496903083255415280985218820687648161267600024140589397356281610905118704267436760893073994318473316685154852928135755455009702456043054322286620596648587752781151951829993681040341917550141278881598811594525627199147969934315163608714206891254146576331437603057409575204473025499304932390635935053481842967808825955521225903532223710955029023291335271704387554010604494359260592752707638749226503894251533287510138743058143563627083333323467953930288323174099691963642626244047994212921019096440748326461891434713107878328347627128553535347757109535162399519267201671099780388509076162219198648438104874056150803718036255353941654576267453857313032960105282442901730781706849116468293203141632905459414497264691251443801343872064950763335362229179456002525747120895247485013820030787875667079177283909056955331506973886798132875485898886780825156590108516771255757929317588856294114876639328139025640209294004084324019087271465180464949662380290646689899281765951368313154956095080011378907737551290670716282657109905603462006701850544998109045986412695185702298097876768249839078776688511467326239283983098509833719622936353377241972069901941714532498768716115868591570677576564417673178096539225866975241748028970361222145947727863536827216898514621847057819434576609230609611433988111992050578257972824282582096472184583048169498234433362074234852397751092471572561447915858864173251918950055149910352613561842701231235991010567523708933526326914146617809092162785366466356881319331412699810698600005749537204138000103625418561709921211393425978474528008482773381566071958815629154952129819071276958851406185526598276525973924382616619638927391896061767984462316342879485215181167142278283860974122393376129042592163052368958562549536015824310093694746026464275365131184771894447337638915074864139725976487382152380756354201968249702096723240570755670245536167613452904133125178947690742699517259032210148920215799181139024035965215646290857562866703810691715946409991609804815076179410873897787742683601227701850554553822077038999133518015046632371381193916753753001215985430108776610861216333105848176092629616183087158890392572221891278673318821093507423533826286478376277706846738214944276585022159559546442701466991751438781940501472267762449963577519763912275982471063234586863118222911568589623962096407513817772511232500343850038909537966015828523715127021508912585417674924982540682182384350779611171081429430780526138025312256.0000000000 +141241241241241248267654747412 ** -112 = 0.0000000000 Number "-149143276547656984948124912" (scale 10) --149143276547656984948124912 ^ 15 = -401841881822660241398409660309345646463535278187389488718526585893873800090729191609465595568674086078015487989884600849819723618141030735892646637579078630759905628572464757376301450900008605507116286859140901254928168279833198528761329808672095261265618307499605901098109261736293336298350347017449323858811047847238969925531775390894165290898723086447624518554747816961256145036283496890368.0000000000 --149143276547656984948124912 ^ -15 = 0.0000000000 --149143276547656984948124912 ^ 1 = -149143276547656984948124912.0000000000 --149143276547656984948124912 ^ -9 = 0.0000000000 --149143276547656984948124912 ^ 0 = 1.0000000000 --149143276547656984948124912 ^ -0 = 1.0000000000 --149143276547656984948124912 ^ 252 = 55992175588333605542254063511278186461754574279839591709604310477562564689608443402403312222078711893971235561416950804719506082702379684733623971919408777114548100892216614108951324353246556535017960316014312222959702094808816331434094822650280427440063882576116695336500221646817757077369708529723823620336810350659576930581023887896886330503478109619863448515840946841190553234682382107049366084010115954164628751537372573754962628376851714140066914283347218349289869214926741444216767437164014398845666639858144658260377876458100579298055950974326675298651898083944350131609483093051504290661822668587661388602474880915186436725755772988399461893678236514411268113165984474267116617738961793643422894941375678592236663229748980138556108251262049269924802865828570213870281755635578142765872996532114681632125265545602095618091845037482357075517681870091778157619627960547482657474217943178159685376848804852485477702194998676631497601923456769896045663194900447061246337026655179495322126687564510781039271062988745945476519142221837023581656486042843501094480484668735886050383956287988798135101996785626705798462084512791858856000486173266205660052015961534265640905209313211125294627662693933297211009401491531951462889268507817897027972228709128736864008707571464724272762871838758126048184870005667275664845553774616604225572310912906152876060860153081105424979281592600839984125772468965874379832364640972866833334251698542584896314049237205644695553901317638647614318787708386467733615459065054365995897250270550067664267902152593317177099901109073008588486059511534052232495744462484660835773139005865467174339411663680328459135341612957853618227176487790111649236830978394018719354265785673205669861260376582410982507319458447629229410566850388275381698880420276787659514779189425772384786376987076804655929761620083736939837925917040082332479217674557289518688000706235667753826358380348450542285250406537012741099810396394118895119698580737840025778922487867828224721621696636134003638036732306141123387999132026332818408631403997196873195235009010958949928160436198665838441080496516462280678580659979676597569859757823014996017746962217866836145864024569035599176373962484096890443265839324221819146344682358316417403925617439797384999832590030653638024893217809739723987689363496190587792737138664106310356621671611551929705606372447129233289185995118668079125240237102990263869918086723137110005986280396651777574801894806896216800028637569274623115952691705831786855142876372495042729622496416156065929528185678346792948178219730451297126977072400452744745442561264775799188074289500187819445634298783592673376925950468898124384645088176602526214362158710249480242291627057463890117803354864730141461123747252541155347156400786777580958799766203254109472380735138017589461079608897268030232306639370404014163374433657561727131953203599087127600881156801848610207055453714038310061358219048264213893904654160135134848687217172657051056772433684382081263303256605397966956854911368891641655435481304103776752873688058287104569168817065852794438626208265013522214226436602866008965183348172506623891029487173951745639310845051694186685631363145511797791938639666555812388418639006943045236047084104158886785565539716175502784568418794921820159931670582549209945162053950333817714412469166667825536844480057325499652926508866184039633216003293080890783177150560019167662732664450429084752291624787970859408952386737598480289325786960288529818745254001900176106836194717861463240979411026596588950731407070101543407905496821261729510687348937796821412471929466014397692973783859204087752392409288320366943382998932124935828714903875879810782071015247527108459417616171666066601727254393827585882211498062627962114450203721750315845815155021697506333572413625746275557635360793506459802530913864986879539619322648374208957842152789346087113544250046274926635250206832991054325050621508788782189089586427470337274776955856080752508329602238857381659447673739378703749938045217491297442880220072951767019308302182120866450686427636523729778183001298464279351451928526859912935358200922256687852217293342222770676364112675875706669220947500716778555631580892140965700894865432467415441058797916958701058613262784771287521375767679654675090202761215911050514394041232506701642838754586624728822744306994328186360720405674825737265107963504397795466141078520379635918101893732280384966090817776697492519589958581600274196260931284807107964025197355095278741484748256594018281189059520971488155232871826436474292672923671151932746647309516440171397028945399089869838594185867352632608780487775648305026266036688377754295386304268591067685420141876930761382919961712554949830460502589375485003677323126912620975565484588745962938195716999584478642921595627905781087037922126946614604204487324577624535390564298909897280520685096190766392954666547140142042912418332011086985860840135170509805299821832401396881784927340948572834668444512971438394035995512132253672305434131965163273499166432580879149169510915828895700480265882084820049681597304529404116243028731782666223146293276746325246389991906529999778889818267030526761479627741075225237850144113075710406764114186915812713229218993793341952820039777430468508433933966568805816476723519852998663547981299673789287916637548338855826997859936126186385134251146763787920958572343543991163814387927189271315975774832941216796979710625756748626599205479744652593376548351502299670239068557344870045319781398252470403969497344298988472389766532157945149006071078612248352124554889096445319251898085100982701259010029952682041054540095054811702903956018540222632923457127530247486958765495736895235378687056667532898872772226646337210525647648255272837299826798955752834895854767176324936924389475920748073831818096942140696117576092974900312853119224158903042363552736819426608351322112183508012056364946319635528219546604362373666786411115604890681450553292576529326479658711947191604698823116618052429048783309728106697011619648892228467141759801681403110446555051361286503728164299660143689758025052636205563319986489358179027312653555993846959468256374852368137107311301180752627493394581971715347510238354749743466448707369816187860965509171840845607662996123030730513040791692384884335938330381280366200730869537716461479253093292207520004802508144089109220447459994338712030132586927643258314767215456297941961060686384969263988976767300178026850202211882886115891867194452898699949334970606719473728841882215132953439233323551171404920756819606555668846000416712701888993858314625083201880134723672826428864990888175557418214752256.0000000000 --149143276547656984948124912 ^ -112 = 0.0000000000 +-149143276547656984948124912 ** 15 = -401841881822660241398409660309345646463535278187389488718526585893873800090729191609465595568674086078015487989884600849819723618141030735892646637579078630759905628572464757376301450900008605507116286859140901254928168279833198528761329808672095261265618307499605901098109261736293336298350347017449323858811047847238969925531775390894165290898723086447624518554747816961256145036283496890368.0000000000 +-149143276547656984948124912 ** -15 = 0.0000000000 +-149143276547656984948124912 ** 1 = -149143276547656984948124912.0000000000 +-149143276547656984948124912 ** -9 = 0.0000000000 +-149143276547656984948124912 ** 0 = 1.0000000000 +-149143276547656984948124912 ** -0 = 1.0000000000 +-149143276547656984948124912 ** 252 = 55992175588333605542254063511278186461754574279839591709604310477562564689608443402403312222078711893971235561416950804719506082702379684733623971919408777114548100892216614108951324353246556535017960316014312222959702094808816331434094822650280427440063882576116695336500221646817757077369708529723823620336810350659576930581023887896886330503478109619863448515840946841190553234682382107049366084010115954164628751537372573754962628376851714140066914283347218349289869214926741444216767437164014398845666639858144658260377876458100579298055950974326675298651898083944350131609483093051504290661822668587661388602474880915186436725755772988399461893678236514411268113165984474267116617738961793643422894941375678592236663229748980138556108251262049269924802865828570213870281755635578142765872996532114681632125265545602095618091845037482357075517681870091778157619627960547482657474217943178159685376848804852485477702194998676631497601923456769896045663194900447061246337026655179495322126687564510781039271062988745945476519142221837023581656486042843501094480484668735886050383956287988798135101996785626705798462084512791858856000486173266205660052015961534265640905209313211125294627662693933297211009401491531951462889268507817897027972228709128736864008707571464724272762871838758126048184870005667275664845553774616604225572310912906152876060860153081105424979281592600839984125772468965874379832364640972866833334251698542584896314049237205644695553901317638647614318787708386467733615459065054365995897250270550067664267902152593317177099901109073008588486059511534052232495744462484660835773139005865467174339411663680328459135341612957853618227176487790111649236830978394018719354265785673205669861260376582410982507319458447629229410566850388275381698880420276787659514779189425772384786376987076804655929761620083736939837925917040082332479217674557289518688000706235667753826358380348450542285250406537012741099810396394118895119698580737840025778922487867828224721621696636134003638036732306141123387999132026332818408631403997196873195235009010958949928160436198665838441080496516462280678580659979676597569859757823014996017746962217866836145864024569035599176373962484096890443265839324221819146344682358316417403925617439797384999832590030653638024893217809739723987689363496190587792737138664106310356621671611551929705606372447129233289185995118668079125240237102990263869918086723137110005986280396651777574801894806896216800028637569274623115952691705831786855142876372495042729622496416156065929528185678346792948178219730451297126977072400452744745442561264775799188074289500187819445634298783592673376925950468898124384645088176602526214362158710249480242291627057463890117803354864730141461123747252541155347156400786777580958799766203254109472380735138017589461079608897268030232306639370404014163374433657561727131953203599087127600881156801848610207055453714038310061358219048264213893904654160135134848687217172657051056772433684382081263303256605397966956854911368891641655435481304103776752873688058287104569168817065852794438626208265013522214226436602866008965183348172506623891029487173951745639310845051694186685631363145511797791938639666555812388418639006943045236047084104158886785565539716175502784568418794921820159931670582549209945162053950333817714412469166667825536844480057325499652926508866184039633216003293080890783177150560019167662732664450429084752291624787970859408952386737598480289325786960288529818745254001900176106836194717861463240979411026596588950731407070101543407905496821261729510687348937796821412471929466014397692973783859204087752392409288320366943382998932124935828714903875879810782071015247527108459417616171666066601727254393827585882211498062627962114450203721750315845815155021697506333572413625746275557635360793506459802530913864986879539619322648374208957842152789346087113544250046274926635250206832991054325050621508788782189089586427470337274776955856080752508329602238857381659447673739378703749938045217491297442880220072951767019308302182120866450686427636523729778183001298464279351451928526859912935358200922256687852217293342222770676364112675875706669220947500716778555631580892140965700894865432467415441058797916958701058613262784771287521375767679654675090202761215911050514394041232506701642838754586624728822744306994328186360720405674825737265107963504397795466141078520379635918101893732280384966090817776697492519589958581600274196260931284807107964025197355095278741484748256594018281189059520971488155232871826436474292672923671151932746647309516440171397028945399089869838594185867352632608780487775648305026266036688377754295386304268591067685420141876930761382919961712554949830460502589375485003677323126912620975565484588745962938195716999584478642921595627905781087037922126946614604204487324577624535390564298909897280520685096190766392954666547140142042912418332011086985860840135170509805299821832401396881784927340948572834668444512971438394035995512132253672305434131965163273499166432580879149169510915828895700480265882084820049681597304529404116243028731782666223146293276746325246389991906529999778889818267030526761479627741075225237850144113075710406764114186915812713229218993793341952820039777430468508433933966568805816476723519852998663547981299673789287916637548338855826997859936126186385134251146763787920958572343543991163814387927189271315975774832941216796979710625756748626599205479744652593376548351502299670239068557344870045319781398252470403969497344298988472389766532157945149006071078612248352124554889096445319251898085100982701259010029952682041054540095054811702903956018540222632923457127530247486958765495736895235378687056667532898872772226646337210525647648255272837299826798955752834895854767176324936924389475920748073831818096942140696117576092974900312853119224158903042363552736819426608351322112183508012056364946319635528219546604362373666786411115604890681450553292576529326479658711947191604698823116618052429048783309728106697011619648892228467141759801681403110446555051361286503728164299660143689758025052636205563319986489358179027312653555993846959468256374852368137107311301180752627493394581971715347510238354749743466448707369816187860965509171840845607662996123030730513040791692384884335938330381280366200730869537716461479253093292207520004802508144089109220447459994338712030132586927643258314767215456297941961060686384969263988976767300178026850202211882886115891867194452898699949334970606719473728841882215132953439233323551171404920756819606555668846000416712701888993858314625083201880134723672826428864990888175557418214752256.0000000000 +-149143276547656984948124912 ** -112 = 0.0000000000 Number "-132132245132134.1515123765412" (scale 10) --132132245132134.1515123765412 ^ 15 = -65332942084431118671715132691017936828728297532817376297090067844431557352758338594306899592493441083845683845573112529065975725871957965764869599362286162979915656223771056616561461958797695558519631556073805440.8743426066 --132132245132134.1515123765412 ^ -15 = 0.0000000000 --132132245132134.1515123765412 ^ 1 = -132132245132134.1515123765 --132132245132134.1515123765412 ^ -9 = 0.0000000000 --132132245132134.1515123765412 ^ 0 = 1.0000000000 --132132245132134.1515123765412 ^ -0 = 1.0000000000 --132132245132134.1515123765412 ^ 252 = 3120478727852745944038201629388077518619819959072778583628662888334880902703519914956089883839049682560676318469032398877418258855834502244373291879606411026505240673439178203360337045239911911401143426214698971271446651876647780290878775496277056268500023561875074401483645577685406485543728816046104697722586058947707076996271324455741296959565524792629154208973708365548001942744414873486576135834495119053638656800810039027025111460331113258212007994067919145384836907081609212431099297641564986044622031456724633662129385296885404614299495960919762385823257644295402159220952463360942737103080118148157378054224237643480822424971993488886224977914497478451840908909543741696948530676782472589176085509233818251158281114742053469197512119057322174380982258491102193374311292374479260658074669161655748423441627187461082149885494689147360706871450098031935056173199096293719222350434764175998710688281702890509097348360359424470253307347729933523000107901985428772530720331531602039527737982138204747133438804098370520558033130528360187686745723186175166911233242211471504301640494824606523094514433764325212802493051981781145617974800929022725476602466144772127930440805434165616744472255347819425748816302231931654549386733679017858450849437143025476899823162000718594064313231515875922351213500222461590573572602190403067267602652736825180691112504152614488461179376450513626420818955027469144025952675277586101528625525962975039500773275778271940118869825449096270757603664530201369396099033029284457100867407697277568670150540402862276543512075434177386868941061854045298572535075420109196042754099960063991947561825511501510308275562634049421237378673160125072162000008236844954128527856723821733254208508907735993281091035579467181540332944219703979021157597903396359158593344664084014589368086779575978259251720029980655644790465254951448194710584230098489732637703819106720935376496517841788507273903175469897103859611331100545364249483088831520541660951382659294376726172983396374439867149870807521191671805902233698315119009713542754446376327365814873898054136563782777104472609469109963308092044568027239290595186247761999234668032081218755268222207063445264559530223287160963458677689875951320832784965806613254975793162543596534222371458668498571166837299325731596777670132830001546839544284346351393964824730839639301046179558652696082308824070477223869283054978658326855126932082754121256920575641227926598676719724725719222484148625020220494108342394030408253089899891700400203336918661663751523788622735773864833731552284954237137952497719069892440806380625733323869952845631051069940707365414990621967523332677411935527536814983008403556834213618522880787952621206983027073172116156651218377851746340174808375254284001435816118302249193303397466776845851743890519082821148416722135170698614740907867435963618925044956902958148324272894672030283819168758463855285701991252475351862754820487744045764868396684777846686070069982217881227849496760269225414231083805733290534151123406915650028121222263850640283860639197520959825152626458400452325975452613482437167476356009654121926543290145079478070360029730020980795208355698196814222112480898983202043419519375263651949181097645574205178523255626929768121920234439313474099206104455976950857197860880977258241730976397804678973733516947554105951667082135434125689463359251547871548911802646544683845207784833032667495833535290224433943754770189766271196987201022608066882057869125850499995301677418321251261832661046278653566452890787168741868239138468494682699662284065061316757322733605.4563495790 --132132245132134.1515123765412 ^ -112 = 0.0000000000 +-132132245132134.1515123765412 ** 15 = -65332942084431118671715132691017936828728297532817376297090067844431557352758338594306899592493441083845683845573112529065975725871957965764869599362286162979915656223771056616561461958797695558519631556073805440.8743426066 +-132132245132134.1515123765412 ** -15 = 0.0000000000 +-132132245132134.1515123765412 ** 1 = -132132245132134.1515123765 +-132132245132134.1515123765412 ** -9 = 0.0000000000 +-132132245132134.1515123765412 ** 0 = 1.0000000000 +-132132245132134.1515123765412 ** -0 = 1.0000000000 +-132132245132134.1515123765412 ** 252 = 3120478727852745944038201629388077518619819959072778583628662888334880902703519914956089883839049682560676318469032398877418258855834502244373291879606411026505240673439178203360337045239911911401143426214698971271446651876647780290878775496277056268500023561875074401483645577685406485543728816046104697722586058947707076996271324455741296959565524792629154208973708365548001942744414873486576135834495119053638656800810039027025111460331113258212007994067919145384836907081609212431099297641564986044622031456724633662129385296885404614299495960919762385823257644295402159220952463360942737103080118148157378054224237643480822424971993488886224977914497478451840908909543741696948530676782472589176085509233818251158281114742053469197512119057322174380982258491102193374311292374479260658074669161655748423441627187461082149885494689147360706871450098031935056173199096293719222350434764175998710688281702890509097348360359424470253307347729933523000107901985428772530720331531602039527737982138204747133438804098370520558033130528360187686745723186175166911233242211471504301640494824606523094514433764325212802493051981781145617974800929022725476602466144772127930440805434165616744472255347819425748816302231931654549386733679017858450849437143025476899823162000718594064313231515875922351213500222461590573572602190403067267602652736825180691112504152614488461179376450513626420818955027469144025952675277586101528625525962975039500773275778271940118869825449096270757603664530201369396099033029284457100867407697277568670150540402862276543512075434177386868941061854045298572535075420109196042754099960063991947561825511501510308275562634049421237378673160125072162000008236844954128527856723821733254208508907735993281091035579467181540332944219703979021157597903396359158593344664084014589368086779575978259251720029980655644790465254951448194710584230098489732637703819106720935376496517841788507273903175469897103859611331100545364249483088831520541660951382659294376726172983396374439867149870807521191671805902233698315119009713542754446376327365814873898054136563782777104472609469109963308092044568027239290595186247761999234668032081218755268222207063445264559530223287160963458677689875951320832784965806613254975793162543596534222371458668498571166837299325731596777670132830001546839544284346351393964824730839639301046179558652696082308824070477223869283054978658326855126932082754121256920575641227926598676719724725719222484148625020220494108342394030408253089899891700400203336918661663751523788622735773864833731552284954237137952497719069892440806380625733323869952845631051069940707365414990621967523332677411935527536814983008403556834213618522880787952621206983027073172116156651218377851746340174808375254284001435816118302249193303397466776845851743890519082821148416722135170698614740907867435963618925044956902958148324272894672030283819168758463855285701991252475351862754820487744045764868396684777846686070069982217881227849496760269225414231083805733290534151123406915650028121222263850640283860639197520959825152626458400452325975452613482437167476356009654121926543290145079478070360029730020980795208355698196814222112480898983202043419519375263651949181097645574205178523255626929768121920234439313474099206104455976950857197860880977258241730976397804678973733516947554105951667082135434125689463359251547871548911802646544683845207784833032667495833535290224433943754770189766271196987201022608066882057869125850499995301677418321251261832661046278653566452890787168741868239138468494682699662284065061316757322733605.4563495790 +-132132245132134.1515123765412 ** -112 = 0.0000000000 Number "0.1322135476547459213732911312" (scale 10) -0.1322135476547459213732911312 ^ 15 = 0.0000000000 -0.1322135476547459213732911312 ^ -15 = 15165635699683.8093525277 -0.1322135476547459213732911312 ^ 1 = 0.1322135476 -0.1322135476547459213732911312 ^ -9 = 81005847.7955131768 -0.1322135476547459213732911312 ^ 0 = 1.0000000000 -0.1322135476547459213732911312 ^ -0 = 1.0000000000 -0.1322135476547459213732911312 ^ 252 = 0.0000000000 -0.1322135476547459213732911312 ^ -112 = 261271852670585926399109608993686784219014928770917821092988518427507780528448900476275115673665845.0719674616 +0.1322135476547459213732911312 ** 15 = 0.0000000000 +0.1322135476547459213732911312 ** -15 = 15165635699683.8093525277 +0.1322135476547459213732911312 ** 1 = 0.1322135476 +0.1322135476547459213732911312 ** -9 = 81005847.7955131768 +0.1322135476547459213732911312 ** 0 = 1.0000000000 +0.1322135476547459213732911312 ** -0 = 1.0000000000 +0.1322135476547459213732911312 ** 252 = 0.0000000000 +0.1322135476547459213732911312 ** -112 = 261271852670585926399109608993686784219014928770917821092988518427507780528448900476275115673665845.0719674616 Number "-0.123912932193769965476541321" (scale 10) --0.123912932193769965476541321 ^ 15 = 0.0000000000 --0.123912932193769965476541321 ^ -15 = -40109799462729.8625078080 --0.123912932193769965476541321 ^ 1 = -0.1239129321 --0.123912932193769965476541321 ^ -9 = -145194543.0878622400 --0.123912932193769965476541321 ^ 0 = 1.0000000000 --0.123912932193769965476541321 ^ -0 = 1.0000000000 --0.123912932193769965476541321 ^ 252 = 0.0000000000 --0.123912932193769965476541321 ^ -112 = 372337687215014577843846097845819604950292238064034167723169672020440891758727112526694844172394015451.7302535898 +-0.123912932193769965476541321 ** 15 = 0.0000000000 +-0.123912932193769965476541321 ** -15 = -40109799462729.8625078080 +-0.123912932193769965476541321 ** 1 = -0.1239129321 +-0.123912932193769965476541321 ** -9 = -145194543.0878622400 +-0.123912932193769965476541321 ** 0 = 1.0000000000 +-0.123912932193769965476541321 ** -0 = 1.0000000000 +-0.123912932193769965476541321 ** 252 = 0.0000000000 +-0.123912932193769965476541321 ** -112 = 372337687215014577843846097845819604950292238064034167723169672020440891758727112526694844172394015451.7302535898 diff --git a/ext/bcmath/tests/bcpow_large_numbers.phpt b/ext/bcmath/tests/bcpow_large_numbers.phpt new file mode 100644 index 0000000000000..3b1e21656fec6 --- /dev/null +++ b/ext/bcmath/tests/bcpow_large_numbers.phpt @@ -0,0 +1,154 @@ +--TEST-- +bcpow() function with large numbers +--EXTENSIONS-- +bcmath +--INI-- +bcmath.scale=0 +--FILE-- + +--EXPECT-- +Number "252" (scale 0) + 252 ** 252 = 142212010733424647125806541813713973266552845448041013743767421605354690415544328196152173390963803494710443230142152775687771944805429044982729796870857181947776572826160793933424942988750037827638341986183789792079484880609013515717131451507203060282065264043070502125106179548342207047711204933650239424460841202157152719662980652213693426926863084348529493037513389175805577626219903234384208039735661457745854089305800218117427842428649306815115886661640301037762482527923343983853507875264930793965916131347421096416232894153340276842687468868552274843085150094307684610419227652811804917758213226496 + 252 ** -112 = 0 + +Number "-112" (scale 0) + -112 ** 252 = 2528958559509291693508169626548016243760525615786379976651267082288161074806837567146354242426675448089179587223689918667106749284121965637887934532709154725528081671334320643858146400820666287506930741579829377389324701928200642059190071982670723834096616484481264403390509754202256821825886418273918096647296731861068941003342202311747852949747419032091731983573265045376333262301085406296848909763397511959941544798830761308589095475080050282796818166220650002245272286955283850226653729461037771414650027776147456 + -112 ** -112 = 0 + +Number "0.00" (scale 0) + 0.00 ** 252 = 0 + 0.00 ** -112 = 0 + +Number "-0.00" (scale 0) + -0.00 ** 252 = 0 + -0.00 ** -112 = 0 + +Number "14.14" (scale 0) + 14.14 ** 252 = 81893830287657387446140079713887806093576884288543703328783802176508922753380870094003376900318176725198165627317176488631295332728458521626072637389422651709754634844150191850264235770478926203337416116264674564206565124289082609409927041547210316199545928823591027686585730497632744792533 + 14.14 ** -112 = 0 + +Number "-16.60" (scale 0) +-16.60 ** 252 = 29325011162031531635050775473043742335712717807162139294189975794596377719994688259393390430325862997866008694776131070878139493075620575422701181905723221059535177378476880731856824922247604302185770818227621273103971150596854313288134126369153196254990016237048145067458027194360617116808917107675683822643 +-16.60 ** -112 = 0 + +Number "0.15" (scale 0) + 0.15 ** 252 = 0 + 0.15 ** -112 = 189574092538418764958341193234367215745086742520818271114560854632390900314942322598922704092 + +Number "-0.01" (scale 0) + -0.01 ** 252 = 0 + -0.01 ** -112 = 100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 + +Number "15151324141414.412312232141241" (scale 0) +15151324141414.412312232141241 ** 252 = 2975421749795666718292864311407249970705086081437807395789379168718267809761515926216519710525556923711393180871882349125480337759668727402072958238900666362552341750552695988372017271582392491705356316948514737089205360282499880482512926893561832567935188520485154057479922893292233844872682027689029924296957873832086320362860520134654280058518517337570653996385278714198685752823835453817905306636319703719003676343516921560023010996505106467350842109482615346014981820723775172695392986401597801626150692206539756529644889137926049906575290564959396735953680592250779460130816876807757766338263686270020029393453575181327870591265373834140347848891333472452106266668645850397235968389042220027274496640159090815418483309643657324273121448493101717217140617069517287371864653153681358830190414615833078002577453411141597016583358385430394744450538495805740402488576124870572258200605831119008100984519684993455060646872766261382240383564392178883974453450433114215183488267147681395487265404247208352661495181304031822061114406175030677886104508679211172804603630316447723815907701460914622481206853022006681302191940743481903991732602477879503644713688600025822484351386994709104484371310424352144611218737196401824457866949669228902625541115988570606278592188602331451576075786613348336629409301707863923798082511203519536680273830467529869070112013346223720130183581189201489843066803035998524636580843999168622007134798723860720169157200004627398709928941733609441557160972211113022692009799237864185615460855228045985383589616750868474559577038584404446390706055987175018852877810774653462856565006598191028334508282011970034047209214176244147503985386832987247129380772291221015035166871079932982021644848487302418889155646720341011763574205760582552545432674974794783974025401318074084939141860755094923101801284442989344181743012614781021983935394731085008059924819771193595363859258571474767439534580638568746666210621240873673676940762489862112336626521441471577301366647762037305798100798711822457474507172500970023127288841824797039587587687760406935930088932018738492033507792817250533066953710174207685876451854460620309225706829752706450285622677922594957647037672524232255747269667789144401086986842640538153043741101238245322300993710394384754508967946211337487952324876892016919924636143376046118565299301806000686710931777881411145696867371682466218379864851343043041312758162391699150775018231599537746501756924961427444527995061269251565547747098676254156910141573235165420989417824245466381006116578002121746837672733849938657667872006918460874232266046864354612969306512425002050502769904919642157609172541701550215596501139800180259552618049103708500764672848369198536220300039766241517053637402993685274740246644140211865650547971680391614831119804648079596819224703795536455681460692071824945358084847698465553826334065350185771802401947633785300181386909348829848309501929340612695571623266869616638304357843374880496058625355636022120527400443841025788264209843812042625792300865583082505414465908017500188208987693716855836263772885824776988984333362684311002647195832946927199653846403980218407171091513992332604667414925751436017212580993860794349764631915036822374405575551253454423848395310883501116565831195963321659796880685759075194666868292856205113353111159407896940446955956749209 +15151324141414.412312232141241 ** -112 = 0 + +Number "141241241241241248267654747412" (scale 0) +141241241241241248267654747412 ** 252 = 61702737614252266948752156824258824995959599972302320510716529982037298313739133760034183411877915226877565852198668440669791795617272708708492070599904800132098399232978789534072748261835151242629120913793827710449864804330737116696282852494151262231643262037509694372134135894276508967194766869889867303622326767458055285775054658565704105389065774707528077134226867060689181155582362175947504766959470020293226474023546968232460082444503912720021117368360386834444296061143129153351909427031876573177512880122064185569107842900553293550154759961105705458193916741180207197209621223094253214396769871913256823886396746414009606236401337641975159583111263046921277256870910247139612445619959067659323246784229705879779504519921968053141823090638689328500711053428918278999419825533334808914479125124304786443895285883492931266287931531729858829237461074566895486671242348082833878884776228517928133923449282430038745609287058924814413730985957861336607098992582653851368483642246306509531450226330989261394231526444743678146424987980458014955926233473826334115019067286145968725016152043997048698852555649504111446712360855837865476980303396801134199935075659852802884819197423764473479086847306010829721607657507579637914756242599185804487547475812412827298700399642854781876339506969947557967510353980827513717983184885292080872213577420468280210432294624241752834053309219199045973319521987975932929891565623163042217388611918307622483024452293173783579391106196420370018442330967765451700900306909737464257886906607274005552053888483483054020641145694539605337937744331035605313696665428737416632101002639001569789365490404722602805032116136122275148638414611401101532057194278420768914301864998398142593349158088898737725867540737097890425196584907775942120540985239557579236871185430362654320129291837576497911030976672546705634824923076862019595021475580215199988383732424366096745105419692283398918642003304826916218038854944067948189983518814346644870415937764601253868517196737959263980145504426078052198314663327843039356842201353163719488533902336353096176525901730253653712920740921897375508115858541406566947578335604123685577167716291169069652779908723297589735946583152466623845488142430700731769152222928283344575334939855201356733293357748709762620500872007205341239109409378799478441798933979724812650664098561233648811173269759247319678281986289749980800969619374582248288309266623507972587507556836064440726974305255199923316929818005467224051058298675312384426804897772240949920506431569837490498738453686746046335084609377713999742753257733912005654985684955512755879419270408315204048723476100838206401604215791253443838837275686487522888505399721610616356437415942085415265887671279570399360491649770978544857086906535678225672378863908117400571273280456942553369722415886814734827811782754510807365782422375263311630528352008474205547181623751728827140229718189606400373948548748620058632906237446487461463924934038124060220073591275626363882021308939573471462771350670733259367229333311304626874470724822013347119651171746131956616787517406892676075170382597409056665459502450515715507008118773500106516262784295667877075894103798253576492873141052750983781150748301119099230755964674235471935040610571173788486284126167436426267511157335062848567544617136701036212286420938449059910123857126789600929537328019086612659111870130906758076250376040429753144954758559356615713330390937898173091733151870035205661876454153260289142884914806807421852435737887997788694746400471112311576221296382603532103910277379683106908049352464276556594523117986718023572377990452537890518505167077689962380643979739773271443338742938727262511258728095020188473504370112836853749915575721872419520821790251159556333443030459056638192775423075084514851738672355958336265015380193591541922572518272773045049968850063625505732261611074622474965936400258314638193512375533757871806804692087708082031597721541387274042872955965737015089791668860525425793056778509470752578481376934088995106166553613693981904966686690212955481430046830913629928245843069361759411764297658217897316455217217021684202563946301505904193890271187899540947054172542875489231623713315378660419455411924354406330626224728228155305799300626640774404377831301051311563284401393151464407836422401342988060834178957138740247616789909739231830346449366019203847401064438442628508720077238078363655382024999197911442576806729689998326498342414751123237684542163876848231535744093508827210033685403359485309410368756619655335647815457456271662771356876949346139750604173629577681834134842499790368833444683342223857503185849902689436294823704067138925427306607192910954091698318729347145907800382668086667899534178563329442767437901814888337083677115243233418029978664046416826126543919629091736900005600339085979551469129407326751494940405612077593337217212627875249494414287211237336394051868492049328715249941706898117243520077930496903083255415280985218820687648161267600024140589397356281610905118704267436760893073994318473316685154852928135755455009702456043054322286620596648587752781151951829993681040341917550141278881598811594525627199147969934315163608714206891254146576331437603057409575204473025499304932390635935053481842967808825955521225903532223710955029023291335271704387554010604494359260592752707638749226503894251533287510138743058143563627083333323467953930288323174099691963642626244047994212921019096440748326461891434713107878328347627128553535347757109535162399519267201671099780388509076162219198648438104874056150803718036255353941654576267453857313032960105282442901730781706849116468293203141632905459414497264691251443801343872064950763335362229179456002525747120895247485013820030787875667079177283909056955331506973886798132875485898886780825156590108516771255757929317588856294114876639328139025640209294004084324019087271465180464949662380290646689899281765951368313154956095080011378907737551290670716282657109905603462006701850544998109045986412695185702298097876768249839078776688511467326239283983098509833719622936353377241972069901941714532498768716115868591570677576564417673178096539225866975241748028970361222145947727863536827216898514621847057819434576609230609611433988111992050578257972824282582096472184583048169498234433362074234852397751092471572561447915858864173251918950055149910352613561842701231235991010567523708933526326914146617809092162785366466356881319331412699810698600005749537204138000103625418561709921211393425978474528008482773381566071958815629154952129819071276958851406185526598276525973924382616619638927391896061767984462316342879485215181167142278283860974122393376129042592163052368958562549536015824310093694746026464275365131184771894447337638915074864139725976487382152380756354201968249702096723240570755670245536167613452904133125178947690742699517259032210148920215799181139024035965215646290857562866703810691715946409991609804815076179410873897787742683601227701850554553822077038999133518015046632371381193916753753001215985430108776610861216333105848176092629616183087158890392572221891278673318821093507423533826286478376277706846738214944276585022159559546442701466991751438781940501472267762449963577519763912275982471063234586863118222911568589623962096407513817772511232500343850038909537966015828523715127021508912585417674924982540682182384350779611171081429430780526138025312256 +141241241241241248267654747412 ** -112 = 0 + +Number "-149143276547656984948124912" (scale 0) +-149143276547656984948124912 ** 252 = 55992175588333605542254063511278186461754574279839591709604310477562564689608443402403312222078711893971235561416950804719506082702379684733623971919408777114548100892216614108951324353246556535017960316014312222959702094808816331434094822650280427440063882576116695336500221646817757077369708529723823620336810350659576930581023887896886330503478109619863448515840946841190553234682382107049366084010115954164628751537372573754962628376851714140066914283347218349289869214926741444216767437164014398845666639858144658260377876458100579298055950974326675298651898083944350131609483093051504290661822668587661388602474880915186436725755772988399461893678236514411268113165984474267116617738961793643422894941375678592236663229748980138556108251262049269924802865828570213870281755635578142765872996532114681632125265545602095618091845037482357075517681870091778157619627960547482657474217943178159685376848804852485477702194998676631497601923456769896045663194900447061246337026655179495322126687564510781039271062988745945476519142221837023581656486042843501094480484668735886050383956287988798135101996785626705798462084512791858856000486173266205660052015961534265640905209313211125294627662693933297211009401491531951462889268507817897027972228709128736864008707571464724272762871838758126048184870005667275664845553774616604225572310912906152876060860153081105424979281592600839984125772468965874379832364640972866833334251698542584896314049237205644695553901317638647614318787708386467733615459065054365995897250270550067664267902152593317177099901109073008588486059511534052232495744462484660835773139005865467174339411663680328459135341612957853618227176487790111649236830978394018719354265785673205669861260376582410982507319458447629229410566850388275381698880420276787659514779189425772384786376987076804655929761620083736939837925917040082332479217674557289518688000706235667753826358380348450542285250406537012741099810396394118895119698580737840025778922487867828224721621696636134003638036732306141123387999132026332818408631403997196873195235009010958949928160436198665838441080496516462280678580659979676597569859757823014996017746962217866836145864024569035599176373962484096890443265839324221819146344682358316417403925617439797384999832590030653638024893217809739723987689363496190587792737138664106310356621671611551929705606372447129233289185995118668079125240237102990263869918086723137110005986280396651777574801894806896216800028637569274623115952691705831786855142876372495042729622496416156065929528185678346792948178219730451297126977072400452744745442561264775799188074289500187819445634298783592673376925950468898124384645088176602526214362158710249480242291627057463890117803354864730141461123747252541155347156400786777580958799766203254109472380735138017589461079608897268030232306639370404014163374433657561727131953203599087127600881156801848610207055453714038310061358219048264213893904654160135134848687217172657051056772433684382081263303256605397966956854911368891641655435481304103776752873688058287104569168817065852794438626208265013522214226436602866008965183348172506623891029487173951745639310845051694186685631363145511797791938639666555812388418639006943045236047084104158886785565539716175502784568418794921820159931670582549209945162053950333817714412469166667825536844480057325499652926508866184039633216003293080890783177150560019167662732664450429084752291624787970859408952386737598480289325786960288529818745254001900176106836194717861463240979411026596588950731407070101543407905496821261729510687348937796821412471929466014397692973783859204087752392409288320366943382998932124935828714903875879810782071015247527108459417616171666066601727254393827585882211498062627962114450203721750315845815155021697506333572413625746275557635360793506459802530913864986879539619322648374208957842152789346087113544250046274926635250206832991054325050621508788782189089586427470337274776955856080752508329602238857381659447673739378703749938045217491297442880220072951767019308302182120866450686427636523729778183001298464279351451928526859912935358200922256687852217293342222770676364112675875706669220947500716778555631580892140965700894865432467415441058797916958701058613262784771287521375767679654675090202761215911050514394041232506701642838754586624728822744306994328186360720405674825737265107963504397795466141078520379635918101893732280384966090817776697492519589958581600274196260931284807107964025197355095278741484748256594018281189059520971488155232871826436474292672923671151932746647309516440171397028945399089869838594185867352632608780487775648305026266036688377754295386304268591067685420141876930761382919961712554949830460502589375485003677323126912620975565484588745962938195716999584478642921595627905781087037922126946614604204487324577624535390564298909897280520685096190766392954666547140142042912418332011086985860840135170509805299821832401396881784927340948572834668444512971438394035995512132253672305434131965163273499166432580879149169510915828895700480265882084820049681597304529404116243028731782666223146293276746325246389991906529999778889818267030526761479627741075225237850144113075710406764114186915812713229218993793341952820039777430468508433933966568805816476723519852998663547981299673789287916637548338855826997859936126186385134251146763787920958572343543991163814387927189271315975774832941216796979710625756748626599205479744652593376548351502299670239068557344870045319781398252470403969497344298988472389766532157945149006071078612248352124554889096445319251898085100982701259010029952682041054540095054811702903956018540222632923457127530247486958765495736895235378687056667532898872772226646337210525647648255272837299826798955752834895854767176324936924389475920748073831818096942140696117576092974900312853119224158903042363552736819426608351322112183508012056364946319635528219546604362373666786411115604890681450553292576529326479658711947191604698823116618052429048783309728106697011619648892228467141759801681403110446555051361286503728164299660143689758025052636205563319986489358179027312653555993846959468256374852368137107311301180752627493394581971715347510238354749743466448707369816187860965509171840845607662996123030730513040791692384884335938330381280366200730869537716461479253093292207520004802508144089109220447459994338712030132586927643258314767215456297941961060686384969263988976767300178026850202211882886115891867194452898699949334970606719473728841882215132953439233323551171404920756819606555668846000416712701888993858314625083201880134723672826428864990888175557418214752256 +-149143276547656984948124912 ** -112 = 0 + +Number "-132132245132134.1515123765412" (scale 0) +-132132245132134.1515123765412 ** 252 = 3120478727852745944038201629388077518619819959072778583628662888334880902703519914956089883839049682560676318469032398877418258855834502244373291879606411026505240673439178203360337045239911911401143426214698971271446651876647780290878775496277056268500023561875074401483645577685406485543728816046104697722586058947707076996271324455741296959565524792629154208973708365548001942744414873486576135834495119053638656800810039027025111460331113258212007994067919145384836907081609212431099297641564986044622031456724633662129385296885404614299495960919762385823257644295402159220952463360942737103080118148157378054224237643480822424971993488886224977914497478451840908909543741696948530676782472589176085509233818251158281114742053469197512119057322174380982258491102193374311292374479260658074669161655748423441627187461082149885494689147360706871450098031935056173199096293719222350434764175998710688281702890509097348360359424470253307347729933523000107901985428772530720331531602039527737982138204747133438804098370520558033130528360187686745723186175166911233242211471504301640494824606523094514433764325212802493051981781145617974800929022725476602466144772127930440805434165616744472255347819425748816302231931654549386733679017858450849437143025476899823162000718594064313231515875922351213500222461590573572602190403067267602652736825180691112504152614488461179376450513626420818955027469144025952675277586101528625525962975039500773275778271940118869825449096270757603664530201369396099033029284457100867407697277568670150540402862276543512075434177386868941061854045298572535075420109196042754099960063991947561825511501510308275562634049421237378673160125072162000008236844954128527856723821733254208508907735993281091035579467181540332944219703979021157597903396359158593344664084014589368086779575978259251720029980655644790465254951448194710584230098489732637703819106720935376496517841788507273903175469897103859611331100545364249483088831520541660951382659294376726172983396374439867149870807521191671805902233698315119009713542754446376327365814873898054136563782777104472609469109963308092044568027239290595186247761999234668032081218755268222207063445264559530223287160963458677689875951320832784965806613254975793162543596534222371458668498571166837299325731596777670132830001546839544284346351393964824730839639301046179558652696082308824070477223869283054978658326855126932082754121256920575641227926598676719724725719222484148625020220494108342394030408253089899891700400203336918661663751523788622735773864833731552284954237137952497719069892440806380625733323869952845631051069940707365414990621967523332677411935527536814983008403556834213618522880787952621206983027073172116156651218377851746340174808375254284001435816118302249193303397466776845851743890519082821148416722135170698614740907867435963618925044956902958148324272894672030283819168758463855285701991252475351862754820487744045764868396684777846686070069982217881227849496760269225414231083805733290534151123406915650028121222263850640283860639197520959825152626458400452325975452613482437167476356009654121926543290145079478070360029730020980795208355698196814222112480898983202043419519375263651949181097645574205178523255626929768121920234439313474099206104455976950857197860880977258241730976397804678973733516947554105951667082135434125689463359251547871548911802646544683845207784833032667495833535290224433943754770189766271196987201022608066882057869125850499995301677418321251261832661046278653566452890787168741868239138468494682699662284065061316757322733605 +-132132245132134.1515123765412 ** -112 = 0 + +Number "0.1322135476547459213732911312" (scale 0) +0.1322135476547459213732911312 ** 252 = 0 +0.1322135476547459213732911312 ** -112 = 261271852670585926399109608993686784219014928770917821092988518427507780528448900476275115673665845 + +Number "-0.123912932193769965476541321" (scale 0) +-0.123912932193769965476541321 ** 252 = 0 +-0.123912932193769965476541321 ** -112 = 372337687215014577843846097845819604950292238064034167723169672020440891758727112526694844172394015451 + +Number "252" (scale 10) + 252 ** 252 = 142212010733424647125806541813713973266552845448041013743767421605354690415544328196152173390963803494710443230142152775687771944805429044982729796870857181947776572826160793933424942988750037827638341986183789792079484880609013515717131451507203060282065264043070502125106179548342207047711204933650239424460841202157152719662980652213693426926863084348529493037513389175805577626219903234384208039735661457745854089305800218117427842428649306815115886661640301037762482527923343983853507875264930793965916131347421096416232894153340276842687468868552274843085150094307684610419227652811804917758213226496.0000000000 + 252 ** -112 = 0.0000000000 + +Number "-112" (scale 10) + -112 ** 252 = 2528958559509291693508169626548016243760525615786379976651267082288161074806837567146354242426675448089179587223689918667106749284121965637887934532709154725528081671334320643858146400820666287506930741579829377389324701928200642059190071982670723834096616484481264403390509754202256821825886418273918096647296731861068941003342202311747852949747419032091731983573265045376333262301085406296848909763397511959941544798830761308589095475080050282796818166220650002245272286955283850226653729461037771414650027776147456.0000000000 + -112 ** -112 = 0.0000000000 + +Number "0.00" (scale 10) + 0.00 ** 252 = 0.0000000000 + 0.00 ** -112 = 0.0000000000 + +Number "-0.00" (scale 10) + -0.00 ** 252 = 0.0000000000 + -0.00 ** -112 = 0.0000000000 + +Number "14.14" (scale 10) + 14.14 ** 252 = 81893830287657387446140079713887806093576884288543703328783802176508922753380870094003376900318176725198165627317176488631295332728458521626072637389422651709754634844150191850264235770478926203337416116264674564206565124289082609409927041547210316199545928823591027686585730497632744792533.0727815413 + 14.14 ** -112 = 0.0000000000 + +Number "-16.60" (scale 10) +-16.60 ** 252 = 29325011162031531635050775473043742335712717807162139294189975794596377719994688259393390430325862997866008694776131070878139493075620575422701181905723221059535177378476880731856824922247604302185770818227621273103971150596854313288134126369153196254990016237048145067458027194360617116808917107675683822643.7551838996 +-16.60 ** -112 = 0.0000000000 + +Number "0.15" (scale 10) + 0.15 ** 252 = 0.0000000000 + 0.15 ** -112 = 189574092538418764958341193234367215745086742520818271114560854632390900314942322598922704092.1046205530 + +Number "-0.01" (scale 10) + -0.01 ** 252 = 0.0000000000 + -0.01 ** -112 = 100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000.0000000000 + +Number "15151324141414.412312232141241" (scale 10) +15151324141414.412312232141241 ** 252 = 2975421749795666718292864311407249970705086081437807395789379168718267809761515926216519710525556923711393180871882349125480337759668727402072958238900666362552341750552695988372017271582392491705356316948514737089205360282499880482512926893561832567935188520485154057479922893292233844872682027689029924296957873832086320362860520134654280058518517337570653996385278714198685752823835453817905306636319703719003676343516921560023010996505106467350842109482615346014981820723775172695392986401597801626150692206539756529644889137926049906575290564959396735953680592250779460130816876807757766338263686270020029393453575181327870591265373834140347848891333472452106266668645850397235968389042220027274496640159090815418483309643657324273121448493101717217140617069517287371864653153681358830190414615833078002577453411141597016583358385430394744450538495805740402488576124870572258200605831119008100984519684993455060646872766261382240383564392178883974453450433114215183488267147681395487265404247208352661495181304031822061114406175030677886104508679211172804603630316447723815907701460914622481206853022006681302191940743481903991732602477879503644713688600025822484351386994709104484371310424352144611218737196401824457866949669228902625541115988570606278592188602331451576075786613348336629409301707863923798082511203519536680273830467529869070112013346223720130183581189201489843066803035998524636580843999168622007134798723860720169157200004627398709928941733609441557160972211113022692009799237864185615460855228045985383589616750868474559577038584404446390706055987175018852877810774653462856565006598191028334508282011970034047209214176244147503985386832987247129380772291221015035166871079932982021644848487302418889155646720341011763574205760582552545432674974794783974025401318074084939141860755094923101801284442989344181743012614781021983935394731085008059924819771193595363859258571474767439534580638568746666210621240873673676940762489862112336626521441471577301366647762037305798100798711822457474507172500970023127288841824797039587587687760406935930088932018738492033507792817250533066953710174207685876451854460620309225706829752706450285622677922594957647037672524232255747269667789144401086986842640538153043741101238245322300993710394384754508967946211337487952324876892016919924636143376046118565299301806000686710931777881411145696867371682466218379864851343043041312758162391699150775018231599537746501756924961427444527995061269251565547747098676254156910141573235165420989417824245466381006116578002121746837672733849938657667872006918460874232266046864354612969306512425002050502769904919642157609172541701550215596501139800180259552618049103708500764672848369198536220300039766241517053637402993685274740246644140211865650547971680391614831119804648079596819224703795536455681460692071824945358084847698465553826334065350185771802401947633785300181386909348829848309501929340612695571623266869616638304357843374880496058625355636022120527400443841025788264209843812042625792300865583082505414465908017500188208987693716855836263772885824776988984333362684311002647195832946927199653846403980218407171091513992332604667414925751436017212580993860794349764631915036822374405575551253454423848395310883501116565831195963321659796880685759075194666868292856205113353111159407896940446955956749209.1357309004 +15151324141414.412312232141241 ** -112 = 0.0000000000 + +Number "141241241241241248267654747412" (scale 10) +141241241241241248267654747412 ** 252 = 61702737614252266948752156824258824995959599972302320510716529982037298313739133760034183411877915226877565852198668440669791795617272708708492070599904800132098399232978789534072748261835151242629120913793827710449864804330737116696282852494151262231643262037509694372134135894276508967194766869889867303622326767458055285775054658565704105389065774707528077134226867060689181155582362175947504766959470020293226474023546968232460082444503912720021117368360386834444296061143129153351909427031876573177512880122064185569107842900553293550154759961105705458193916741180207197209621223094253214396769871913256823886396746414009606236401337641975159583111263046921277256870910247139612445619959067659323246784229705879779504519921968053141823090638689328500711053428918278999419825533334808914479125124304786443895285883492931266287931531729858829237461074566895486671242348082833878884776228517928133923449282430038745609287058924814413730985957861336607098992582653851368483642246306509531450226330989261394231526444743678146424987980458014955926233473826334115019067286145968725016152043997048698852555649504111446712360855837865476980303396801134199935075659852802884819197423764473479086847306010829721607657507579637914756242599185804487547475812412827298700399642854781876339506969947557967510353980827513717983184885292080872213577420468280210432294624241752834053309219199045973319521987975932929891565623163042217388611918307622483024452293173783579391106196420370018442330967765451700900306909737464257886906607274005552053888483483054020641145694539605337937744331035605313696665428737416632101002639001569789365490404722602805032116136122275148638414611401101532057194278420768914301864998398142593349158088898737725867540737097890425196584907775942120540985239557579236871185430362654320129291837576497911030976672546705634824923076862019595021475580215199988383732424366096745105419692283398918642003304826916218038854944067948189983518814346644870415937764601253868517196737959263980145504426078052198314663327843039356842201353163719488533902336353096176525901730253653712920740921897375508115858541406566947578335604123685577167716291169069652779908723297589735946583152466623845488142430700731769152222928283344575334939855201356733293357748709762620500872007205341239109409378799478441798933979724812650664098561233648811173269759247319678281986289749980800969619374582248288309266623507972587507556836064440726974305255199923316929818005467224051058298675312384426804897772240949920506431569837490498738453686746046335084609377713999742753257733912005654985684955512755879419270408315204048723476100838206401604215791253443838837275686487522888505399721610616356437415942085415265887671279570399360491649770978544857086906535678225672378863908117400571273280456942553369722415886814734827811782754510807365782422375263311630528352008474205547181623751728827140229718189606400373948548748620058632906237446487461463924934038124060220073591275626363882021308939573471462771350670733259367229333311304626874470724822013347119651171746131956616787517406892676075170382597409056665459502450515715507008118773500106516262784295667877075894103798253576492873141052750983781150748301119099230755964674235471935040610571173788486284126167436426267511157335062848567544617136701036212286420938449059910123857126789600929537328019086612659111870130906758076250376040429753144954758559356615713330390937898173091733151870035205661876454153260289142884914806807421852435737887997788694746400471112311576221296382603532103910277379683106908049352464276556594523117986718023572377990452537890518505167077689962380643979739773271443338742938727262511258728095020188473504370112836853749915575721872419520821790251159556333443030459056638192775423075084514851738672355958336265015380193591541922572518272773045049968850063625505732261611074622474965936400258314638193512375533757871806804692087708082031597721541387274042872955965737015089791668860525425793056778509470752578481376934088995106166553613693981904966686690212955481430046830913629928245843069361759411764297658217897316455217217021684202563946301505904193890271187899540947054172542875489231623713315378660419455411924354406330626224728228155305799300626640774404377831301051311563284401393151464407836422401342988060834178957138740247616789909739231830346449366019203847401064438442628508720077238078363655382024999197911442576806729689998326498342414751123237684542163876848231535744093508827210033685403359485309410368756619655335647815457456271662771356876949346139750604173629577681834134842499790368833444683342223857503185849902689436294823704067138925427306607192910954091698318729347145907800382668086667899534178563329442767437901814888337083677115243233418029978664046416826126543919629091736900005600339085979551469129407326751494940405612077593337217212627875249494414287211237336394051868492049328715249941706898117243520077930496903083255415280985218820687648161267600024140589397356281610905118704267436760893073994318473316685154852928135755455009702456043054322286620596648587752781151951829993681040341917550141278881598811594525627199147969934315163608714206891254146576331437603057409575204473025499304932390635935053481842967808825955521225903532223710955029023291335271704387554010604494359260592752707638749226503894251533287510138743058143563627083333323467953930288323174099691963642626244047994212921019096440748326461891434713107878328347627128553535347757109535162399519267201671099780388509076162219198648438104874056150803718036255353941654576267453857313032960105282442901730781706849116468293203141632905459414497264691251443801343872064950763335362229179456002525747120895247485013820030787875667079177283909056955331506973886798132875485898886780825156590108516771255757929317588856294114876639328139025640209294004084324019087271465180464949662380290646689899281765951368313154956095080011378907737551290670716282657109905603462006701850544998109045986412695185702298097876768249839078776688511467326239283983098509833719622936353377241972069901941714532498768716115868591570677576564417673178096539225866975241748028970361222145947727863536827216898514621847057819434576609230609611433988111992050578257972824282582096472184583048169498234433362074234852397751092471572561447915858864173251918950055149910352613561842701231235991010567523708933526326914146617809092162785366466356881319331412699810698600005749537204138000103625418561709921211393425978474528008482773381566071958815629154952129819071276958851406185526598276525973924382616619638927391896061767984462316342879485215181167142278283860974122393376129042592163052368958562549536015824310093694746026464275365131184771894447337638915074864139725976487382152380756354201968249702096723240570755670245536167613452904133125178947690742699517259032210148920215799181139024035965215646290857562866703810691715946409991609804815076179410873897787742683601227701850554553822077038999133518015046632371381193916753753001215985430108776610861216333105848176092629616183087158890392572221891278673318821093507423533826286478376277706846738214944276585022159559546442701466991751438781940501472267762449963577519763912275982471063234586863118222911568589623962096407513817772511232500343850038909537966015828523715127021508912585417674924982540682182384350779611171081429430780526138025312256.0000000000 +141241241241241248267654747412 ** -112 = 0.0000000000 + +Number "-149143276547656984948124912" (scale 10) +-149143276547656984948124912 ** 252 = 55992175588333605542254063511278186461754574279839591709604310477562564689608443402403312222078711893971235561416950804719506082702379684733623971919408777114548100892216614108951324353246556535017960316014312222959702094808816331434094822650280427440063882576116695336500221646817757077369708529723823620336810350659576930581023887896886330503478109619863448515840946841190553234682382107049366084010115954164628751537372573754962628376851714140066914283347218349289869214926741444216767437164014398845666639858144658260377876458100579298055950974326675298651898083944350131609483093051504290661822668587661388602474880915186436725755772988399461893678236514411268113165984474267116617738961793643422894941375678592236663229748980138556108251262049269924802865828570213870281755635578142765872996532114681632125265545602095618091845037482357075517681870091778157619627960547482657474217943178159685376848804852485477702194998676631497601923456769896045663194900447061246337026655179495322126687564510781039271062988745945476519142221837023581656486042843501094480484668735886050383956287988798135101996785626705798462084512791858856000486173266205660052015961534265640905209313211125294627662693933297211009401491531951462889268507817897027972228709128736864008707571464724272762871838758126048184870005667275664845553774616604225572310912906152876060860153081105424979281592600839984125772468965874379832364640972866833334251698542584896314049237205644695553901317638647614318787708386467733615459065054365995897250270550067664267902152593317177099901109073008588486059511534052232495744462484660835773139005865467174339411663680328459135341612957853618227176487790111649236830978394018719354265785673205669861260376582410982507319458447629229410566850388275381698880420276787659514779189425772384786376987076804655929761620083736939837925917040082332479217674557289518688000706235667753826358380348450542285250406537012741099810396394118895119698580737840025778922487867828224721621696636134003638036732306141123387999132026332818408631403997196873195235009010958949928160436198665838441080496516462280678580659979676597569859757823014996017746962217866836145864024569035599176373962484096890443265839324221819146344682358316417403925617439797384999832590030653638024893217809739723987689363496190587792737138664106310356621671611551929705606372447129233289185995118668079125240237102990263869918086723137110005986280396651777574801894806896216800028637569274623115952691705831786855142876372495042729622496416156065929528185678346792948178219730451297126977072400452744745442561264775799188074289500187819445634298783592673376925950468898124384645088176602526214362158710249480242291627057463890117803354864730141461123747252541155347156400786777580958799766203254109472380735138017589461079608897268030232306639370404014163374433657561727131953203599087127600881156801848610207055453714038310061358219048264213893904654160135134848687217172657051056772433684382081263303256605397966956854911368891641655435481304103776752873688058287104569168817065852794438626208265013522214226436602866008965183348172506623891029487173951745639310845051694186685631363145511797791938639666555812388418639006943045236047084104158886785565539716175502784568418794921820159931670582549209945162053950333817714412469166667825536844480057325499652926508866184039633216003293080890783177150560019167662732664450429084752291624787970859408952386737598480289325786960288529818745254001900176106836194717861463240979411026596588950731407070101543407905496821261729510687348937796821412471929466014397692973783859204087752392409288320366943382998932124935828714903875879810782071015247527108459417616171666066601727254393827585882211498062627962114450203721750315845815155021697506333572413625746275557635360793506459802530913864986879539619322648374208957842152789346087113544250046274926635250206832991054325050621508788782189089586427470337274776955856080752508329602238857381659447673739378703749938045217491297442880220072951767019308302182120866450686427636523729778183001298464279351451928526859912935358200922256687852217293342222770676364112675875706669220947500716778555631580892140965700894865432467415441058797916958701058613262784771287521375767679654675090202761215911050514394041232506701642838754586624728822744306994328186360720405674825737265107963504397795466141078520379635918101893732280384966090817776697492519589958581600274196260931284807107964025197355095278741484748256594018281189059520971488155232871826436474292672923671151932746647309516440171397028945399089869838594185867352632608780487775648305026266036688377754295386304268591067685420141876930761382919961712554949830460502589375485003677323126912620975565484588745962938195716999584478642921595627905781087037922126946614604204487324577624535390564298909897280520685096190766392954666547140142042912418332011086985860840135170509805299821832401396881784927340948572834668444512971438394035995512132253672305434131965163273499166432580879149169510915828895700480265882084820049681597304529404116243028731782666223146293276746325246389991906529999778889818267030526761479627741075225237850144113075710406764114186915812713229218993793341952820039777430468508433933966568805816476723519852998663547981299673789287916637548338855826997859936126186385134251146763787920958572343543991163814387927189271315975774832941216796979710625756748626599205479744652593376548351502299670239068557344870045319781398252470403969497344298988472389766532157945149006071078612248352124554889096445319251898085100982701259010029952682041054540095054811702903956018540222632923457127530247486958765495736895235378687056667532898872772226646337210525647648255272837299826798955752834895854767176324936924389475920748073831818096942140696117576092974900312853119224158903042363552736819426608351322112183508012056364946319635528219546604362373666786411115604890681450553292576529326479658711947191604698823116618052429048783309728106697011619648892228467141759801681403110446555051361286503728164299660143689758025052636205563319986489358179027312653555993846959468256374852368137107311301180752627493394581971715347510238354749743466448707369816187860965509171840845607662996123030730513040791692384884335938330381280366200730869537716461479253093292207520004802508144089109220447459994338712030132586927643258314767215456297941961060686384969263988976767300178026850202211882886115891867194452898699949334970606719473728841882215132953439233323551171404920756819606555668846000416712701888993858314625083201880134723672826428864990888175557418214752256.0000000000 +-149143276547656984948124912 ** -112 = 0.0000000000 + +Number "-132132245132134.1515123765412" (scale 10) +-132132245132134.1515123765412 ** 252 = 3120478727852745944038201629388077518619819959072778583628662888334880902703519914956089883839049682560676318469032398877418258855834502244373291879606411026505240673439178203360337045239911911401143426214698971271446651876647780290878775496277056268500023561875074401483645577685406485543728816046104697722586058947707076996271324455741296959565524792629154208973708365548001942744414873486576135834495119053638656800810039027025111460331113258212007994067919145384836907081609212431099297641564986044622031456724633662129385296885404614299495960919762385823257644295402159220952463360942737103080118148157378054224237643480822424971993488886224977914497478451840908909543741696948530676782472589176085509233818251158281114742053469197512119057322174380982258491102193374311292374479260658074669161655748423441627187461082149885494689147360706871450098031935056173199096293719222350434764175998710688281702890509097348360359424470253307347729933523000107901985428772530720331531602039527737982138204747133438804098370520558033130528360187686745723186175166911233242211471504301640494824606523094514433764325212802493051981781145617974800929022725476602466144772127930440805434165616744472255347819425748816302231931654549386733679017858450849437143025476899823162000718594064313231515875922351213500222461590573572602190403067267602652736825180691112504152614488461179376450513626420818955027469144025952675277586101528625525962975039500773275778271940118869825449096270757603664530201369396099033029284457100867407697277568670150540402862276543512075434177386868941061854045298572535075420109196042754099960063991947561825511501510308275562634049421237378673160125072162000008236844954128527856723821733254208508907735993281091035579467181540332944219703979021157597903396359158593344664084014589368086779575978259251720029980655644790465254951448194710584230098489732637703819106720935376496517841788507273903175469897103859611331100545364249483088831520541660951382659294376726172983396374439867149870807521191671805902233698315119009713542754446376327365814873898054136563782777104472609469109963308092044568027239290595186247761999234668032081218755268222207063445264559530223287160963458677689875951320832784965806613254975793162543596534222371458668498571166837299325731596777670132830001546839544284346351393964824730839639301046179558652696082308824070477223869283054978658326855126932082754121256920575641227926598676719724725719222484148625020220494108342394030408253089899891700400203336918661663751523788622735773864833731552284954237137952497719069892440806380625733323869952845631051069940707365414990621967523332677411935527536814983008403556834213618522880787952621206983027073172116156651218377851746340174808375254284001435816118302249193303397466776845851743890519082821148416722135170698614740907867435963618925044956902958148324272894672030283819168758463855285701991252475351862754820487744045764868396684777846686070069982217881227849496760269225414231083805733290534151123406915650028121222263850640283860639197520959825152626458400452325975452613482437167476356009654121926543290145079478070360029730020980795208355698196814222112480898983202043419519375263651949181097645574205178523255626929768121920234439313474099206104455976950857197860880977258241730976397804678973733516947554105951667082135434125689463359251547871548911802646544683845207784833032667495833535290224433943754770189766271196987201022608066882057869125850499995301677418321251261832661046278653566452890787168741868239138468494682699662284065061316757322733605.4563495790 +-132132245132134.1515123765412 ** -112 = 0.0000000000 + +Number "0.1322135476547459213732911312" (scale 10) +0.1322135476547459213732911312 ** 252 = 0.0000000000 +0.1322135476547459213732911312 ** -112 = 261271852670585926399109608993686784219014928770917821092988518427507780528448900476275115673665845.0719674616 + +Number "-0.123912932193769965476541321" (scale 10) +-0.123912932193769965476541321 ** 252 = 0.0000000000 +-0.123912932193769965476541321 ** -112 = 372337687215014577843846097845819604950292238064034167723169672020440891758727112526694844172394015451.7302535898 From 72e2499cfec607eb26ab264d27b077929bd5d291 Mon Sep 17 00:00:00 2001 From: Jorg Adam Sowa Date: Sun, 2 Jul 2023 00:32:28 +0200 Subject: [PATCH 10/15] Extracted function used in tests to separate file --- ext/bcmath/tests/bcadd.phpt | 525 ++++++++++--------- ext/bcmath/tests/bcadd_large_numbers.phpt | 21 +- ext/bcmath/tests/bcadd_zero.phpt | 310 ++++++----- ext/bcmath/tests/bcdiv.phpt | 17 +- ext/bcmath/tests/bcdiv_large_numbers.phpt | 17 +- ext/bcmath/tests/bcdiv_zero.phpt | 241 +++++---- ext/bcmath/tests/bcmod.phpt | 409 ++++++++------- ext/bcmath/tests/bcmod_large_numbers.phpt | 18 +- ext/bcmath/tests/bcmod_zero.phpt | 242 +++++---- ext/bcmath/tests/bcmul.phpt | 593 +++++++++++----------- ext/bcmath/tests/bcmul_large_numbers.phpt | 449 ++++++++-------- ext/bcmath/tests/bcmul_zero.phpt | 305 ++++++----- ext/bcmath/tests/bcpow.phpt | 435 ++++++++-------- ext/bcmath/tests/bcpow_large_numbers.phpt | 75 ++- ext/bcmath/tests/bcsub.phpt | 522 +++++++++---------- ext/bcmath/tests/bcsub_large_numbers.phpt | 450 ++++++++-------- ext/bcmath/tests/bcsub_zero.phpt | 306 ++++++----- 17 files changed, 2354 insertions(+), 2581 deletions(-) diff --git a/ext/bcmath/tests/bcadd.phpt b/ext/bcmath/tests/bcadd.phpt index ff3150ae47514..e9bb655086268 100644 --- a/ext/bcmath/tests/bcadd.phpt +++ b/ext/bcmath/tests/bcadd.phpt @@ -6,9 +6,10 @@ bcmath bcmath.scale=0 --FILE-- --EXPECT-- Number "15" (scale 0) - 15 + 15 = 30 - 15 + -15 = 0 - 15 + 1 = 16 - 15 + -9 = 6 - 15 + 14.14 = 29 - 15 + -16.60 = -1 - 15 + 0.15 = 15 - 15 + -0.01 = 14 - 15 + 0 = 15 - 15 + 0.00 = 15 - 15 + -0 = 15 - 15 + -0.00 = 15 - 15 + 15151324141414.412312232141241 = 15151324141429 - 15 + -132132245132134.1515123765412 = -132132245132119 - 15 + 141241241241241248267654747412 = 141241241241241248267654747427 - 15 + -149143276547656984948124912 = -149143276547656984948124897 - 15 + 0.1322135476547459213732911312 = 15 - 15 + -0.123912932193769965476541321 = 14 +15 + 15 = 30 +15 + -15 = 0 +15 + 1 = 16 +15 + -9 = 6 +15 + 14.14 = 29 +15 + -16.60 = -1 +15 + 0.15 = 15 +15 + -0.01 = 14 +15 + 0 = 15 +15 + 0.00 = 15 +15 + -0 = 15 +15 + -0.00 = 15 +15 + 15151324141414.412312232141241 = 15151324141429 +15 + -132132245132134.1515123765412 = -132132245132119 +15 + 141241241241241248267654747412 = 141241241241241248267654747427 +15 + -149143276547656984948124912 = -149143276547656984948124897 +15 + 0.1322135476547459213732911312 = 15 +15 + -0.123912932193769965476541321 = 14 Number "-15" (scale 0) - -15 + 15 = 0 - -15 + -15 = -30 - -15 + 1 = -14 - -15 + -9 = -24 - -15 + 14.14 = 0 - -15 + -16.60 = -31 - -15 + 0.15 = -14 - -15 + -0.01 = -15 - -15 + 0 = -15 - -15 + 0.00 = -15 - -15 + -0 = -15 - -15 + -0.00 = -15 - -15 + 15151324141414.412312232141241 = 15151324141399 - -15 + -132132245132134.1515123765412 = -132132245132149 - -15 + 141241241241241248267654747412 = 141241241241241248267654747397 - -15 + -149143276547656984948124912 = -149143276547656984948124927 - -15 + 0.1322135476547459213732911312 = -14 - -15 + -0.123912932193769965476541321 = -15 +-15 + 15 = 0 +-15 + -15 = -30 +-15 + 1 = -14 +-15 + -9 = -24 +-15 + 14.14 = 0 +-15 + -16.60 = -31 +-15 + 0.15 = -14 +-15 + -0.01 = -15 +-15 + 0 = -15 +-15 + 0.00 = -15 +-15 + -0 = -15 +-15 + -0.00 = -15 +-15 + 15151324141414.412312232141241 = 15151324141399 +-15 + -132132245132134.1515123765412 = -132132245132149 +-15 + 141241241241241248267654747412 = 141241241241241248267654747397 +-15 + -149143276547656984948124912 = -149143276547656984948124927 +-15 + 0.1322135476547459213732911312 = -14 +-15 + -0.123912932193769965476541321 = -15 Number "1" (scale 0) - 1 + 15 = 16 - 1 + -15 = -14 - 1 + 1 = 2 - 1 + -9 = -8 - 1 + 14.14 = 15 - 1 + -16.60 = -15 - 1 + 0.15 = 1 - 1 + -0.01 = 0 - 1 + 0 = 1 - 1 + 0.00 = 1 - 1 + -0 = 1 - 1 + -0.00 = 1 - 1 + 15151324141414.412312232141241 = 15151324141415 - 1 + -132132245132134.1515123765412 = -132132245132133 - 1 + 141241241241241248267654747412 = 141241241241241248267654747413 - 1 + -149143276547656984948124912 = -149143276547656984948124911 - 1 + 0.1322135476547459213732911312 = 1 - 1 + -0.123912932193769965476541321 = 0 +1 + 15 = 16 +1 + -15 = -14 +1 + 1 = 2 +1 + -9 = -8 +1 + 14.14 = 15 +1 + -16.60 = -15 +1 + 0.15 = 1 +1 + -0.01 = 0 +1 + 0 = 1 +1 + 0.00 = 1 +1 + -0 = 1 +1 + -0.00 = 1 +1 + 15151324141414.412312232141241 = 15151324141415 +1 + -132132245132134.1515123765412 = -132132245132133 +1 + 141241241241241248267654747412 = 141241241241241248267654747413 +1 + -149143276547656984948124912 = -149143276547656984948124911 +1 + 0.1322135476547459213732911312 = 1 +1 + -0.123912932193769965476541321 = 0 Number "-9" (scale 0) - -9 + 15 = 6 - -9 + -15 = -24 - -9 + 1 = -8 - -9 + -9 = -18 - -9 + 14.14 = 5 - -9 + -16.60 = -25 - -9 + 0.15 = -8 - -9 + -0.01 = -9 - -9 + 0 = -9 - -9 + 0.00 = -9 - -9 + -0 = -9 - -9 + -0.00 = -9 - -9 + 15151324141414.412312232141241 = 15151324141405 - -9 + -132132245132134.1515123765412 = -132132245132143 - -9 + 141241241241241248267654747412 = 141241241241241248267654747403 - -9 + -149143276547656984948124912 = -149143276547656984948124921 - -9 + 0.1322135476547459213732911312 = -8 - -9 + -0.123912932193769965476541321 = -9 +-9 + 15 = 6 +-9 + -15 = -24 +-9 + 1 = -8 +-9 + -9 = -18 +-9 + 14.14 = 5 +-9 + -16.60 = -25 +-9 + 0.15 = -8 +-9 + -0.01 = -9 +-9 + 0 = -9 +-9 + 0.00 = -9 +-9 + -0 = -9 +-9 + -0.00 = -9 +-9 + 15151324141414.412312232141241 = 15151324141405 +-9 + -132132245132134.1515123765412 = -132132245132143 +-9 + 141241241241241248267654747412 = 141241241241241248267654747403 +-9 + -149143276547656984948124912 = -149143276547656984948124921 +-9 + 0.1322135476547459213732911312 = -8 +-9 + -0.123912932193769965476541321 = -9 Number "14.14" (scale 0) - 14.14 + 15 = 29 - 14.14 + -15 = 0 - 14.14 + 1 = 15 - 14.14 + -9 = 5 - 14.14 + 14.14 = 28 - 14.14 + -16.60 = -2 - 14.14 + 0.15 = 14 - 14.14 + -0.01 = 14 - 14.14 + 0 = 14 - 14.14 + 0.00 = 14 - 14.14 + -0 = 14 - 14.14 + -0.00 = 14 - 14.14 + 15151324141414.412312232141241 = 15151324141428 - 14.14 + -132132245132134.1515123765412 = -132132245132120 - 14.14 + 141241241241241248267654747412 = 141241241241241248267654747426 - 14.14 + -149143276547656984948124912 = -149143276547656984948124897 - 14.14 + 0.1322135476547459213732911312 = 14 - 14.14 + -0.123912932193769965476541321 = 14 +14.14 + 15 = 29 +14.14 + -15 = 0 +14.14 + 1 = 15 +14.14 + -9 = 5 +14.14 + 14.14 = 28 +14.14 + -16.60 = -2 +14.14 + 0.15 = 14 +14.14 + -0.01 = 14 +14.14 + 0 = 14 +14.14 + 0.00 = 14 +14.14 + -0 = 14 +14.14 + -0.00 = 14 +14.14 + 15151324141414.412312232141241 = 15151324141428 +14.14 + -132132245132134.1515123765412 = -132132245132120 +14.14 + 141241241241241248267654747412 = 141241241241241248267654747426 +14.14 + -149143276547656984948124912 = -149143276547656984948124897 +14.14 + 0.1322135476547459213732911312 = 14 +14.14 + -0.123912932193769965476541321 = 14 Number "-16.60" (scale 0) -16.60 + 15 = -1 @@ -160,144 +147,144 @@ Number "-16.60" (scale 0) -16.60 + -0.123912932193769965476541321 = -16 Number "0.15" (scale 0) - 0.15 + 15 = 15 - 0.15 + -15 = -14 - 0.15 + 1 = 1 - 0.15 + -9 = -8 - 0.15 + 14.14 = 14 - 0.15 + -16.60 = -16 - 0.15 + 0.15 = 0 - 0.15 + -0.01 = 0 - 0.15 + 0 = 0 - 0.15 + 0.00 = 0 - 0.15 + -0 = 0 - 0.15 + -0.00 = 0 - 0.15 + 15151324141414.412312232141241 = 15151324141414 - 0.15 + -132132245132134.1515123765412 = -132132245132134 - 0.15 + 141241241241241248267654747412 = 141241241241241248267654747412 - 0.15 + -149143276547656984948124912 = -149143276547656984948124911 - 0.15 + 0.1322135476547459213732911312 = 0 - 0.15 + -0.123912932193769965476541321 = 0 +0.15 + 15 = 15 +0.15 + -15 = -14 +0.15 + 1 = 1 +0.15 + -9 = -8 +0.15 + 14.14 = 14 +0.15 + -16.60 = -16 +0.15 + 0.15 = 0 +0.15 + -0.01 = 0 +0.15 + 0 = 0 +0.15 + 0.00 = 0 +0.15 + -0 = 0 +0.15 + -0.00 = 0 +0.15 + 15151324141414.412312232141241 = 15151324141414 +0.15 + -132132245132134.1515123765412 = -132132245132134 +0.15 + 141241241241241248267654747412 = 141241241241241248267654747412 +0.15 + -149143276547656984948124912 = -149143276547656984948124911 +0.15 + 0.1322135476547459213732911312 = 0 +0.15 + -0.123912932193769965476541321 = 0 Number "-0.01" (scale 0) - -0.01 + 15 = 14 - -0.01 + -15 = -15 - -0.01 + 1 = 0 - -0.01 + -9 = -9 - -0.01 + 14.14 = 14 - -0.01 + -16.60 = -16 - -0.01 + 0.15 = 0 - -0.01 + -0.01 = 0 - -0.01 + 0 = 0 - -0.01 + 0.00 = 0 - -0.01 + -0 = 0 - -0.01 + -0.00 = 0 - -0.01 + 15151324141414.412312232141241 = 15151324141414 - -0.01 + -132132245132134.1515123765412 = -132132245132134 - -0.01 + 141241241241241248267654747412 = 141241241241241248267654747411 - -0.01 + -149143276547656984948124912 = -149143276547656984948124912 - -0.01 + 0.1322135476547459213732911312 = 0 - -0.01 + -0.123912932193769965476541321 = 0 +-0.01 + 15 = 14 +-0.01 + -15 = -15 +-0.01 + 1 = 0 +-0.01 + -9 = -9 +-0.01 + 14.14 = 14 +-0.01 + -16.60 = -16 +-0.01 + 0.15 = 0 +-0.01 + -0.01 = 0 +-0.01 + 0 = 0 +-0.01 + 0.00 = 0 +-0.01 + -0 = 0 +-0.01 + -0.00 = 0 +-0.01 + 15151324141414.412312232141241 = 15151324141414 +-0.01 + -132132245132134.1515123765412 = -132132245132134 +-0.01 + 141241241241241248267654747412 = 141241241241241248267654747411 +-0.01 + -149143276547656984948124912 = -149143276547656984948124912 +-0.01 + 0.1322135476547459213732911312 = 0 +-0.01 + -0.123912932193769965476541321 = 0 Number "15" (scale 10) - 15 + 15 = 30.0000000000 - 15 + -15 = 0.0000000000 - 15 + 1 = 16.0000000000 - 15 + -9 = 6.0000000000 - 15 + 14.14 = 29.1400000000 - 15 + -16.60 = -1.6000000000 - 15 + 0.15 = 15.1500000000 - 15 + -0.01 = 14.9900000000 - 15 + 0 = 15.0000000000 - 15 + 0.00 = 15.0000000000 - 15 + -0 = 15.0000000000 - 15 + -0.00 = 15.0000000000 - 15 + 15151324141414.412312232141241 = 15151324141429.4123122321 - 15 + -132132245132134.1515123765412 = -132132245132119.1515123765 - 15 + 141241241241241248267654747412 = 141241241241241248267654747427.0000000000 - 15 + -149143276547656984948124912 = -149143276547656984948124897.0000000000 - 15 + 0.1322135476547459213732911312 = 15.1322135476 - 15 + -0.123912932193769965476541321 = 14.8760870678 +15 + 15 = 30.0000000000 +15 + -15 = 0.0000000000 +15 + 1 = 16.0000000000 +15 + -9 = 6.0000000000 +15 + 14.14 = 29.1400000000 +15 + -16.60 = -1.6000000000 +15 + 0.15 = 15.1500000000 +15 + -0.01 = 14.9900000000 +15 + 0 = 15.0000000000 +15 + 0.00 = 15.0000000000 +15 + -0 = 15.0000000000 +15 + -0.00 = 15.0000000000 +15 + 15151324141414.412312232141241 = 15151324141429.4123122321 +15 + -132132245132134.1515123765412 = -132132245132119.1515123765 +15 + 141241241241241248267654747412 = 141241241241241248267654747427.0000000000 +15 + -149143276547656984948124912 = -149143276547656984948124897.0000000000 +15 + 0.1322135476547459213732911312 = 15.1322135476 +15 + -0.123912932193769965476541321 = 14.8760870678 Number "-15" (scale 10) - -15 + 15 = 0.0000000000 - -15 + -15 = -30.0000000000 - -15 + 1 = -14.0000000000 - -15 + -9 = -24.0000000000 - -15 + 14.14 = -0.8600000000 - -15 + -16.60 = -31.6000000000 - -15 + 0.15 = -14.8500000000 - -15 + -0.01 = -15.0100000000 - -15 + 0 = -15.0000000000 - -15 + 0.00 = -15.0000000000 - -15 + -0 = -15.0000000000 - -15 + -0.00 = -15.0000000000 - -15 + 15151324141414.412312232141241 = 15151324141399.4123122321 - -15 + -132132245132134.1515123765412 = -132132245132149.1515123765 - -15 + 141241241241241248267654747412 = 141241241241241248267654747397.0000000000 - -15 + -149143276547656984948124912 = -149143276547656984948124927.0000000000 - -15 + 0.1322135476547459213732911312 = -14.8677864523 - -15 + -0.123912932193769965476541321 = -15.1239129321 +-15 + 15 = 0.0000000000 +-15 + -15 = -30.0000000000 +-15 + 1 = -14.0000000000 +-15 + -9 = -24.0000000000 +-15 + 14.14 = -0.8600000000 +-15 + -16.60 = -31.6000000000 +-15 + 0.15 = -14.8500000000 +-15 + -0.01 = -15.0100000000 +-15 + 0 = -15.0000000000 +-15 + 0.00 = -15.0000000000 +-15 + -0 = -15.0000000000 +-15 + -0.00 = -15.0000000000 +-15 + 15151324141414.412312232141241 = 15151324141399.4123122321 +-15 + -132132245132134.1515123765412 = -132132245132149.1515123765 +-15 + 141241241241241248267654747412 = 141241241241241248267654747397.0000000000 +-15 + -149143276547656984948124912 = -149143276547656984948124927.0000000000 +-15 + 0.1322135476547459213732911312 = -14.8677864523 +-15 + -0.123912932193769965476541321 = -15.1239129321 Number "1" (scale 10) - 1 + 15 = 16.0000000000 - 1 + -15 = -14.0000000000 - 1 + 1 = 2.0000000000 - 1 + -9 = -8.0000000000 - 1 + 14.14 = 15.1400000000 - 1 + -16.60 = -15.6000000000 - 1 + 0.15 = 1.1500000000 - 1 + -0.01 = 0.9900000000 - 1 + 0 = 1.0000000000 - 1 + 0.00 = 1.0000000000 - 1 + -0 = 1.0000000000 - 1 + -0.00 = 1.0000000000 - 1 + 15151324141414.412312232141241 = 15151324141415.4123122321 - 1 + -132132245132134.1515123765412 = -132132245132133.1515123765 - 1 + 141241241241241248267654747412 = 141241241241241248267654747413.0000000000 - 1 + -149143276547656984948124912 = -149143276547656984948124911.0000000000 - 1 + 0.1322135476547459213732911312 = 1.1322135476 - 1 + -0.123912932193769965476541321 = 0.8760870678 +1 + 15 = 16.0000000000 +1 + -15 = -14.0000000000 +1 + 1 = 2.0000000000 +1 + -9 = -8.0000000000 +1 + 14.14 = 15.1400000000 +1 + -16.60 = -15.6000000000 +1 + 0.15 = 1.1500000000 +1 + -0.01 = 0.9900000000 +1 + 0 = 1.0000000000 +1 + 0.00 = 1.0000000000 +1 + -0 = 1.0000000000 +1 + -0.00 = 1.0000000000 +1 + 15151324141414.412312232141241 = 15151324141415.4123122321 +1 + -132132245132134.1515123765412 = -132132245132133.1515123765 +1 + 141241241241241248267654747412 = 141241241241241248267654747413.0000000000 +1 + -149143276547656984948124912 = -149143276547656984948124911.0000000000 +1 + 0.1322135476547459213732911312 = 1.1322135476 +1 + -0.123912932193769965476541321 = 0.8760870678 Number "-9" (scale 10) - -9 + 15 = 6.0000000000 - -9 + -15 = -24.0000000000 - -9 + 1 = -8.0000000000 - -9 + -9 = -18.0000000000 - -9 + 14.14 = 5.1400000000 - -9 + -16.60 = -25.6000000000 - -9 + 0.15 = -8.8500000000 - -9 + -0.01 = -9.0100000000 - -9 + 0 = -9.0000000000 - -9 + 0.00 = -9.0000000000 - -9 + -0 = -9.0000000000 - -9 + -0.00 = -9.0000000000 - -9 + 15151324141414.412312232141241 = 15151324141405.4123122321 - -9 + -132132245132134.1515123765412 = -132132245132143.1515123765 - -9 + 141241241241241248267654747412 = 141241241241241248267654747403.0000000000 - -9 + -149143276547656984948124912 = -149143276547656984948124921.0000000000 - -9 + 0.1322135476547459213732911312 = -8.8677864523 - -9 + -0.123912932193769965476541321 = -9.1239129321 +-9 + 15 = 6.0000000000 +-9 + -15 = -24.0000000000 +-9 + 1 = -8.0000000000 +-9 + -9 = -18.0000000000 +-9 + 14.14 = 5.1400000000 +-9 + -16.60 = -25.6000000000 +-9 + 0.15 = -8.8500000000 +-9 + -0.01 = -9.0100000000 +-9 + 0 = -9.0000000000 +-9 + 0.00 = -9.0000000000 +-9 + -0 = -9.0000000000 +-9 + -0.00 = -9.0000000000 +-9 + 15151324141414.412312232141241 = 15151324141405.4123122321 +-9 + -132132245132134.1515123765412 = -132132245132143.1515123765 +-9 + 141241241241241248267654747412 = 141241241241241248267654747403.0000000000 +-9 + -149143276547656984948124912 = -149143276547656984948124921.0000000000 +-9 + 0.1322135476547459213732911312 = -8.8677864523 +-9 + -0.123912932193769965476541321 = -9.1239129321 Number "14.14" (scale 10) - 14.14 + 15 = 29.1400000000 - 14.14 + -15 = -0.8600000000 - 14.14 + 1 = 15.1400000000 - 14.14 + -9 = 5.1400000000 - 14.14 + 14.14 = 28.2800000000 - 14.14 + -16.60 = -2.4600000000 - 14.14 + 0.15 = 14.2900000000 - 14.14 + -0.01 = 14.1300000000 - 14.14 + 0 = 14.1400000000 - 14.14 + 0.00 = 14.1400000000 - 14.14 + -0 = 14.1400000000 - 14.14 + -0.00 = 14.1400000000 - 14.14 + 15151324141414.412312232141241 = 15151324141428.5523122321 - 14.14 + -132132245132134.1515123765412 = -132132245132120.0115123765 - 14.14 + 141241241241241248267654747412 = 141241241241241248267654747426.1400000000 - 14.14 + -149143276547656984948124912 = -149143276547656984948124897.8600000000 - 14.14 + 0.1322135476547459213732911312 = 14.2722135476 - 14.14 + -0.123912932193769965476541321 = 14.0160870678 +14.14 + 15 = 29.1400000000 +14.14 + -15 = -0.8600000000 +14.14 + 1 = 15.1400000000 +14.14 + -9 = 5.1400000000 +14.14 + 14.14 = 28.2800000000 +14.14 + -16.60 = -2.4600000000 +14.14 + 0.15 = 14.2900000000 +14.14 + -0.01 = 14.1300000000 +14.14 + 0 = 14.1400000000 +14.14 + 0.00 = 14.1400000000 +14.14 + -0 = 14.1400000000 +14.14 + -0.00 = 14.1400000000 +14.14 + 15151324141414.412312232141241 = 15151324141428.5523122321 +14.14 + -132132245132134.1515123765412 = -132132245132120.0115123765 +14.14 + 141241241241241248267654747412 = 141241241241241248267654747426.1400000000 +14.14 + -149143276547656984948124912 = -149143276547656984948124897.8600000000 +14.14 + 0.1322135476547459213732911312 = 14.2722135476 +14.14 + -0.123912932193769965476541321 = 14.0160870678 Number "-16.60" (scale 10) -16.60 + 15 = -1.6000000000 @@ -320,41 +307,41 @@ Number "-16.60" (scale 10) -16.60 + -0.123912932193769965476541321 = -16.7239129321 Number "0.15" (scale 10) - 0.15 + 15 = 15.1500000000 - 0.15 + -15 = -14.8500000000 - 0.15 + 1 = 1.1500000000 - 0.15 + -9 = -8.8500000000 - 0.15 + 14.14 = 14.2900000000 - 0.15 + -16.60 = -16.4500000000 - 0.15 + 0.15 = 0.3000000000 - 0.15 + -0.01 = 0.1400000000 - 0.15 + 0 = 0.1500000000 - 0.15 + 0.00 = 0.1500000000 - 0.15 + -0 = 0.1500000000 - 0.15 + -0.00 = 0.1500000000 - 0.15 + 15151324141414.412312232141241 = 15151324141414.5623122321 - 0.15 + -132132245132134.1515123765412 = -132132245132134.0015123765 - 0.15 + 141241241241241248267654747412 = 141241241241241248267654747412.1500000000 - 0.15 + -149143276547656984948124912 = -149143276547656984948124911.8500000000 - 0.15 + 0.1322135476547459213732911312 = 0.2822135476 - 0.15 + -0.123912932193769965476541321 = 0.0260870678 +0.15 + 15 = 15.1500000000 +0.15 + -15 = -14.8500000000 +0.15 + 1 = 1.1500000000 +0.15 + -9 = -8.8500000000 +0.15 + 14.14 = 14.2900000000 +0.15 + -16.60 = -16.4500000000 +0.15 + 0.15 = 0.3000000000 +0.15 + -0.01 = 0.1400000000 +0.15 + 0 = 0.1500000000 +0.15 + 0.00 = 0.1500000000 +0.15 + -0 = 0.1500000000 +0.15 + -0.00 = 0.1500000000 +0.15 + 15151324141414.412312232141241 = 15151324141414.5623122321 +0.15 + -132132245132134.1515123765412 = -132132245132134.0015123765 +0.15 + 141241241241241248267654747412 = 141241241241241248267654747412.1500000000 +0.15 + -149143276547656984948124912 = -149143276547656984948124911.8500000000 +0.15 + 0.1322135476547459213732911312 = 0.2822135476 +0.15 + -0.123912932193769965476541321 = 0.0260870678 Number "-0.01" (scale 10) - -0.01 + 15 = 14.9900000000 - -0.01 + -15 = -15.0100000000 - -0.01 + 1 = 0.9900000000 - -0.01 + -9 = -9.0100000000 - -0.01 + 14.14 = 14.1300000000 - -0.01 + -16.60 = -16.6100000000 - -0.01 + 0.15 = 0.1400000000 - -0.01 + -0.01 = -0.0200000000 - -0.01 + 0 = -0.0100000000 - -0.01 + 0.00 = -0.0100000000 - -0.01 + -0 = -0.0100000000 - -0.01 + -0.00 = -0.0100000000 - -0.01 + 15151324141414.412312232141241 = 15151324141414.4023122321 - -0.01 + -132132245132134.1515123765412 = -132132245132134.1615123765 - -0.01 + 141241241241241248267654747412 = 141241241241241248267654747411.9900000000 - -0.01 + -149143276547656984948124912 = -149143276547656984948124912.0100000000 - -0.01 + 0.1322135476547459213732911312 = 0.1222135476 - -0.01 + -0.123912932193769965476541321 = -0.1339129321 +-0.01 + 15 = 14.9900000000 +-0.01 + -15 = -15.0100000000 +-0.01 + 1 = 0.9900000000 +-0.01 + -9 = -9.0100000000 +-0.01 + 14.14 = 14.1300000000 +-0.01 + -16.60 = -16.6100000000 +-0.01 + 0.15 = 0.1400000000 +-0.01 + -0.01 = -0.0200000000 +-0.01 + 0 = -0.0100000000 +-0.01 + 0.00 = -0.0100000000 +-0.01 + -0 = -0.0100000000 +-0.01 + -0.00 = -0.0100000000 +-0.01 + 15151324141414.412312232141241 = 15151324141414.4023122321 +-0.01 + -132132245132134.1515123765412 = -132132245132134.1615123765 +-0.01 + 141241241241241248267654747412 = 141241241241241248267654747411.9900000000 +-0.01 + -149143276547656984948124912 = -149143276547656984948124912.0100000000 +-0.01 + 0.1322135476547459213732911312 = 0.1222135476 +-0.01 + -0.123912932193769965476541321 = -0.1339129321 diff --git a/ext/bcmath/tests/bcadd_large_numbers.phpt b/ext/bcmath/tests/bcadd_large_numbers.phpt index b2aecd278b620..9603fb81e6253 100644 --- a/ext/bcmath/tests/bcadd_large_numbers.phpt +++ b/ext/bcmath/tests/bcadd_large_numbers.phpt @@ -6,8 +6,9 @@ bcmath bcmath.scale=0 --FILE-- --EXPECT-- diff --git a/ext/bcmath/tests/bcadd_zero.phpt b/ext/bcmath/tests/bcadd_zero.phpt index c35d1c055aa3b..df90a59ffa847 100644 --- a/ext/bcmath/tests/bcadd_zero.phpt +++ b/ext/bcmath/tests/bcadd_zero.phpt @@ -6,9 +6,10 @@ bcmath bcmath.scale=0 --FILE-- --EXPECT-- Number "0" (scale 0) - 0 + 0 = 0 - 0 + 0.00 = 0 - 0 + -0 = 0 - 0 + -0.00 = 0 - 0 + 15 = 15 - 0 + -15 = -15 - 0 + 1 = 1 - 0 + -9 = -9 - 0 + 14.14 = 14 - 0 + -16.60 = -16 - 0 + 0.15 = 0 - 0 + -0.01 = 0 - 0 + 15151324141414.412312232141241 = 15151324141414 - 0 + -132132245132134.1515123765412 = -132132245132134 - 0 + 141241241241241248267654747412 = 141241241241241248267654747412 - 0 + -149143276547656984948124912 = -149143276547656984948124912 - 0 + 0.1322135476547459213732911312 = 0 - 0 + -0.123912932193769965476541321 = 0 +0 + 0 = 0 +0 + 0.00 = 0 +0 + -0 = 0 +0 + -0.00 = 0 +0 + 15 = 15 +0 + -15 = -15 +0 + 1 = 1 +0 + -9 = -9 +0 + 14.14 = 14 +0 + -16.60 = -16 +0 + 0.15 = 0 +0 + -0.01 = 0 +0 + 15151324141414.412312232141241 = 15151324141414 +0 + -132132245132134.1515123765412 = -132132245132134 +0 + 141241241241241248267654747412 = 141241241241241248267654747412 +0 + -149143276547656984948124912 = -149143276547656984948124912 +0 + 0.1322135476547459213732911312 = 0 +0 + -0.123912932193769965476541321 = 0 Number "0.00" (scale 0) - 0.00 + 0 = 0 - 0.00 + 0.00 = 0 - 0.00 + -0 = 0 - 0.00 + -0.00 = 0 - 0.00 + 15 = 15 - 0.00 + -15 = -15 - 0.00 + 1 = 1 - 0.00 + -9 = -9 - 0.00 + 14.14 = 14 - 0.00 + -16.60 = -16 - 0.00 + 0.15 = 0 - 0.00 + -0.01 = 0 - 0.00 + 15151324141414.412312232141241 = 15151324141414 - 0.00 + -132132245132134.1515123765412 = -132132245132134 - 0.00 + 141241241241241248267654747412 = 141241241241241248267654747412 - 0.00 + -149143276547656984948124912 = -149143276547656984948124912 - 0.00 + 0.1322135476547459213732911312 = 0 - 0.00 + -0.123912932193769965476541321 = 0 +0.00 + 0 = 0 +0.00 + 0.00 = 0 +0.00 + -0 = 0 +0.00 + -0.00 = 0 +0.00 + 15 = 15 +0.00 + -15 = -15 +0.00 + 1 = 1 +0.00 + -9 = -9 +0.00 + 14.14 = 14 +0.00 + -16.60 = -16 +0.00 + 0.15 = 0 +0.00 + -0.01 = 0 +0.00 + 15151324141414.412312232141241 = 15151324141414 +0.00 + -132132245132134.1515123765412 = -132132245132134 +0.00 + 141241241241241248267654747412 = 141241241241241248267654747412 +0.00 + -149143276547656984948124912 = -149143276547656984948124912 +0.00 + 0.1322135476547459213732911312 = 0 +0.00 + -0.123912932193769965476541321 = 0 Number "-0" (scale 0) - -0 + 0 = 0 - -0 + 0.00 = 0 - -0 + -0 = 0 - -0 + -0.00 = 0 - -0 + 15 = 15 - -0 + -15 = -15 - -0 + 1 = 1 - -0 + -9 = -9 - -0 + 14.14 = 14 - -0 + -16.60 = -16 - -0 + 0.15 = 0 - -0 + -0.01 = 0 - -0 + 15151324141414.412312232141241 = 15151324141414 - -0 + -132132245132134.1515123765412 = -132132245132134 - -0 + 141241241241241248267654747412 = 141241241241241248267654747412 - -0 + -149143276547656984948124912 = -149143276547656984948124912 - -0 + 0.1322135476547459213732911312 = 0 - -0 + -0.123912932193769965476541321 = 0 +-0 + 0 = 0 +-0 + 0.00 = 0 +-0 + -0 = 0 +-0 + -0.00 = 0 +-0 + 15 = 15 +-0 + -15 = -15 +-0 + 1 = 1 +-0 + -9 = -9 +-0 + 14.14 = 14 +-0 + -16.60 = -16 +-0 + 0.15 = 0 +-0 + -0.01 = 0 +-0 + 15151324141414.412312232141241 = 15151324141414 +-0 + -132132245132134.1515123765412 = -132132245132134 +-0 + 141241241241241248267654747412 = 141241241241241248267654747412 +-0 + -149143276547656984948124912 = -149143276547656984948124912 +-0 + 0.1322135476547459213732911312 = 0 +-0 + -0.123912932193769965476541321 = 0 Number "-0.00" (scale 0) - -0.00 + 0 = 0 - -0.00 + 0.00 = 0 - -0.00 + -0 = 0 - -0.00 + -0.00 = 0 - -0.00 + 15 = 15 - -0.00 + -15 = -15 - -0.00 + 1 = 1 - -0.00 + -9 = -9 - -0.00 + 14.14 = 14 - -0.00 + -16.60 = -16 - -0.00 + 0.15 = 0 - -0.00 + -0.01 = 0 - -0.00 + 15151324141414.412312232141241 = 15151324141414 - -0.00 + -132132245132134.1515123765412 = -132132245132134 - -0.00 + 141241241241241248267654747412 = 141241241241241248267654747412 - -0.00 + -149143276547656984948124912 = -149143276547656984948124912 - -0.00 + 0.1322135476547459213732911312 = 0 - -0.00 + -0.123912932193769965476541321 = 0 +-0.00 + 0 = 0 +-0.00 + 0.00 = 0 +-0.00 + -0 = 0 +-0.00 + -0.00 = 0 +-0.00 + 15 = 15 +-0.00 + -15 = -15 +-0.00 + 1 = 1 +-0.00 + -9 = -9 +-0.00 + 14.14 = 14 +-0.00 + -16.60 = -16 +-0.00 + 0.15 = 0 +-0.00 + -0.01 = 0 +-0.00 + 15151324141414.412312232141241 = 15151324141414 +-0.00 + -132132245132134.1515123765412 = -132132245132134 +-0.00 + 141241241241241248267654747412 = 141241241241241248267654747412 +-0.00 + -149143276547656984948124912 = -149143276547656984948124912 +-0.00 + 0.1322135476547459213732911312 = 0 +-0.00 + -0.123912932193769965476541321 = 0 Number "0" (scale 10) - 0 + 0 = 0.0000000000 - 0 + 0.00 = 0.0000000000 - 0 + -0 = 0.0000000000 - 0 + -0.00 = 0.0000000000 - 0 + 15 = 15.0000000000 - 0 + -15 = -15.0000000000 - 0 + 1 = 1.0000000000 - 0 + -9 = -9.0000000000 - 0 + 14.14 = 14.1400000000 - 0 + -16.60 = -16.6000000000 - 0 + 0.15 = 0.1500000000 - 0 + -0.01 = -0.0100000000 - 0 + 15151324141414.412312232141241 = 15151324141414.4123122321 - 0 + -132132245132134.1515123765412 = -132132245132134.1515123765 - 0 + 141241241241241248267654747412 = 141241241241241248267654747412.0000000000 - 0 + -149143276547656984948124912 = -149143276547656984948124912.0000000000 - 0 + 0.1322135476547459213732911312 = 0.1322135476 - 0 + -0.123912932193769965476541321 = -0.1239129321 +0 + 0 = 0.0000000000 +0 + 0.00 = 0.0000000000 +0 + -0 = 0.0000000000 +0 + -0.00 = 0.0000000000 +0 + 15 = 15.0000000000 +0 + -15 = -15.0000000000 +0 + 1 = 1.0000000000 +0 + -9 = -9.0000000000 +0 + 14.14 = 14.1400000000 +0 + -16.60 = -16.6000000000 +0 + 0.15 = 0.1500000000 +0 + -0.01 = -0.0100000000 +0 + 15151324141414.412312232141241 = 15151324141414.4123122321 +0 + -132132245132134.1515123765412 = -132132245132134.1515123765 +0 + 141241241241241248267654747412 = 141241241241241248267654747412.0000000000 +0 + -149143276547656984948124912 = -149143276547656984948124912.0000000000 +0 + 0.1322135476547459213732911312 = 0.1322135476 +0 + -0.123912932193769965476541321 = -0.1239129321 Number "0.00" (scale 10) - 0.00 + 0 = 0.0000000000 - 0.00 + 0.00 = 0.0000000000 - 0.00 + -0 = 0.0000000000 - 0.00 + -0.00 = 0.0000000000 - 0.00 + 15 = 15.0000000000 - 0.00 + -15 = -15.0000000000 - 0.00 + 1 = 1.0000000000 - 0.00 + -9 = -9.0000000000 - 0.00 + 14.14 = 14.1400000000 - 0.00 + -16.60 = -16.6000000000 - 0.00 + 0.15 = 0.1500000000 - 0.00 + -0.01 = -0.0100000000 - 0.00 + 15151324141414.412312232141241 = 15151324141414.4123122321 - 0.00 + -132132245132134.1515123765412 = -132132245132134.1515123765 - 0.00 + 141241241241241248267654747412 = 141241241241241248267654747412.0000000000 - 0.00 + -149143276547656984948124912 = -149143276547656984948124912.0000000000 - 0.00 + 0.1322135476547459213732911312 = 0.1322135476 - 0.00 + -0.123912932193769965476541321 = -0.1239129321 +0.00 + 0 = 0.0000000000 +0.00 + 0.00 = 0.0000000000 +0.00 + -0 = 0.0000000000 +0.00 + -0.00 = 0.0000000000 +0.00 + 15 = 15.0000000000 +0.00 + -15 = -15.0000000000 +0.00 + 1 = 1.0000000000 +0.00 + -9 = -9.0000000000 +0.00 + 14.14 = 14.1400000000 +0.00 + -16.60 = -16.6000000000 +0.00 + 0.15 = 0.1500000000 +0.00 + -0.01 = -0.0100000000 +0.00 + 15151324141414.412312232141241 = 15151324141414.4123122321 +0.00 + -132132245132134.1515123765412 = -132132245132134.1515123765 +0.00 + 141241241241241248267654747412 = 141241241241241248267654747412.0000000000 +0.00 + -149143276547656984948124912 = -149143276547656984948124912.0000000000 +0.00 + 0.1322135476547459213732911312 = 0.1322135476 +0.00 + -0.123912932193769965476541321 = -0.1239129321 Number "-0" (scale 10) - -0 + 0 = 0.0000000000 - -0 + 0.00 = 0.0000000000 - -0 + -0 = 0.0000000000 - -0 + -0.00 = 0.0000000000 - -0 + 15 = 15.0000000000 - -0 + -15 = -15.0000000000 - -0 + 1 = 1.0000000000 - -0 + -9 = -9.0000000000 - -0 + 14.14 = 14.1400000000 - -0 + -16.60 = -16.6000000000 - -0 + 0.15 = 0.1500000000 - -0 + -0.01 = -0.0100000000 - -0 + 15151324141414.412312232141241 = 15151324141414.4123122321 - -0 + -132132245132134.1515123765412 = -132132245132134.1515123765 - -0 + 141241241241241248267654747412 = 141241241241241248267654747412.0000000000 - -0 + -149143276547656984948124912 = -149143276547656984948124912.0000000000 - -0 + 0.1322135476547459213732911312 = 0.1322135476 - -0 + -0.123912932193769965476541321 = -0.1239129321 +-0 + 0 = 0.0000000000 +-0 + 0.00 = 0.0000000000 +-0 + -0 = 0.0000000000 +-0 + -0.00 = 0.0000000000 +-0 + 15 = 15.0000000000 +-0 + -15 = -15.0000000000 +-0 + 1 = 1.0000000000 +-0 + -9 = -9.0000000000 +-0 + 14.14 = 14.1400000000 +-0 + -16.60 = -16.6000000000 +-0 + 0.15 = 0.1500000000 +-0 + -0.01 = -0.0100000000 +-0 + 15151324141414.412312232141241 = 15151324141414.4123122321 +-0 + -132132245132134.1515123765412 = -132132245132134.1515123765 +-0 + 141241241241241248267654747412 = 141241241241241248267654747412.0000000000 +-0 + -149143276547656984948124912 = -149143276547656984948124912.0000000000 +-0 + 0.1322135476547459213732911312 = 0.1322135476 +-0 + -0.123912932193769965476541321 = -0.1239129321 Number "-0.00" (scale 10) - -0.00 + 0 = 0.0000000000 - -0.00 + 0.00 = 0.0000000000 - -0.00 + -0 = 0.0000000000 - -0.00 + -0.00 = 0.0000000000 - -0.00 + 15 = 15.0000000000 - -0.00 + -15 = -15.0000000000 - -0.00 + 1 = 1.0000000000 - -0.00 + -9 = -9.0000000000 - -0.00 + 14.14 = 14.1400000000 - -0.00 + -16.60 = -16.6000000000 - -0.00 + 0.15 = 0.1500000000 - -0.00 + -0.01 = -0.0100000000 - -0.00 + 15151324141414.412312232141241 = 15151324141414.4123122321 - -0.00 + -132132245132134.1515123765412 = -132132245132134.1515123765 - -0.00 + 141241241241241248267654747412 = 141241241241241248267654747412.0000000000 - -0.00 + -149143276547656984948124912 = -149143276547656984948124912.0000000000 - -0.00 + 0.1322135476547459213732911312 = 0.1322135476 - -0.00 + -0.123912932193769965476541321 = -0.1239129321 +-0.00 + 0 = 0.0000000000 +-0.00 + 0.00 = 0.0000000000 +-0.00 + -0 = 0.0000000000 +-0.00 + -0.00 = 0.0000000000 +-0.00 + 15 = 15.0000000000 +-0.00 + -15 = -15.0000000000 +-0.00 + 1 = 1.0000000000 +-0.00 + -9 = -9.0000000000 +-0.00 + 14.14 = 14.1400000000 +-0.00 + -16.60 = -16.6000000000 +-0.00 + 0.15 = 0.1500000000 +-0.00 + -0.01 = -0.0100000000 +-0.00 + 15151324141414.412312232141241 = 15151324141414.4123122321 +-0.00 + -132132245132134.1515123765412 = -132132245132134.1515123765 +-0.00 + 141241241241241248267654747412 = 141241241241241248267654747412.0000000000 +-0.00 + -149143276547656984948124912 = -149143276547656984948124912.0000000000 +-0.00 + 0.1322135476547459213732911312 = 0.1322135476 +-0.00 + -0.123912932193769965476541321 = -0.1239129321 diff --git a/ext/bcmath/tests/bcdiv.phpt b/ext/bcmath/tests/bcdiv.phpt index afd4ea63c28f0..2adf7a5f0e659 100644 --- a/ext/bcmath/tests/bcdiv.phpt +++ b/ext/bcmath/tests/bcdiv.phpt @@ -6,6 +6,7 @@ bcmath bcmath.scale=0 --FILE-- --EXPECT-- diff --git a/ext/bcmath/tests/bcdiv_large_numbers.phpt b/ext/bcmath/tests/bcdiv_large_numbers.phpt index be8b63983d4c6..bc2bb931c0cc5 100644 --- a/ext/bcmath/tests/bcdiv_large_numbers.phpt +++ b/ext/bcmath/tests/bcdiv_large_numbers.phpt @@ -6,6 +6,7 @@ bcmath bcmath.scale=0 --FILE-- --EXPECT-- diff --git a/ext/bcmath/tests/bcdiv_zero.phpt b/ext/bcmath/tests/bcdiv_zero.phpt index e8685c7a63713..e7a88a6ce5008 100644 --- a/ext/bcmath/tests/bcdiv_zero.phpt +++ b/ext/bcmath/tests/bcdiv_zero.phpt @@ -6,6 +6,7 @@ bcmath bcmath.scale=0 --FILE-- --EXPECT-- Number "0" (scale 0) - 0 / 15 = 0 - 0 / -15 = 0 - 0 / 1 = 0 - 0 / -9 = 0 - 0 / 14.14 = 0 - 0 / -16.60 = 0 - 0 / 0.15 = 0 - 0 / -0.01 = 0 - 0 / 15151324141414.412312232141241 = 0 - 0 / -132132245132134.1515123765412 = 0 - 0 / 141241241241241248267654747412 = 0 - 0 / -149143276547656984948124912 = 0 - 0 / 0.1322135476547459213732911312 = 0 - 0 / -0.123912932193769965476541321 = 0 +0 / 15 = 0 +0 / -15 = 0 +0 / 1 = 0 +0 / -9 = 0 +0 / 14.14 = 0 +0 / -16.60 = 0 +0 / 0.15 = 0 +0 / -0.01 = 0 +0 / 15151324141414.412312232141241 = 0 +0 / -132132245132134.1515123765412 = 0 +0 / 141241241241241248267654747412 = 0 +0 / -149143276547656984948124912 = 0 +0 / 0.1322135476547459213732911312 = 0 +0 / -0.123912932193769965476541321 = 0 Number "0.00" (scale 0) - 0.00 / 15 = 0 - 0.00 / -15 = 0 - 0.00 / 1 = 0 - 0.00 / -9 = 0 - 0.00 / 14.14 = 0 - 0.00 / -16.60 = 0 - 0.00 / 0.15 = 0 - 0.00 / -0.01 = 0 - 0.00 / 15151324141414.412312232141241 = 0 - 0.00 / -132132245132134.1515123765412 = 0 - 0.00 / 141241241241241248267654747412 = 0 - 0.00 / -149143276547656984948124912 = 0 - 0.00 / 0.1322135476547459213732911312 = 0 - 0.00 / -0.123912932193769965476541321 = 0 +0.00 / 15 = 0 +0.00 / -15 = 0 +0.00 / 1 = 0 +0.00 / -9 = 0 +0.00 / 14.14 = 0 +0.00 / -16.60 = 0 +0.00 / 0.15 = 0 +0.00 / -0.01 = 0 +0.00 / 15151324141414.412312232141241 = 0 +0.00 / -132132245132134.1515123765412 = 0 +0.00 / 141241241241241248267654747412 = 0 +0.00 / -149143276547656984948124912 = 0 +0.00 / 0.1322135476547459213732911312 = 0 +0.00 / -0.123912932193769965476541321 = 0 Number "-0" (scale 0) - -0 / 15 = 0 - -0 / -15 = 0 - -0 / 1 = 0 - -0 / -9 = 0 - -0 / 14.14 = 0 - -0 / -16.60 = 0 - -0 / 0.15 = 0 - -0 / -0.01 = 0 - -0 / 15151324141414.412312232141241 = 0 - -0 / -132132245132134.1515123765412 = 0 - -0 / 141241241241241248267654747412 = 0 - -0 / -149143276547656984948124912 = 0 - -0 / 0.1322135476547459213732911312 = 0 - -0 / -0.123912932193769965476541321 = 0 +-0 / 15 = 0 +-0 / -15 = 0 +-0 / 1 = 0 +-0 / -9 = 0 +-0 / 14.14 = 0 +-0 / -16.60 = 0 +-0 / 0.15 = 0 +-0 / -0.01 = 0 +-0 / 15151324141414.412312232141241 = 0 +-0 / -132132245132134.1515123765412 = 0 +-0 / 141241241241241248267654747412 = 0 +-0 / -149143276547656984948124912 = 0 +-0 / 0.1322135476547459213732911312 = 0 +-0 / -0.123912932193769965476541321 = 0 Number "-0.00" (scale 0) - -0.00 / 15 = 0 - -0.00 / -15 = 0 - -0.00 / 1 = 0 - -0.00 / -9 = 0 - -0.00 / 14.14 = 0 - -0.00 / -16.60 = 0 - -0.00 / 0.15 = 0 - -0.00 / -0.01 = 0 - -0.00 / 15151324141414.412312232141241 = 0 - -0.00 / -132132245132134.1515123765412 = 0 - -0.00 / 141241241241241248267654747412 = 0 - -0.00 / -149143276547656984948124912 = 0 - -0.00 / 0.1322135476547459213732911312 = 0 - -0.00 / -0.123912932193769965476541321 = 0 +-0.00 / 15 = 0 +-0.00 / -15 = 0 +-0.00 / 1 = 0 +-0.00 / -9 = 0 +-0.00 / 14.14 = 0 +-0.00 / -16.60 = 0 +-0.00 / 0.15 = 0 +-0.00 / -0.01 = 0 +-0.00 / 15151324141414.412312232141241 = 0 +-0.00 / -132132245132134.1515123765412 = 0 +-0.00 / 141241241241241248267654747412 = 0 +-0.00 / -149143276547656984948124912 = 0 +-0.00 / 0.1322135476547459213732911312 = 0 +-0.00 / -0.123912932193769965476541321 = 0 Number "0" (scale 10) - 0 / 15 = 0.0000000000 - 0 / -15 = 0.0000000000 - 0 / 1 = 0.0000000000 - 0 / -9 = 0.0000000000 - 0 / 14.14 = 0.0000000000 - 0 / -16.60 = 0.0000000000 - 0 / 0.15 = 0.0000000000 - 0 / -0.01 = 0.0000000000 - 0 / 15151324141414.412312232141241 = 0.0000000000 - 0 / -132132245132134.1515123765412 = 0.0000000000 - 0 / 141241241241241248267654747412 = 0.0000000000 - 0 / -149143276547656984948124912 = 0.0000000000 - 0 / 0.1322135476547459213732911312 = 0.0000000000 - 0 / -0.123912932193769965476541321 = 0.0000000000 +0 / 15 = 0.0000000000 +0 / -15 = 0.0000000000 +0 / 1 = 0.0000000000 +0 / -9 = 0.0000000000 +0 / 14.14 = 0.0000000000 +0 / -16.60 = 0.0000000000 +0 / 0.15 = 0.0000000000 +0 / -0.01 = 0.0000000000 +0 / 15151324141414.412312232141241 = 0.0000000000 +0 / -132132245132134.1515123765412 = 0.0000000000 +0 / 141241241241241248267654747412 = 0.0000000000 +0 / -149143276547656984948124912 = 0.0000000000 +0 / 0.1322135476547459213732911312 = 0.0000000000 +0 / -0.123912932193769965476541321 = 0.0000000000 Number "0.00" (scale 10) - 0.00 / 15 = 0.0000000000 - 0.00 / -15 = 0.0000000000 - 0.00 / 1 = 0.0000000000 - 0.00 / -9 = 0.0000000000 - 0.00 / 14.14 = 0.0000000000 - 0.00 / -16.60 = 0.0000000000 - 0.00 / 0.15 = 0.0000000000 - 0.00 / -0.01 = 0.0000000000 - 0.00 / 15151324141414.412312232141241 = 0.0000000000 - 0.00 / -132132245132134.1515123765412 = 0.0000000000 - 0.00 / 141241241241241248267654747412 = 0.0000000000 - 0.00 / -149143276547656984948124912 = 0.0000000000 - 0.00 / 0.1322135476547459213732911312 = 0.0000000000 - 0.00 / -0.123912932193769965476541321 = 0.0000000000 +0.00 / 15 = 0.0000000000 +0.00 / -15 = 0.0000000000 +0.00 / 1 = 0.0000000000 +0.00 / -9 = 0.0000000000 +0.00 / 14.14 = 0.0000000000 +0.00 / -16.60 = 0.0000000000 +0.00 / 0.15 = 0.0000000000 +0.00 / -0.01 = 0.0000000000 +0.00 / 15151324141414.412312232141241 = 0.0000000000 +0.00 / -132132245132134.1515123765412 = 0.0000000000 +0.00 / 141241241241241248267654747412 = 0.0000000000 +0.00 / -149143276547656984948124912 = 0.0000000000 +0.00 / 0.1322135476547459213732911312 = 0.0000000000 +0.00 / -0.123912932193769965476541321 = 0.0000000000 Number "-0" (scale 10) - -0 / 15 = 0.0000000000 - -0 / -15 = 0.0000000000 - -0 / 1 = 0.0000000000 - -0 / -9 = 0.0000000000 - -0 / 14.14 = 0.0000000000 - -0 / -16.60 = 0.0000000000 - -0 / 0.15 = 0.0000000000 - -0 / -0.01 = 0.0000000000 - -0 / 15151324141414.412312232141241 = 0.0000000000 - -0 / -132132245132134.1515123765412 = 0.0000000000 - -0 / 141241241241241248267654747412 = 0.0000000000 - -0 / -149143276547656984948124912 = 0.0000000000 - -0 / 0.1322135476547459213732911312 = 0.0000000000 - -0 / -0.123912932193769965476541321 = 0.0000000000 +-0 / 15 = 0.0000000000 +-0 / -15 = 0.0000000000 +-0 / 1 = 0.0000000000 +-0 / -9 = 0.0000000000 +-0 / 14.14 = 0.0000000000 +-0 / -16.60 = 0.0000000000 +-0 / 0.15 = 0.0000000000 +-0 / -0.01 = 0.0000000000 +-0 / 15151324141414.412312232141241 = 0.0000000000 +-0 / -132132245132134.1515123765412 = 0.0000000000 +-0 / 141241241241241248267654747412 = 0.0000000000 +-0 / -149143276547656984948124912 = 0.0000000000 +-0 / 0.1322135476547459213732911312 = 0.0000000000 +-0 / -0.123912932193769965476541321 = 0.0000000000 Number "-0.00" (scale 10) - -0.00 / 15 = 0.0000000000 - -0.00 / -15 = 0.0000000000 - -0.00 / 1 = 0.0000000000 - -0.00 / -9 = 0.0000000000 - -0.00 / 14.14 = 0.0000000000 - -0.00 / -16.60 = 0.0000000000 - -0.00 / 0.15 = 0.0000000000 - -0.00 / -0.01 = 0.0000000000 - -0.00 / 15151324141414.412312232141241 = 0.0000000000 - -0.00 / -132132245132134.1515123765412 = 0.0000000000 - -0.00 / 141241241241241248267654747412 = 0.0000000000 - -0.00 / -149143276547656984948124912 = 0.0000000000 - -0.00 / 0.1322135476547459213732911312 = 0.0000000000 - -0.00 / -0.123912932193769965476541321 = 0.0000000000 +-0.00 / 15 = 0.0000000000 +-0.00 / -15 = 0.0000000000 +-0.00 / 1 = 0.0000000000 +-0.00 / -9 = 0.0000000000 +-0.00 / 14.14 = 0.0000000000 +-0.00 / -16.60 = 0.0000000000 +-0.00 / 0.15 = 0.0000000000 +-0.00 / -0.01 = 0.0000000000 +-0.00 / 15151324141414.412312232141241 = 0.0000000000 +-0.00 / -132132245132134.1515123765412 = 0.0000000000 +-0.00 / 141241241241241248267654747412 = 0.0000000000 +-0.00 / -149143276547656984948124912 = 0.0000000000 +-0.00 / 0.1322135476547459213732911312 = 0.0000000000 +-0.00 / -0.123912932193769965476541321 = 0.0000000000 \ No newline at end of file diff --git a/ext/bcmath/tests/bcmod.phpt b/ext/bcmath/tests/bcmod.phpt index 9c6ac04c3eaf5..4ee6b4910f069 100644 --- a/ext/bcmath/tests/bcmod.phpt +++ b/ext/bcmath/tests/bcmod.phpt @@ -6,6 +6,7 @@ bcmath bcmath.scale=0 --FILE-- --EXPECT-- Number "15" (scale 0) - 15 mod 15 = 0 - 15 mod -15 = 0 - 15 mod 1 = 0 - 15 mod -9 = 6 - 15 mod 14.14 = 0 - 15 mod -16.60 = 15 - 15 mod 0.15 = 0 - 15 mod -0.01 = 0 - 15 mod 15151324141414.412312232141241 = 15 - 15 mod -132132245132134.1515123765412 = 15 - 15 mod 141241241241241248267654747412 = 15 - 15 mod -149143276547656984948124912 = 15 - 15 mod 0.1322135476547459213732911312 = 0 - 15 mod -0.123912932193769965476541321 = 0 +15 mod 15 = 0 +15 mod -15 = 0 +15 mod 1 = 0 +15 mod -9 = 6 +15 mod 14.14 = 0 +15 mod -16.60 = 15 +15 mod 0.15 = 0 +15 mod -0.01 = 0 +15 mod 15151324141414.412312232141241 = 15 +15 mod -132132245132134.1515123765412 = 15 +15 mod 141241241241241248267654747412 = 15 +15 mod -149143276547656984948124912 = 15 +15 mod 0.1322135476547459213732911312 = 0 +15 mod -0.123912932193769965476541321 = 0 Number "-15" (scale 0) - -15 mod 15 = 0 - -15 mod -15 = 0 - -15 mod 1 = 0 - -15 mod -9 = -6 - -15 mod 14.14 = 0 - -15 mod -16.60 = -15 - -15 mod 0.15 = 0 - -15 mod -0.01 = 0 - -15 mod 15151324141414.412312232141241 = -15 - -15 mod -132132245132134.1515123765412 = -15 - -15 mod 141241241241241248267654747412 = -15 - -15 mod -149143276547656984948124912 = -15 - -15 mod 0.1322135476547459213732911312 = 0 - -15 mod -0.123912932193769965476541321 = 0 +-15 mod 15 = 0 +-15 mod -15 = 0 +-15 mod 1 = 0 +-15 mod -9 = -6 +-15 mod 14.14 = 0 +-15 mod -16.60 = -15 +-15 mod 0.15 = 0 +-15 mod -0.01 = 0 +-15 mod 15151324141414.412312232141241 = -15 +-15 mod -132132245132134.1515123765412 = -15 +-15 mod 141241241241241248267654747412 = -15 +-15 mod -149143276547656984948124912 = -15 +-15 mod 0.1322135476547459213732911312 = 0 +-15 mod -0.123912932193769965476541321 = 0 Number "1" (scale 0) - 1 mod 15 = 1 - 1 mod -15 = 1 - 1 mod 1 = 0 - 1 mod -9 = 1 - 1 mod 14.14 = 1 - 1 mod -16.60 = 1 - 1 mod 0.15 = 0 - 1 mod -0.01 = 0 - 1 mod 15151324141414.412312232141241 = 1 - 1 mod -132132245132134.1515123765412 = 1 - 1 mod 141241241241241248267654747412 = 1 - 1 mod -149143276547656984948124912 = 1 - 1 mod 0.1322135476547459213732911312 = 0 - 1 mod -0.123912932193769965476541321 = 0 +1 mod 15 = 1 +1 mod -15 = 1 +1 mod 1 = 0 +1 mod -9 = 1 +1 mod 14.14 = 1 +1 mod -16.60 = 1 +1 mod 0.15 = 0 +1 mod -0.01 = 0 +1 mod 15151324141414.412312232141241 = 1 +1 mod -132132245132134.1515123765412 = 1 +1 mod 141241241241241248267654747412 = 1 +1 mod -149143276547656984948124912 = 1 +1 mod 0.1322135476547459213732911312 = 0 +1 mod -0.123912932193769965476541321 = 0 Number "-9" (scale 0) - -9 mod 15 = -9 - -9 mod -15 = -9 - -9 mod 1 = 0 - -9 mod -9 = 0 - -9 mod 14.14 = -9 - -9 mod -16.60 = -9 - -9 mod 0.15 = 0 - -9 mod -0.01 = 0 - -9 mod 15151324141414.412312232141241 = -9 - -9 mod -132132245132134.1515123765412 = -9 - -9 mod 141241241241241248267654747412 = -9 - -9 mod -149143276547656984948124912 = -9 - -9 mod 0.1322135476547459213732911312 = 0 - -9 mod -0.123912932193769965476541321 = 0 +-9 mod 15 = -9 +-9 mod -15 = -9 +-9 mod 1 = 0 +-9 mod -9 = 0 +-9 mod 14.14 = -9 +-9 mod -16.60 = -9 +-9 mod 0.15 = 0 +-9 mod -0.01 = 0 +-9 mod 15151324141414.412312232141241 = -9 +-9 mod -132132245132134.1515123765412 = -9 +-9 mod 141241241241241248267654747412 = -9 +-9 mod -149143276547656984948124912 = -9 +-9 mod 0.1322135476547459213732911312 = 0 +-9 mod -0.123912932193769965476541321 = 0 Number "14.14" (scale 0) - 14.14 mod 15 = 14 - 14.14 mod -15 = 14 - 14.14 mod 1 = 0 - 14.14 mod -9 = 5 - 14.14 mod 14.14 = 0 - 14.14 mod -16.60 = 14 - 14.14 mod 0.15 = 0 - 14.14 mod -0.01 = 0 - 14.14 mod 15151324141414.412312232141241 = 14 - 14.14 mod -132132245132134.1515123765412 = 14 - 14.14 mod 141241241241241248267654747412 = 14 - 14.14 mod -149143276547656984948124912 = 14 - 14.14 mod 0.1322135476547459213732911312 = 0 - 14.14 mod -0.123912932193769965476541321 = 0 +14.14 mod 15 = 14 +14.14 mod -15 = 14 +14.14 mod 1 = 0 +14.14 mod -9 = 5 +14.14 mod 14.14 = 0 +14.14 mod -16.60 = 14 +14.14 mod 0.15 = 0 +14.14 mod -0.01 = 0 +14.14 mod 15151324141414.412312232141241 = 14 +14.14 mod -132132245132134.1515123765412 = 14 +14.14 mod 141241241241241248267654747412 = 14 +14.14 mod -149143276547656984948124912 = 14 +14.14 mod 0.1322135476547459213732911312 = 0 +14.14 mod -0.123912932193769965476541321 = 0 Number "-16.60" (scale 0) -16.60 mod 15 = -1 @@ -132,116 +119,116 @@ Number "-16.60" (scale 0) -16.60 mod -0.123912932193769965476541321 = 0 Number "0.15" (scale 0) - 0.15 mod 15 = 0 - 0.15 mod -15 = 0 - 0.15 mod 1 = 0 - 0.15 mod -9 = 0 - 0.15 mod 14.14 = 0 - 0.15 mod -16.60 = 0 - 0.15 mod 0.15 = 0 - 0.15 mod -0.01 = 0 - 0.15 mod 15151324141414.412312232141241 = 0 - 0.15 mod -132132245132134.1515123765412 = 0 - 0.15 mod 141241241241241248267654747412 = 0 - 0.15 mod -149143276547656984948124912 = 0 - 0.15 mod 0.1322135476547459213732911312 = 0 - 0.15 mod -0.123912932193769965476541321 = 0 +0.15 mod 15 = 0 +0.15 mod -15 = 0 +0.15 mod 1 = 0 +0.15 mod -9 = 0 +0.15 mod 14.14 = 0 +0.15 mod -16.60 = 0 +0.15 mod 0.15 = 0 +0.15 mod -0.01 = 0 +0.15 mod 15151324141414.412312232141241 = 0 +0.15 mod -132132245132134.1515123765412 = 0 +0.15 mod 141241241241241248267654747412 = 0 +0.15 mod -149143276547656984948124912 = 0 +0.15 mod 0.1322135476547459213732911312 = 0 +0.15 mod -0.123912932193769965476541321 = 0 Number "-0.01" (scale 0) - -0.01 mod 15 = 0 - -0.01 mod -15 = 0 - -0.01 mod 1 = 0 - -0.01 mod -9 = 0 - -0.01 mod 14.14 = 0 - -0.01 mod -16.60 = 0 - -0.01 mod 0.15 = 0 - -0.01 mod -0.01 = 0 - -0.01 mod 15151324141414.412312232141241 = 0 - -0.01 mod -132132245132134.1515123765412 = 0 - -0.01 mod 141241241241241248267654747412 = 0 - -0.01 mod -149143276547656984948124912 = 0 - -0.01 mod 0.1322135476547459213732911312 = 0 - -0.01 mod -0.123912932193769965476541321 = 0 +-0.01 mod 15 = 0 +-0.01 mod -15 = 0 +-0.01 mod 1 = 0 +-0.01 mod -9 = 0 +-0.01 mod 14.14 = 0 +-0.01 mod -16.60 = 0 +-0.01 mod 0.15 = 0 +-0.01 mod -0.01 = 0 +-0.01 mod 15151324141414.412312232141241 = 0 +-0.01 mod -132132245132134.1515123765412 = 0 +-0.01 mod 141241241241241248267654747412 = 0 +-0.01 mod -149143276547656984948124912 = 0 +-0.01 mod 0.1322135476547459213732911312 = 0 +-0.01 mod -0.123912932193769965476541321 = 0 Number "15" (scale 10) - 15 mod 15 = 0.0000000000 - 15 mod -15 = 0.0000000000 - 15 mod 1 = 0.0000000000 - 15 mod -9 = 6.0000000000 - 15 mod 14.14 = 0.8600000000 - 15 mod -16.60 = 15.0000000000 - 15 mod 0.15 = 0.0000000000 - 15 mod -0.01 = 0.0000000000 - 15 mod 15151324141414.412312232141241 = 15.0000000000 - 15 mod -132132245132134.1515123765412 = 15.0000000000 - 15 mod 141241241241241248267654747412 = 15.0000000000 - 15 mod -149143276547656984948124912 = 15.0000000000 - 15 mod 0.1322135476547459213732911312 = 0.0598691150 - 15 mod -0.123912932193769965476541321 = 0.0065352045 +15 mod 15 = 0.0000000000 +15 mod -15 = 0.0000000000 +15 mod 1 = 0.0000000000 +15 mod -9 = 6.0000000000 +15 mod 14.14 = 0.8600000000 +15 mod -16.60 = 15.0000000000 +15 mod 0.15 = 0.0000000000 +15 mod -0.01 = 0.0000000000 +15 mod 15151324141414.412312232141241 = 15.0000000000 +15 mod -132132245132134.1515123765412 = 15.0000000000 +15 mod 141241241241241248267654747412 = 15.0000000000 +15 mod -149143276547656984948124912 = 15.0000000000 +15 mod 0.1322135476547459213732911312 = 0.0598691150 +15 mod -0.123912932193769965476541321 = 0.0065352045 Number "-15" (scale 10) - -15 mod 15 = 0.0000000000 - -15 mod -15 = 0.0000000000 - -15 mod 1 = 0.0000000000 - -15 mod -9 = -6.0000000000 - -15 mod 14.14 = -0.8600000000 - -15 mod -16.60 = -15.0000000000 - -15 mod 0.15 = 0.0000000000 - -15 mod -0.01 = 0.0000000000 - -15 mod 15151324141414.412312232141241 = -15.0000000000 - -15 mod -132132245132134.1515123765412 = -15.0000000000 - -15 mod 141241241241241248267654747412 = -15.0000000000 - -15 mod -149143276547656984948124912 = -15.0000000000 - -15 mod 0.1322135476547459213732911312 = -0.0598691150 - -15 mod -0.123912932193769965476541321 = -0.0065352045 +-15 mod 15 = 0.0000000000 +-15 mod -15 = 0.0000000000 +-15 mod 1 = 0.0000000000 +-15 mod -9 = -6.0000000000 +-15 mod 14.14 = -0.8600000000 +-15 mod -16.60 = -15.0000000000 +-15 mod 0.15 = 0.0000000000 +-15 mod -0.01 = 0.0000000000 +-15 mod 15151324141414.412312232141241 = -15.0000000000 +-15 mod -132132245132134.1515123765412 = -15.0000000000 +-15 mod 141241241241241248267654747412 = -15.0000000000 +-15 mod -149143276547656984948124912 = -15.0000000000 +-15 mod 0.1322135476547459213732911312 = -0.0598691150 +-15 mod -0.123912932193769965476541321 = -0.0065352045 Number "1" (scale 10) - 1 mod 15 = 1.0000000000 - 1 mod -15 = 1.0000000000 - 1 mod 1 = 0.0000000000 - 1 mod -9 = 1.0000000000 - 1 mod 14.14 = 1.0000000000 - 1 mod -16.60 = 1.0000000000 - 1 mod 0.15 = 0.1000000000 - 1 mod -0.01 = 0.0000000000 - 1 mod 15151324141414.412312232141241 = 1.0000000000 - 1 mod -132132245132134.1515123765412 = 1.0000000000 - 1 mod 141241241241241248267654747412 = 1.0000000000 - 1 mod -149143276547656984948124912 = 1.0000000000 - 1 mod 0.1322135476547459213732911312 = 0.0745051664 - 1 mod -0.123912932193769965476541321 = 0.0086965424 +1 mod 15 = 1.0000000000 +1 mod -15 = 1.0000000000 +1 mod 1 = 0.0000000000 +1 mod -9 = 1.0000000000 +1 mod 14.14 = 1.0000000000 +1 mod -16.60 = 1.0000000000 +1 mod 0.15 = 0.1000000000 +1 mod -0.01 = 0.0000000000 +1 mod 15151324141414.412312232141241 = 1.0000000000 +1 mod -132132245132134.1515123765412 = 1.0000000000 +1 mod 141241241241241248267654747412 = 1.0000000000 +1 mod -149143276547656984948124912 = 1.0000000000 +1 mod 0.1322135476547459213732911312 = 0.0745051664 +1 mod -0.123912932193769965476541321 = 0.0086965424 Number "-9" (scale 10) - -9 mod 15 = -9.0000000000 - -9 mod -15 = -9.0000000000 - -9 mod 1 = 0.0000000000 - -9 mod -9 = 0.0000000000 - -9 mod 14.14 = -9.0000000000 - -9 mod -16.60 = -9.0000000000 - -9 mod 0.15 = 0.0000000000 - -9 mod -0.01 = 0.0000000000 - -9 mod 15151324141414.412312232141241 = -9.0000000000 - -9 mod -132132245132134.1515123765412 = -9.0000000000 - -9 mod 141241241241241248267654747412 = -9.0000000000 - -9 mod -149143276547656984948124912 = -9.0000000000 - -9 mod 0.1322135476547459213732911312 = -0.0094787594 - -9 mod -0.123912932193769965476541321 = -0.0782688820 +-9 mod 15 = -9.0000000000 +-9 mod -15 = -9.0000000000 +-9 mod 1 = 0.0000000000 +-9 mod -9 = 0.0000000000 +-9 mod 14.14 = -9.0000000000 +-9 mod -16.60 = -9.0000000000 +-9 mod 0.15 = 0.0000000000 +-9 mod -0.01 = 0.0000000000 +-9 mod 15151324141414.412312232141241 = -9.0000000000 +-9 mod -132132245132134.1515123765412 = -9.0000000000 +-9 mod 141241241241241248267654747412 = -9.0000000000 +-9 mod -149143276547656984948124912 = -9.0000000000 +-9 mod 0.1322135476547459213732911312 = -0.0094787594 +-9 mod -0.123912932193769965476541321 = -0.0782688820 Number "14.14" (scale 10) - 14.14 mod 15 = 14.1400000000 - 14.14 mod -15 = 14.1400000000 - 14.14 mod 1 = 0.1400000000 - 14.14 mod -9 = 5.1400000000 - 14.14 mod 14.14 = 0.0000000000 - 14.14 mod -16.60 = 14.1400000000 - 14.14 mod 0.15 = 0.0400000000 - 14.14 mod -0.01 = 0.0000000000 - 14.14 mod 15151324141414.412312232141241 = 14.1400000000 - 14.14 mod -132132245132134.1515123765412 = 14.1400000000 - 14.14 mod 141241241241241248267654747412 = 14.1400000000 - 14.14 mod -149143276547656984948124912 = 14.1400000000 - 14.14 mod 0.1322135476547459213732911312 = 0.1253639485 - 14.14 mod -0.123912932193769965476541321 = 0.0139257299 +14.14 mod 15 = 14.1400000000 +14.14 mod -15 = 14.1400000000 +14.14 mod 1 = 0.1400000000 +14.14 mod -9 = 5.1400000000 +14.14 mod 14.14 = 0.0000000000 +14.14 mod -16.60 = 14.1400000000 +14.14 mod 0.15 = 0.0400000000 +14.14 mod -0.01 = 0.0000000000 +14.14 mod 15151324141414.412312232141241 = 14.1400000000 +14.14 mod -132132245132134.1515123765412 = 14.1400000000 +14.14 mod 141241241241241248267654747412 = 14.1400000000 +14.14 mod -149143276547656984948124912 = 14.1400000000 +14.14 mod 0.1322135476547459213732911312 = 0.1253639485 +14.14 mod -0.123912932193769965476541321 = 0.0139257299 Number "-16.60" (scale 10) -16.60 mod 15 = -1.6000000000 @@ -260,33 +247,33 @@ Number "-16.60" (scale 10) -16.60 mod -0.123912932193769965476541321 = -0.1195800182 Number "0.15" (scale 10) - 0.15 mod 15 = 0.1500000000 - 0.15 mod -15 = 0.1500000000 - 0.15 mod 1 = 0.1500000000 - 0.15 mod -9 = 0.1500000000 - 0.15 mod 14.14 = 0.1500000000 - 0.15 mod -16.60 = 0.1500000000 - 0.15 mod 0.15 = 0.0000000000 - 0.15 mod -0.01 = 0.0000000000 - 0.15 mod 15151324141414.412312232141241 = 0.1500000000 - 0.15 mod -132132245132134.1515123765412 = 0.1500000000 - 0.15 mod 141241241241241248267654747412 = 0.1500000000 - 0.15 mod -149143276547656984948124912 = 0.1500000000 - 0.15 mod 0.1322135476547459213732911312 = 0.0177864523 - 0.15 mod -0.123912932193769965476541321 = 0.0260870678 +0.15 mod 15 = 0.1500000000 +0.15 mod -15 = 0.1500000000 +0.15 mod 1 = 0.1500000000 +0.15 mod -9 = 0.1500000000 +0.15 mod 14.14 = 0.1500000000 +0.15 mod -16.60 = 0.1500000000 +0.15 mod 0.15 = 0.0000000000 +0.15 mod -0.01 = 0.0000000000 +0.15 mod 15151324141414.412312232141241 = 0.1500000000 +0.15 mod -132132245132134.1515123765412 = 0.1500000000 +0.15 mod 141241241241241248267654747412 = 0.1500000000 +0.15 mod -149143276547656984948124912 = 0.1500000000 +0.15 mod 0.1322135476547459213732911312 = 0.0177864523 +0.15 mod -0.123912932193769965476541321 = 0.0260870678 Number "-0.01" (scale 10) - -0.01 mod 15 = -0.0100000000 - -0.01 mod -15 = -0.0100000000 - -0.01 mod 1 = -0.0100000000 - -0.01 mod -9 = -0.0100000000 - -0.01 mod 14.14 = -0.0100000000 - -0.01 mod -16.60 = -0.0100000000 - -0.01 mod 0.15 = -0.0100000000 - -0.01 mod -0.01 = 0.0000000000 - -0.01 mod 15151324141414.412312232141241 = -0.0100000000 - -0.01 mod -132132245132134.1515123765412 = -0.0100000000 - -0.01 mod 141241241241241248267654747412 = -0.0100000000 - -0.01 mod -149143276547656984948124912 = -0.0100000000 - -0.01 mod 0.1322135476547459213732911312 = -0.0100000000 - -0.01 mod -0.123912932193769965476541321 = -0.0100000000 +-0.01 mod 15 = -0.0100000000 +-0.01 mod -15 = -0.0100000000 +-0.01 mod 1 = -0.0100000000 +-0.01 mod -9 = -0.0100000000 +-0.01 mod 14.14 = -0.0100000000 +-0.01 mod -16.60 = -0.0100000000 +-0.01 mod 0.15 = -0.0100000000 +-0.01 mod -0.01 = 0.0000000000 +-0.01 mod 15151324141414.412312232141241 = -0.0100000000 +-0.01 mod -132132245132134.1515123765412 = -0.0100000000 +-0.01 mod 141241241241241248267654747412 = -0.0100000000 +-0.01 mod -149143276547656984948124912 = -0.0100000000 +-0.01 mod 0.1322135476547459213732911312 = -0.0100000000 +-0.01 mod -0.123912932193769965476541321 = -0.0100000000 diff --git a/ext/bcmath/tests/bcmod_large_numbers.phpt b/ext/bcmath/tests/bcmod_large_numbers.phpt index 3e467d2d39ead..55bb5dd3be48e 100644 --- a/ext/bcmath/tests/bcmod_large_numbers.phpt +++ b/ext/bcmath/tests/bcmod_large_numbers.phpt @@ -6,6 +6,7 @@ bcmath bcmath.scale=0 --FILE-- --EXPECT-- diff --git a/ext/bcmath/tests/bcmod_zero.phpt b/ext/bcmath/tests/bcmod_zero.phpt index 8e72f05851d8d..e57bf25b5d7dc 100644 --- a/ext/bcmath/tests/bcmod_zero.phpt +++ b/ext/bcmath/tests/bcmod_zero.phpt @@ -6,6 +6,7 @@ bcmath bcmath.scale=0 --FILE-- --EXPECT-- Number "0" (scale 0) - 0 mod 15 = 0 - 0 mod -15 = 0 - 0 mod 1 = 0 - 0 mod -9 = 0 - 0 mod 14.14 = 0 - 0 mod -16.60 = 0 - 0 mod 0.15 = 0 - 0 mod -0.01 = 0 - 0 mod 15151324141414.412312232141241 = 0 - 0 mod -132132245132134.1515123765412 = 0 - 0 mod 141241241241241248267654747412 = 0 - 0 mod -149143276547656984948124912 = 0 - 0 mod 0.1322135476547459213732911312 = 0 - 0 mod -0.123912932193769965476541321 = 0 +0 mod 15 = 0 +0 mod -15 = 0 +0 mod 1 = 0 +0 mod -9 = 0 +0 mod 14.14 = 0 +0 mod -16.60 = 0 +0 mod 0.15 = 0 +0 mod -0.01 = 0 +0 mod 15151324141414.412312232141241 = 0 +0 mod -132132245132134.1515123765412 = 0 +0 mod 141241241241241248267654747412 = 0 +0 mod -149143276547656984948124912 = 0 +0 mod 0.1322135476547459213732911312 = 0 +0 mod -0.123912932193769965476541321 = 0 Number "0.00" (scale 0) - 0.00 mod 15 = 0 - 0.00 mod -15 = 0 - 0.00 mod 1 = 0 - 0.00 mod -9 = 0 - 0.00 mod 14.14 = 0 - 0.00 mod -16.60 = 0 - 0.00 mod 0.15 = 0 - 0.00 mod -0.01 = 0 - 0.00 mod 15151324141414.412312232141241 = 0 - 0.00 mod -132132245132134.1515123765412 = 0 - 0.00 mod 141241241241241248267654747412 = 0 - 0.00 mod -149143276547656984948124912 = 0 - 0.00 mod 0.1322135476547459213732911312 = 0 - 0.00 mod -0.123912932193769965476541321 = 0 +0.00 mod 15 = 0 +0.00 mod -15 = 0 +0.00 mod 1 = 0 +0.00 mod -9 = 0 +0.00 mod 14.14 = 0 +0.00 mod -16.60 = 0 +0.00 mod 0.15 = 0 +0.00 mod -0.01 = 0 +0.00 mod 15151324141414.412312232141241 = 0 +0.00 mod -132132245132134.1515123765412 = 0 +0.00 mod 141241241241241248267654747412 = 0 +0.00 mod -149143276547656984948124912 = 0 +0.00 mod 0.1322135476547459213732911312 = 0 +0.00 mod -0.123912932193769965476541321 = 0 Number "-0" (scale 0) - -0 mod 15 = 0 - -0 mod -15 = 0 - -0 mod 1 = 0 - -0 mod -9 = 0 - -0 mod 14.14 = 0 - -0 mod -16.60 = 0 - -0 mod 0.15 = 0 - -0 mod -0.01 = 0 - -0 mod 15151324141414.412312232141241 = 0 - -0 mod -132132245132134.1515123765412 = 0 - -0 mod 141241241241241248267654747412 = 0 - -0 mod -149143276547656984948124912 = 0 - -0 mod 0.1322135476547459213732911312 = 0 - -0 mod -0.123912932193769965476541321 = 0 +-0 mod 15 = 0 +-0 mod -15 = 0 +-0 mod 1 = 0 +-0 mod -9 = 0 +-0 mod 14.14 = 0 +-0 mod -16.60 = 0 +-0 mod 0.15 = 0 +-0 mod -0.01 = 0 +-0 mod 15151324141414.412312232141241 = 0 +-0 mod -132132245132134.1515123765412 = 0 +-0 mod 141241241241241248267654747412 = 0 +-0 mod -149143276547656984948124912 = 0 +-0 mod 0.1322135476547459213732911312 = 0 +-0 mod -0.123912932193769965476541321 = 0 Number "-0.00" (scale 0) - -0.00 mod 15 = 0 - -0.00 mod -15 = 0 - -0.00 mod 1 = 0 - -0.00 mod -9 = 0 - -0.00 mod 14.14 = 0 - -0.00 mod -16.60 = 0 - -0.00 mod 0.15 = 0 - -0.00 mod -0.01 = 0 - -0.00 mod 15151324141414.412312232141241 = 0 - -0.00 mod -132132245132134.1515123765412 = 0 - -0.00 mod 141241241241241248267654747412 = 0 - -0.00 mod -149143276547656984948124912 = 0 - -0.00 mod 0.1322135476547459213732911312 = 0 - -0.00 mod -0.123912932193769965476541321 = 0 +-0.00 mod 15 = 0 +-0.00 mod -15 = 0 +-0.00 mod 1 = 0 +-0.00 mod -9 = 0 +-0.00 mod 14.14 = 0 +-0.00 mod -16.60 = 0 +-0.00 mod 0.15 = 0 +-0.00 mod -0.01 = 0 +-0.00 mod 15151324141414.412312232141241 = 0 +-0.00 mod -132132245132134.1515123765412 = 0 +-0.00 mod 141241241241241248267654747412 = 0 +-0.00 mod -149143276547656984948124912 = 0 +-0.00 mod 0.1322135476547459213732911312 = 0 +-0.00 mod -0.123912932193769965476541321 = 0 Number "0" (scale 10) - 0 mod 15 = 0.0000000000 - 0 mod -15 = 0.0000000000 - 0 mod 1 = 0.0000000000 - 0 mod -9 = 0.0000000000 - 0 mod 14.14 = 0.0000000000 - 0 mod -16.60 = 0.0000000000 - 0 mod 0.15 = 0.0000000000 - 0 mod -0.01 = 0.0000000000 - 0 mod 15151324141414.412312232141241 = 0.0000000000 - 0 mod -132132245132134.1515123765412 = 0.0000000000 - 0 mod 141241241241241248267654747412 = 0.0000000000 - 0 mod -149143276547656984948124912 = 0.0000000000 - 0 mod 0.1322135476547459213732911312 = 0.0000000000 - 0 mod -0.123912932193769965476541321 = 0.0000000000 +0 mod 15 = 0.0000000000 +0 mod -15 = 0.0000000000 +0 mod 1 = 0.0000000000 +0 mod -9 = 0.0000000000 +0 mod 14.14 = 0.0000000000 +0 mod -16.60 = 0.0000000000 +0 mod 0.15 = 0.0000000000 +0 mod -0.01 = 0.0000000000 +0 mod 15151324141414.412312232141241 = 0.0000000000 +0 mod -132132245132134.1515123765412 = 0.0000000000 +0 mod 141241241241241248267654747412 = 0.0000000000 +0 mod -149143276547656984948124912 = 0.0000000000 +0 mod 0.1322135476547459213732911312 = 0.0000000000 +0 mod -0.123912932193769965476541321 = 0.0000000000 Number "0.00" (scale 10) - 0.00 mod 15 = 0.0000000000 - 0.00 mod -15 = 0.0000000000 - 0.00 mod 1 = 0.0000000000 - 0.00 mod -9 = 0.0000000000 - 0.00 mod 14.14 = 0.0000000000 - 0.00 mod -16.60 = 0.0000000000 - 0.00 mod 0.15 = 0.0000000000 - 0.00 mod -0.01 = 0.0000000000 - 0.00 mod 15151324141414.412312232141241 = 0.0000000000 - 0.00 mod -132132245132134.1515123765412 = 0.0000000000 - 0.00 mod 141241241241241248267654747412 = 0.0000000000 - 0.00 mod -149143276547656984948124912 = 0.0000000000 - 0.00 mod 0.1322135476547459213732911312 = 0.0000000000 - 0.00 mod -0.123912932193769965476541321 = 0.0000000000 +0.00 mod 15 = 0.0000000000 +0.00 mod -15 = 0.0000000000 +0.00 mod 1 = 0.0000000000 +0.00 mod -9 = 0.0000000000 +0.00 mod 14.14 = 0.0000000000 +0.00 mod -16.60 = 0.0000000000 +0.00 mod 0.15 = 0.0000000000 +0.00 mod -0.01 = 0.0000000000 +0.00 mod 15151324141414.412312232141241 = 0.0000000000 +0.00 mod -132132245132134.1515123765412 = 0.0000000000 +0.00 mod 141241241241241248267654747412 = 0.0000000000 +0.00 mod -149143276547656984948124912 = 0.0000000000 +0.00 mod 0.1322135476547459213732911312 = 0.0000000000 +0.00 mod -0.123912932193769965476541321 = 0.0000000000 Number "-0" (scale 10) - -0 mod 15 = 0.0000000000 - -0 mod -15 = 0.0000000000 - -0 mod 1 = 0.0000000000 - -0 mod -9 = 0.0000000000 - -0 mod 14.14 = 0.0000000000 - -0 mod -16.60 = 0.0000000000 - -0 mod 0.15 = 0.0000000000 - -0 mod -0.01 = 0.0000000000 - -0 mod 15151324141414.412312232141241 = 0.0000000000 - -0 mod -132132245132134.1515123765412 = 0.0000000000 - -0 mod 141241241241241248267654747412 = 0.0000000000 - -0 mod -149143276547656984948124912 = 0.0000000000 - -0 mod 0.1322135476547459213732911312 = 0.0000000000 - -0 mod -0.123912932193769965476541321 = 0.0000000000 +-0 mod 15 = 0.0000000000 +-0 mod -15 = 0.0000000000 +-0 mod 1 = 0.0000000000 +-0 mod -9 = 0.0000000000 +-0 mod 14.14 = 0.0000000000 +-0 mod -16.60 = 0.0000000000 +-0 mod 0.15 = 0.0000000000 +-0 mod -0.01 = 0.0000000000 +-0 mod 15151324141414.412312232141241 = 0.0000000000 +-0 mod -132132245132134.1515123765412 = 0.0000000000 +-0 mod 141241241241241248267654747412 = 0.0000000000 +-0 mod -149143276547656984948124912 = 0.0000000000 +-0 mod 0.1322135476547459213732911312 = 0.0000000000 +-0 mod -0.123912932193769965476541321 = 0.0000000000 Number "-0.00" (scale 10) - -0.00 mod 15 = 0.0000000000 - -0.00 mod -15 = 0.0000000000 - -0.00 mod 1 = 0.0000000000 - -0.00 mod -9 = 0.0000000000 - -0.00 mod 14.14 = 0.0000000000 - -0.00 mod -16.60 = 0.0000000000 - -0.00 mod 0.15 = 0.0000000000 - -0.00 mod -0.01 = 0.0000000000 - -0.00 mod 15151324141414.412312232141241 = 0.0000000000 - -0.00 mod -132132245132134.1515123765412 = 0.0000000000 - -0.00 mod 141241241241241248267654747412 = 0.0000000000 - -0.00 mod -149143276547656984948124912 = 0.0000000000 - -0.00 mod 0.1322135476547459213732911312 = 0.0000000000 - -0.00 mod -0.123912932193769965476541321 = 0.0000000000 +-0.00 mod 15 = 0.0000000000 +-0.00 mod -15 = 0.0000000000 +-0.00 mod 1 = 0.0000000000 +-0.00 mod -9 = 0.0000000000 +-0.00 mod 14.14 = 0.0000000000 +-0.00 mod -16.60 = 0.0000000000 +-0.00 mod 0.15 = 0.0000000000 +-0.00 mod -0.01 = 0.0000000000 +-0.00 mod 15151324141414.412312232141241 = 0.0000000000 +-0.00 mod -132132245132134.1515123765412 = 0.0000000000 +-0.00 mod 141241241241241248267654747412 = 0.0000000000 +-0.00 mod -149143276547656984948124912 = 0.0000000000 +-0.00 mod 0.1322135476547459213732911312 = 0.0000000000 +-0.00 mod -0.123912932193769965476541321 = 0.0000000000 diff --git a/ext/bcmath/tests/bcmul.phpt b/ext/bcmath/tests/bcmul.phpt index 7f966061776f5..efd6365ffac6d 100644 --- a/ext/bcmath/tests/bcmul.phpt +++ b/ext/bcmath/tests/bcmul.phpt @@ -6,6 +6,7 @@ bcmath bcmath.scale=0 --FILE-- --EXPECT-- Number "15" (scale 0) - 15 × 15 = 225 - 15 × -15 = -225 - 15 × 1 = 15 - 15 × -9 = -135 - 15 × 14.14 = 212 - 15 × -16.60 = -249 - 15 × 0.15 = 2 - 15 × -0.01 = 0 - 15 × 0 = 0 - 15 × 0.00 = 0 - 15 × -0 = 0 - 15 × -0.00 = 0 - 15 × 15151324141414.412312232141241 = 227269862121216 - 15 × -132132245132134.1515123765412 = -1981983676982012 - 15 × 141241241241241248267654747412 = 2118618618618618724014821211180 - 15 × -149143276547656984948124912 = -2237149148214854774221873680 - 15 × 0.1322135476547459213732911312 = 1 - 15 × -0.123912932193769965476541321 = -1 +15 * 15 = 225 +15 * -15 = -225 +15 * 1 = 15 +15 * -9 = -135 +15 * 14.14 = 212 +15 * -16.60 = -249 +15 * 0.15 = 2 +15 * -0.01 = 0 +15 * 0 = 0 +15 * 0.00 = 0 +15 * -0 = 0 +15 * -0.00 = 0 +15 * 15151324141414.412312232141241 = 227269862121216 +15 * -132132245132134.1515123765412 = -1981983676982012 +15 * 141241241241241248267654747412 = 2118618618618618724014821211180 +15 * -149143276547656984948124912 = -2237149148214854774221873680 +15 * 0.1322135476547459213732911312 = 1 +15 * -0.123912932193769965476541321 = -1 Number "-15" (scale 0) - -15 × 15 = -225 - -15 × -15 = 225 - -15 × 1 = -15 - -15 × -9 = 135 - -15 × 14.14 = -212 - -15 × -16.60 = 249 - -15 × 0.15 = -2 - -15 × -0.01 = 0 - -15 × 0 = 0 - -15 × 0.00 = 0 - -15 × -0 = 0 - -15 × -0.00 = 0 - -15 × 15151324141414.412312232141241 = -227269862121216 - -15 × -132132245132134.1515123765412 = 1981983676982012 - -15 × 141241241241241248267654747412 = -2118618618618618724014821211180 - -15 × -149143276547656984948124912 = 2237149148214854774221873680 - -15 × 0.1322135476547459213732911312 = -1 - -15 × -0.123912932193769965476541321 = 1 +-15 * 15 = -225 +-15 * -15 = 225 +-15 * 1 = -15 +-15 * -9 = 135 +-15 * 14.14 = -212 +-15 * -16.60 = 249 +-15 * 0.15 = -2 +-15 * -0.01 = 0 +-15 * 0 = 0 +-15 * 0.00 = 0 +-15 * -0 = 0 +-15 * -0.00 = 0 +-15 * 15151324141414.412312232141241 = -227269862121216 +-15 * -132132245132134.1515123765412 = 1981983676982012 +-15 * 141241241241241248267654747412 = -2118618618618618724014821211180 +-15 * -149143276547656984948124912 = 2237149148214854774221873680 +-15 * 0.1322135476547459213732911312 = -1 +-15 * -0.123912932193769965476541321 = 1 Number "1" (scale 0) - 1 × 15 = 15 - 1 × -15 = -15 - 1 × 1 = 1 - 1 × -9 = -9 - 1 × 14.14 = 14 - 1 × -16.60 = -16 - 1 × 0.15 = 0 - 1 × -0.01 = 0 - 1 × 0 = 0 - 1 × 0.00 = 0 - 1 × -0 = 0 - 1 × -0.00 = 0 - 1 × 15151324141414.412312232141241 = 15151324141414 - 1 × -132132245132134.1515123765412 = -132132245132134 - 1 × 141241241241241248267654747412 = 141241241241241248267654747412 - 1 × -149143276547656984948124912 = -149143276547656984948124912 - 1 × 0.1322135476547459213732911312 = 0 - 1 × -0.123912932193769965476541321 = 0 +1 * 15 = 15 +1 * -15 = -15 +1 * 1 = 1 +1 * -9 = -9 +1 * 14.14 = 14 +1 * -16.60 = -16 +1 * 0.15 = 0 +1 * -0.01 = 0 +1 * 0 = 0 +1 * 0.00 = 0 +1 * -0 = 0 +1 * -0.00 = 0 +1 * 15151324141414.412312232141241 = 15151324141414 +1 * -132132245132134.1515123765412 = -132132245132134 +1 * 141241241241241248267654747412 = 141241241241241248267654747412 +1 * -149143276547656984948124912 = -149143276547656984948124912 +1 * 0.1322135476547459213732911312 = 0 +1 * -0.123912932193769965476541321 = 0 Number "-9" (scale 0) - -9 × 15 = -135 - -9 × -15 = 135 - -9 × 1 = -9 - -9 × -9 = 81 - -9 × 14.14 = -127 - -9 × -16.60 = 149 - -9 × 0.15 = -1 - -9 × -0.01 = 0 - -9 × 0 = 0 - -9 × 0.00 = 0 - -9 × -0 = 0 - -9 × -0.00 = 0 - -9 × 15151324141414.412312232141241 = -136361917272729 - -9 × -132132245132134.1515123765412 = 1189190206189207 - -9 × 141241241241241248267654747412 = -1271171171171171234408892726708 - -9 × -149143276547656984948124912 = 1342289488928912864533124208 - -9 × 0.1322135476547459213732911312 = -1 - -9 × -0.123912932193769965476541321 = 1 +-9 * 15 = -135 +-9 * -15 = 135 +-9 * 1 = -9 +-9 * -9 = 81 +-9 * 14.14 = -127 +-9 * -16.60 = 149 +-9 * 0.15 = -1 +-9 * -0.01 = 0 +-9 * 0 = 0 +-9 * 0.00 = 0 +-9 * -0 = 0 +-9 * -0.00 = 0 +-9 * 15151324141414.412312232141241 = -136361917272729 +-9 * -132132245132134.1515123765412 = 1189190206189207 +-9 * 141241241241241248267654747412 = -1271171171171171234408892726708 +-9 * -149143276547656984948124912 = 1342289488928912864533124208 +-9 * 0.1322135476547459213732911312 = -1 +-9 * -0.123912932193769965476541321 = 1 Number "14.14" (scale 0) - 14.14 × 15 = 212 - 14.14 × -15 = -212 - 14.14 × 1 = 14 - 14.14 × -9 = -127 - 14.14 × 14.14 = 199 - 14.14 × -16.60 = -234 - 14.14 × 0.15 = 2 - 14.14 × -0.01 = 0 - 14.14 × 0 = 0 - 14.14 × 0.00 = 0 - 14.14 × -0 = 0 - 14.14 × -0.00 = 0 - 14.14 × 15151324141414.412312232141241 = 214239723359599 - 14.14 × -132132245132134.1515123765412 = -1868349946168376 - 14.14 × 141241241241241248267654747412 = 1997151151151151250504638128405 - 14.14 × -149143276547656984948124912 = -2108885930383869767166486255 - 14.14 × 0.1322135476547459213732911312 = 1 - 14.14 × -0.123912932193769965476541321 = -1 +14.14 * 15 = 212 +14.14 * -15 = -212 +14.14 * 1 = 14 +14.14 * -9 = -127 +14.14 * 14.14 = 199 +14.14 * -16.60 = -234 +14.14 * 0.15 = 2 +14.14 * -0.01 = 0 +14.14 * 0 = 0 +14.14 * 0.00 = 0 +14.14 * -0 = 0 +14.14 * -0.00 = 0 +14.14 * 15151324141414.412312232141241 = 214239723359599 +14.14 * -132132245132134.1515123765412 = -1868349946168376 +14.14 * 141241241241241248267654747412 = 1997151151151151250504638128405 +14.14 * -149143276547656984948124912 = -2108885930383869767166486255 +14.14 * 0.1322135476547459213732911312 = 1 +14.14 * -0.123912932193769965476541321 = -1 Number "-16.60" (scale 0) --16.60 × 15 = -249 --16.60 × -15 = 249 --16.60 × 1 = -16 --16.60 × -9 = 149 --16.60 × 14.14 = -234 --16.60 × -16.60 = 275 --16.60 × 0.15 = -2 --16.60 × -0.01 = 0 --16.60 × 0 = 0 --16.60 × 0.00 = 0 --16.60 × -0 = 0 --16.60 × -0.00 = 0 --16.60 × 15151324141414.412312232141241 = -251511980747479 --16.60 × -132132245132134.1515123765412 = 2193395269193426 --16.60 × 141241241241241248267654747412 = -2344604604604604721243068807039 --16.60 × -149143276547656984948124912 = 2475778390691105950138873539 --16.60 × 0.1322135476547459213732911312 = -2 --16.60 × -0.123912932193769965476541321 = 2 +-16.60 * 15 = -249 +-16.60 * -15 = 249 +-16.60 * 1 = -16 +-16.60 * -9 = 149 +-16.60 * 14.14 = -234 +-16.60 * -16.60 = 275 +-16.60 * 0.15 = -2 +-16.60 * -0.01 = 0 +-16.60 * 0 = 0 +-16.60 * 0.00 = 0 +-16.60 * -0 = 0 +-16.60 * -0.00 = 0 +-16.60 * 15151324141414.412312232141241 = -251511980747479 +-16.60 * -132132245132134.1515123765412 = 2193395269193426 +-16.60 * 141241241241241248267654747412 = -2344604604604604721243068807039 +-16.60 * -149143276547656984948124912 = 2475778390691105950138873539 +-16.60 * 0.1322135476547459213732911312 = -2 +-16.60 * -0.123912932193769965476541321 = 2 Number "0.15" (scale 0) - 0.15 × 15 = 2 - 0.15 × -15 = -2 - 0.15 × 1 = 0 - 0.15 × -9 = -1 - 0.15 × 14.14 = 2 - 0.15 × -16.60 = -2 - 0.15 × 0.15 = 0 - 0.15 × -0.01 = 0 - 0.15 × 0 = 0 - 0.15 × 0.00 = 0 - 0.15 × -0 = 0 - 0.15 × -0.00 = 0 - 0.15 × 15151324141414.412312232141241 = 2272698621212 - 0.15 × -132132245132134.1515123765412 = -19819836769820 - 0.15 × 141241241241241248267654747412 = 21186186186186187240148212111 - 0.15 × -149143276547656984948124912 = -22371491482148547742218736 - 0.15 × 0.1322135476547459213732911312 = 0 - 0.15 × -0.123912932193769965476541321 = 0 +0.15 * 15 = 2 +0.15 * -15 = -2 +0.15 * 1 = 0 +0.15 * -9 = -1 +0.15 * 14.14 = 2 +0.15 * -16.60 = -2 +0.15 * 0.15 = 0 +0.15 * -0.01 = 0 +0.15 * 0 = 0 +0.15 * 0.00 = 0 +0.15 * -0 = 0 +0.15 * -0.00 = 0 +0.15 * 15151324141414.412312232141241 = 2272698621212 +0.15 * -132132245132134.1515123765412 = -19819836769820 +0.15 * 141241241241241248267654747412 = 21186186186186187240148212111 +0.15 * -149143276547656984948124912 = -22371491482148547742218736 +0.15 * 0.1322135476547459213732911312 = 0 +0.15 * -0.123912932193769965476541321 = 0 Number "-0.01" (scale 0) - -0.01 × 15 = 0 - -0.01 × -15 = 0 - -0.01 × 1 = 0 - -0.01 × -9 = 0 - -0.01 × 14.14 = 0 - -0.01 × -16.60 = 0 - -0.01 × 0.15 = 0 - -0.01 × -0.01 = 0 - -0.01 × 0 = 0 - -0.01 × 0.00 = 0 - -0.01 × -0 = 0 - -0.01 × -0.00 = 0 - -0.01 × 15151324141414.412312232141241 = -151513241414 - -0.01 × -132132245132134.1515123765412 = 1321322451321 - -0.01 × 141241241241241248267654747412 = -1412412412412412482676547474 - -0.01 × -149143276547656984948124912 = 1491432765476569849481249 - -0.01 × 0.1322135476547459213732911312 = 0 - -0.01 × -0.123912932193769965476541321 = 0 +-0.01 * 15 = 0 +-0.01 * -15 = 0 +-0.01 * 1 = 0 +-0.01 * -9 = 0 +-0.01 * 14.14 = 0 +-0.01 * -16.60 = 0 +-0.01 * 0.15 = 0 +-0.01 * -0.01 = 0 +-0.01 * 0 = 0 +-0.01 * 0.00 = 0 +-0.01 * -0 = 0 +-0.01 * -0.00 = 0 +-0.01 * 15151324141414.412312232141241 = -151513241414 +-0.01 * -132132245132134.1515123765412 = 1321322451321 +-0.01 * 141241241241241248267654747412 = -1412412412412412482676547474 +-0.01 * -149143276547656984948124912 = 1491432765476569849481249 +-0.01 * 0.1322135476547459213732911312 = 0 +-0.01 * -0.123912932193769965476541321 = 0 Number "15" (scale 10) - 15 × 15 = 225.0000000000 - 15 × -15 = -225.0000000000 - 15 × 1 = 15.0000000000 - 15 × -9 = -135.0000000000 - 15 × 14.14 = 212.1000000000 - 15 × -16.60 = -249.0000000000 - 15 × 0.15 = 2.2500000000 - 15 × -0.01 = -0.1500000000 - 15 × 0 = 0.0000000000 - 15 × 0.00 = 0.0000000000 - 15 × -0 = 0.0000000000 - 15 × -0.00 = 0.0000000000 - 15 × 15151324141414.412312232141241 = 227269862121216.1846834821 - 15 × -132132245132134.1515123765412 = -1981983676982012.2726856481 - 15 × 141241241241241248267654747412 = 2118618618618618724014821211180.0000000000 - 15 × -149143276547656984948124912 = -2237149148214854774221873680.0000000000 - 15 × 0.1322135476547459213732911312 = 1.9832032148 - 15 × -0.123912932193769965476541321 = -1.8586939829 +15 * 15 = 225.0000000000 +15 * -15 = -225.0000000000 +15 * 1 = 15.0000000000 +15 * -9 = -135.0000000000 +15 * 14.14 = 212.1000000000 +15 * -16.60 = -249.0000000000 +15 * 0.15 = 2.2500000000 +15 * -0.01 = -0.1500000000 +15 * 0 = 0.0000000000 +15 * 0.00 = 0.0000000000 +15 * -0 = 0.0000000000 +15 * -0.00 = 0.0000000000 +15 * 15151324141414.412312232141241 = 227269862121216.1846834821 +15 * -132132245132134.1515123765412 = -1981983676982012.2726856481 +15 * 141241241241241248267654747412 = 2118618618618618724014821211180.0000000000 +15 * -149143276547656984948124912 = -2237149148214854774221873680.0000000000 +15 * 0.1322135476547459213732911312 = 1.9832032148 +15 * -0.123912932193769965476541321 = -1.8586939829 Number "-15" (scale 10) - -15 × 15 = -225.0000000000 - -15 × -15 = 225.0000000000 - -15 × 1 = -15.0000000000 - -15 × -9 = 135.0000000000 - -15 × 14.14 = -212.1000000000 - -15 × -16.60 = 249.0000000000 - -15 × 0.15 = -2.2500000000 - -15 × -0.01 = 0.1500000000 - -15 × 0 = 0.0000000000 - -15 × 0.00 = 0.0000000000 - -15 × -0 = 0.0000000000 - -15 × -0.00 = 0.0000000000 - -15 × 15151324141414.412312232141241 = -227269862121216.1846834821 - -15 × -132132245132134.1515123765412 = 1981983676982012.2726856481 - -15 × 141241241241241248267654747412 = -2118618618618618724014821211180.0000000000 - -15 × -149143276547656984948124912 = 2237149148214854774221873680.0000000000 - -15 × 0.1322135476547459213732911312 = -1.9832032148 - -15 × -0.123912932193769965476541321 = 1.8586939829 +-15 * 15 = -225.0000000000 +-15 * -15 = 225.0000000000 +-15 * 1 = -15.0000000000 +-15 * -9 = 135.0000000000 +-15 * 14.14 = -212.1000000000 +-15 * -16.60 = 249.0000000000 +-15 * 0.15 = -2.2500000000 +-15 * -0.01 = 0.1500000000 +-15 * 0 = 0.0000000000 +-15 * 0.00 = 0.0000000000 +-15 * -0 = 0.0000000000 +-15 * -0.00 = 0.0000000000 +-15 * 15151324141414.412312232141241 = -227269862121216.1846834821 +-15 * -132132245132134.1515123765412 = 1981983676982012.2726856481 +-15 * 141241241241241248267654747412 = -2118618618618618724014821211180.0000000000 +-15 * -149143276547656984948124912 = 2237149148214854774221873680.0000000000 +-15 * 0.1322135476547459213732911312 = -1.9832032148 +-15 * -0.123912932193769965476541321 = 1.8586939829 Number "1" (scale 10) - 1 × 15 = 15.0000000000 - 1 × -15 = -15.0000000000 - 1 × 1 = 1.0000000000 - 1 × -9 = -9.0000000000 - 1 × 14.14 = 14.1400000000 - 1 × -16.60 = -16.6000000000 - 1 × 0.15 = 0.1500000000 - 1 × -0.01 = -0.0100000000 - 1 × 0 = 0.0000000000 - 1 × 0.00 = 0.0000000000 - 1 × -0 = 0.0000000000 - 1 × -0.00 = 0.0000000000 - 1 × 15151324141414.412312232141241 = 15151324141414.4123122321 - 1 × -132132245132134.1515123765412 = -132132245132134.1515123765 - 1 × 141241241241241248267654747412 = 141241241241241248267654747412.0000000000 - 1 × -149143276547656984948124912 = -149143276547656984948124912.0000000000 - 1 × 0.1322135476547459213732911312 = 0.1322135476 - 1 × -0.123912932193769965476541321 = -0.1239129321 +1 * 15 = 15.0000000000 +1 * -15 = -15.0000000000 +1 * 1 = 1.0000000000 +1 * -9 = -9.0000000000 +1 * 14.14 = 14.1400000000 +1 * -16.60 = -16.6000000000 +1 * 0.15 = 0.1500000000 +1 * -0.01 = -0.0100000000 +1 * 0 = 0.0000000000 +1 * 0.00 = 0.0000000000 +1 * -0 = 0.0000000000 +1 * -0.00 = 0.0000000000 +1 * 15151324141414.412312232141241 = 15151324141414.4123122321 +1 * -132132245132134.1515123765412 = -132132245132134.1515123765 +1 * 141241241241241248267654747412 = 141241241241241248267654747412.0000000000 +1 * -149143276547656984948124912 = -149143276547656984948124912.0000000000 +1 * 0.1322135476547459213732911312 = 0.1322135476 +1 * -0.123912932193769965476541321 = -0.1239129321 Number "-9" (scale 10) - -9 × 15 = -135.0000000000 - -9 × -15 = 135.0000000000 - -9 × 1 = -9.0000000000 - -9 × -9 = 81.0000000000 - -9 × 14.14 = -127.2600000000 - -9 × -16.60 = 149.4000000000 - -9 × 0.15 = -1.3500000000 - -9 × -0.01 = 0.0900000000 - -9 × 0 = 0.0000000000 - -9 × 0.00 = 0.0000000000 - -9 × -0 = 0.0000000000 - -9 × -0.00 = 0.0000000000 - -9 × 15151324141414.412312232141241 = -136361917272729.7108100892 - -9 × -132132245132134.1515123765412 = 1189190206189207.3636113888 - -9 × 141241241241241248267654747412 = -1271171171171171234408892726708.0000000000 - -9 × -149143276547656984948124912 = 1342289488928912864533124208.0000000000 - -9 × 0.1322135476547459213732911312 = -1.1899219288 - -9 × -0.123912932193769965476541321 = 1.1152163897 +-9 * 15 = -135.0000000000 +-9 * -15 = 135.0000000000 +-9 * 1 = -9.0000000000 +-9 * -9 = 81.0000000000 +-9 * 14.14 = -127.2600000000 +-9 * -16.60 = 149.4000000000 +-9 * 0.15 = -1.3500000000 +-9 * -0.01 = 0.0900000000 +-9 * 0 = 0.0000000000 +-9 * 0.00 = 0.0000000000 +-9 * -0 = 0.0000000000 +-9 * -0.00 = 0.0000000000 +-9 * 15151324141414.412312232141241 = -136361917272729.7108100892 +-9 * -132132245132134.1515123765412 = 1189190206189207.3636113888 +-9 * 141241241241241248267654747412 = -1271171171171171234408892726708.0000000000 +-9 * -149143276547656984948124912 = 1342289488928912864533124208.0000000000 +-9 * 0.1322135476547459213732911312 = -1.1899219288 +-9 * -0.123912932193769965476541321 = 1.1152163897 Number "14.14" (scale 10) - 14.14 × 15 = 212.1000000000 - 14.14 × -15 = -212.1000000000 - 14.14 × 1 = 14.1400000000 - 14.14 × -9 = -127.2600000000 - 14.14 × 14.14 = 199.9396000000 - 14.14 × -16.60 = -234.7240000000 - 14.14 × 0.15 = 2.1210000000 - 14.14 × -0.01 = -0.1414000000 - 14.14 × 0 = 0.0000000000 - 14.14 × 0.00 = 0.0000000000 - 14.14 × -0 = 0.0000000000 - 14.14 × -0.00 = 0.0000000000 - 14.14 × 15151324141414.412312232141241 = 214239723359599.7900949624 - 14.14 × -132132245132134.1515123765412 = -1868349946168376.9023850042 - 14.14 × 141241241241241248267654747412 = 1997151151151151250504638128405.6800000000 - 14.14 × -149143276547656984948124912 = -2108885930383869767166486255.6800000000 - 14.14 × 0.1322135476547459213732911312 = 1.8694995638 - 14.14 × -0.123912932193769965476541321 = -1.7521288612 +14.14 * 15 = 212.1000000000 +14.14 * -15 = -212.1000000000 +14.14 * 1 = 14.1400000000 +14.14 * -9 = -127.2600000000 +14.14 * 14.14 = 199.9396000000 +14.14 * -16.60 = -234.7240000000 +14.14 * 0.15 = 2.1210000000 +14.14 * -0.01 = -0.1414000000 +14.14 * 0 = 0.0000000000 +14.14 * 0.00 = 0.0000000000 +14.14 * -0 = 0.0000000000 +14.14 * -0.00 = 0.0000000000 +14.14 * 15151324141414.412312232141241 = 214239723359599.7900949624 +14.14 * -132132245132134.1515123765412 = -1868349946168376.9023850042 +14.14 * 141241241241241248267654747412 = 1997151151151151250504638128405.6800000000 +14.14 * -149143276547656984948124912 = -2108885930383869767166486255.6800000000 +14.14 * 0.1322135476547459213732911312 = 1.8694995638 +14.14 * -0.123912932193769965476541321 = -1.7521288612 Number "-16.60" (scale 10) --16.60 × 15 = -249.0000000000 --16.60 × -15 = 249.0000000000 --16.60 × 1 = -16.6000000000 --16.60 × -9 = 149.4000000000 --16.60 × 14.14 = -234.7240000000 --16.60 × -16.60 = 275.5600000000 --16.60 × 0.15 = -2.4900000000 --16.60 × -0.01 = 0.1660000000 --16.60 × 0 = 0.0000000000 --16.60 × 0.00 = 0.0000000000 --16.60 × -0 = 0.0000000000 --16.60 × -0.00 = 0.0000000000 --16.60 × 15151324141414.412312232141241 = -251511980747479.2443830535 --16.60 × -132132245132134.1515123765412 = 2193395269193426.9151054505 --16.60 × 141241241241241248267654747412 = -2344604604604604721243068807039.2000000000 --16.60 × -149143276547656984948124912 = 2475778390691105950138873539.2000000000 --16.60 × 0.1322135476547459213732911312 = -2.1947448910 --16.60 × -0.123912932193769965476541321 = 2.0569546744 +-16.60 * 15 = -249.0000000000 +-16.60 * -15 = 249.0000000000 +-16.60 * 1 = -16.6000000000 +-16.60 * -9 = 149.4000000000 +-16.60 * 14.14 = -234.7240000000 +-16.60 * -16.60 = 275.5600000000 +-16.60 * 0.15 = -2.4900000000 +-16.60 * -0.01 = 0.1660000000 +-16.60 * 0 = 0.0000000000 +-16.60 * 0.00 = 0.0000000000 +-16.60 * -0 = 0.0000000000 +-16.60 * -0.00 = 0.0000000000 +-16.60 * 15151324141414.412312232141241 = -251511980747479.2443830535 +-16.60 * -132132245132134.1515123765412 = 2193395269193426.9151054505 +-16.60 * 141241241241241248267654747412 = -2344604604604604721243068807039.2000000000 +-16.60 * -149143276547656984948124912 = 2475778390691105950138873539.2000000000 +-16.60 * 0.1322135476547459213732911312 = -2.1947448910 +-16.60 * -0.123912932193769965476541321 = 2.0569546744 Number "0.15" (scale 10) - 0.15 × 15 = 2.2500000000 - 0.15 × -15 = -2.2500000000 - 0.15 × 1 = 0.1500000000 - 0.15 × -9 = -1.3500000000 - 0.15 × 14.14 = 2.1210000000 - 0.15 × -16.60 = -2.4900000000 - 0.15 × 0.15 = 0.0225000000 - 0.15 × -0.01 = -0.0015000000 - 0.15 × 0 = 0.0000000000 - 0.15 × 0.00 = 0.0000000000 - 0.15 × -0 = 0.0000000000 - 0.15 × -0.00 = 0.0000000000 - 0.15 × 15151324141414.412312232141241 = 2272698621212.1618468348 - 0.15 × -132132245132134.1515123765412 = -19819836769820.1227268564 - 0.15 × 141241241241241248267654747412 = 21186186186186187240148212111.8000000000 - 0.15 × -149143276547656984948124912 = -22371491482148547742218736.8000000000 - 0.15 × 0.1322135476547459213732911312 = 0.0198320321 - 0.15 × -0.123912932193769965476541321 = -0.0185869398 +0.15 * 15 = 2.2500000000 +0.15 * -15 = -2.2500000000 +0.15 * 1 = 0.1500000000 +0.15 * -9 = -1.3500000000 +0.15 * 14.14 = 2.1210000000 +0.15 * -16.60 = -2.4900000000 +0.15 * 0.15 = 0.0225000000 +0.15 * -0.01 = -0.0015000000 +0.15 * 0 = 0.0000000000 +0.15 * 0.00 = 0.0000000000 +0.15 * -0 = 0.0000000000 +0.15 * -0.00 = 0.0000000000 +0.15 * 15151324141414.412312232141241 = 2272698621212.1618468348 +0.15 * -132132245132134.1515123765412 = -19819836769820.1227268564 +0.15 * 141241241241241248267654747412 = 21186186186186187240148212111.8000000000 +0.15 * -149143276547656984948124912 = -22371491482148547742218736.8000000000 +0.15 * 0.1322135476547459213732911312 = 0.0198320321 +0.15 * -0.123912932193769965476541321 = -0.0185869398 Number "-0.01" (scale 10) - -0.01 × 15 = -0.1500000000 - -0.01 × -15 = 0.1500000000 - -0.01 × 1 = -0.0100000000 - -0.01 × -9 = 0.0900000000 - -0.01 × 14.14 = -0.1414000000 - -0.01 × -16.60 = 0.1660000000 - -0.01 × 0.15 = -0.0015000000 - -0.01 × -0.01 = 0.0001000000 - -0.01 × 0 = 0.0000000000 - -0.01 × 0.00 = 0.0000000000 - -0.01 × -0 = 0.0000000000 - -0.01 × -0.00 = 0.0000000000 - -0.01 × 15151324141414.412312232141241 = -151513241414.1441231223 - -0.01 × -132132245132134.1515123765412 = 1321322451321.3415151237 - -0.01 × 141241241241241248267654747412 = -1412412412412412482676547474.1200000000 - -0.01 × -149143276547656984948124912 = 1491432765476569849481249.1200000000 - -0.01 × 0.1322135476547459213732911312 = -0.0013221354 - -0.01 × -0.123912932193769965476541321 = 0.0012391293 +-0.01 * 15 = -0.1500000000 +-0.01 * -15 = 0.1500000000 +-0.01 * 1 = -0.0100000000 +-0.01 * -9 = 0.0900000000 +-0.01 * 14.14 = -0.1414000000 +-0.01 * -16.60 = 0.1660000000 +-0.01 * 0.15 = -0.0015000000 +-0.01 * -0.01 = 0.0001000000 +-0.01 * 0 = 0.0000000000 +-0.01 * 0.00 = 0.0000000000 +-0.01 * -0 = 0.0000000000 +-0.01 * -0.00 = 0.0000000000 +-0.01 * 15151324141414.412312232141241 = -151513241414.1441231223 +-0.01 * -132132245132134.1515123765412 = 1321322451321.3415151237 +-0.01 * 141241241241241248267654747412 = -1412412412412412482676547474.1200000000 +-0.01 * -149143276547656984948124912 = 1491432765476569849481249.1200000000 +-0.01 * 0.1322135476547459213732911312 = -0.0013221354 +-0.01 * -0.123912932193769965476541321 = 0.0012391293 diff --git a/ext/bcmath/tests/bcmul_large_numbers.phpt b/ext/bcmath/tests/bcmul_large_numbers.phpt index 00b8a71bfec1b..7008ac7e1d844 100644 --- a/ext/bcmath/tests/bcmul_large_numbers.phpt +++ b/ext/bcmath/tests/bcmul_large_numbers.phpt @@ -6,6 +6,7 @@ bcmath bcmath.scale=0 --FILE-- --EXPECT-- Number "15151324141414.412312232141241" (scale 0) -15151324141414.412312232141241 × 15151324141414.412312232141241 = 229562623238207178422472679 -15151324141414.412312232141241 × -132132245132134.1515123765412 = -2001978475529791133885654151 -15151324141414.412312232141241 × 141241241241241248267654747412 = 2139991828181755439048012256383179795538025 -15151324141414.412312232141241 × -149143276547656984948124912 = -2259718126486161223119790826488981524974 -15151324141414.412312232141241 × 0.1322135476547459213732911312 = 2003210316403 -15151324141414.412312232141241 × -0.123912932193769965476541321 = -1877445000980 -15151324141414.412312232141241 × 0 = 0 -15151324141414.412312232141241 × 0.00 = 0 -15151324141414.412312232141241 × -0 = 0 -15151324141414.412312232141241 × -0.00 = 0 -15151324141414.412312232141241 × 15 = 227269862121216 -15151324141414.412312232141241 × -15 = -227269862121216 -15151324141414.412312232141241 × 1 = 15151324141414 -15151324141414.412312232141241 × -9 = -136361917272729 -15151324141414.412312232141241 × 14.14 = 214239723359599 -15151324141414.412312232141241 × -16.60 = -251511980747479 -15151324141414.412312232141241 × 0.15 = 2272698621212 -15151324141414.412312232141241 × -0.01 = -151513241414 +15151324141414.412312232141241 * 15151324141414.412312232141241 = 229562623238207178422472679 +15151324141414.412312232141241 * -132132245132134.1515123765412 = -2001978475529791133885654151 +15151324141414.412312232141241 * 141241241241241248267654747412 = 2139991828181755439048012256383179795538025 +15151324141414.412312232141241 * -149143276547656984948124912 = -2259718126486161223119790826488981524974 +15151324141414.412312232141241 * 0.1322135476547459213732911312 = 2003210316403 +15151324141414.412312232141241 * -0.123912932193769965476541321 = -1877445000980 +15151324141414.412312232141241 * 0 = 0 +15151324141414.412312232141241 * 0.00 = 0 +15151324141414.412312232141241 * -0 = 0 +15151324141414.412312232141241 * -0.00 = 0 +15151324141414.412312232141241 * 15 = 227269862121216 +15151324141414.412312232141241 * -15 = -227269862121216 +15151324141414.412312232141241 * 1 = 15151324141414 +15151324141414.412312232141241 * -9 = -136361917272729 +15151324141414.412312232141241 * 14.14 = 214239723359599 +15151324141414.412312232141241 * -16.60 = -251511980747479 +15151324141414.412312232141241 * 0.15 = 2272698621212 +15151324141414.412312232141241 * -0.01 = -151513241414 Number "-132132245132134.1515123765412" (scale 0) --132132245132134.1515123765412 × 15151324141414.412312232141241 = -2001978475529791133885654151 --132132245132134.1515123765412 × -132132245132134.1515123765412 = 17458930203658389178460349344 --132132245132134.1515123765412 × 141241241241241248267654747412 = -18662522310454584290173879848464266332555498 --132132245132134.1515123765412 × -149143276547656984948124912 = 19706635976604687211527336089051267200810 --132132245132134.1515123765412 × 0.1322135476547459213732911312 = -17469672888505 --132132245132134.1515123765412 × -0.123912932193769965476541321 = 16372893931668 --132132245132134.1515123765412 × 0 = 0 --132132245132134.1515123765412 × 0.00 = 0 --132132245132134.1515123765412 × -0 = 0 --132132245132134.1515123765412 × -0.00 = 0 --132132245132134.1515123765412 × 15 = -1981983676982012 --132132245132134.1515123765412 × -15 = 1981983676982012 --132132245132134.1515123765412 × 1 = -132132245132134 --132132245132134.1515123765412 × -9 = 1189190206189207 --132132245132134.1515123765412 × 14.14 = -1868349946168376 --132132245132134.1515123765412 × -16.60 = 2193395269193426 --132132245132134.1515123765412 × 0.15 = -19819836769820 --132132245132134.1515123765412 × -0.01 = 1321322451321 +-132132245132134.1515123765412 * 15151324141414.412312232141241 = -2001978475529791133885654151 +-132132245132134.1515123765412 * -132132245132134.1515123765412 = 17458930203658389178460349344 +-132132245132134.1515123765412 * 141241241241241248267654747412 = -18662522310454584290173879848464266332555498 +-132132245132134.1515123765412 * -149143276547656984948124912 = 19706635976604687211527336089051267200810 +-132132245132134.1515123765412 * 0.1322135476547459213732911312 = -17469672888505 +-132132245132134.1515123765412 * -0.123912932193769965476541321 = 16372893931668 +-132132245132134.1515123765412 * 0 = 0 +-132132245132134.1515123765412 * 0.00 = 0 +-132132245132134.1515123765412 * -0 = 0 +-132132245132134.1515123765412 * -0.00 = 0 +-132132245132134.1515123765412 * 15 = -1981983676982012 +-132132245132134.1515123765412 * -15 = 1981983676982012 +-132132245132134.1515123765412 * 1 = -132132245132134 +-132132245132134.1515123765412 * -9 = 1189190206189207 +-132132245132134.1515123765412 * 14.14 = -1868349946168376 +-132132245132134.1515123765412 * -16.60 = 2193395269193426 +-132132245132134.1515123765412 * 0.15 = -19819836769820 +-132132245132134.1515123765412 * -0.01 = 1321322451321 Number "141241241241241248267654747412" (scale 0) -141241241241241248267654747412 × 15151324141414.412312232141241 = 2139991828181755439048012256383179795538025 -141241241241241248267654747412 × -132132245132134.1515123765412 = -18662522310454584290173879848464266332555498 -141241241241241248267654747412 × 141241241241241248267654747412 = 19949088227366507629622653233761071253230364164181520697744 -141241241241241248267654747412 × -149143276547656984948124912 = -21065181502376778401476291731259854717478035244384727744 -141241241241241248267654747412 × 0.1322135476547459213732911312 = 18674005579664314748578026521 -141241241241241248267654747412 × -0.123912932193769965476541321 = -17501616348889832831364181429 -141241241241241248267654747412 × 0 = 0 -141241241241241248267654747412 × 0.00 = 0 -141241241241241248267654747412 × -0 = 0 -141241241241241248267654747412 × -0.00 = 0 -141241241241241248267654747412 × 15 = 2118618618618618724014821211180 -141241241241241248267654747412 × -15 = -2118618618618618724014821211180 -141241241241241248267654747412 × 1 = 141241241241241248267654747412 -141241241241241248267654747412 × -9 = -1271171171171171234408892726708 -141241241241241248267654747412 × 14.14 = 1997151151151151250504638128405 -141241241241241248267654747412 × -16.60 = -2344604604604604721243068807039 -141241241241241248267654747412 × 0.15 = 21186186186186187240148212111 -141241241241241248267654747412 × -0.01 = -1412412412412412482676547474 +141241241241241248267654747412 * 15151324141414.412312232141241 = 2139991828181755439048012256383179795538025 +141241241241241248267654747412 * -132132245132134.1515123765412 = -18662522310454584290173879848464266332555498 +141241241241241248267654747412 * 141241241241241248267654747412 = 19949088227366507629622653233761071253230364164181520697744 +141241241241241248267654747412 * -149143276547656984948124912 = -21065181502376778401476291731259854717478035244384727744 +141241241241241248267654747412 * 0.1322135476547459213732911312 = 18674005579664314748578026521 +141241241241241248267654747412 * -0.123912932193769965476541321 = -17501616348889832831364181429 +141241241241241248267654747412 * 0 = 0 +141241241241241248267654747412 * 0.00 = 0 +141241241241241248267654747412 * -0 = 0 +141241241241241248267654747412 * -0.00 = 0 +141241241241241248267654747412 * 15 = 2118618618618618724014821211180 +141241241241241248267654747412 * -15 = -2118618618618618724014821211180 +141241241241241248267654747412 * 1 = 141241241241241248267654747412 +141241241241241248267654747412 * -9 = -1271171171171171234408892726708 +141241241241241248267654747412 * 14.14 = 1997151151151151250504638128405 +141241241241241248267654747412 * -16.60 = -2344604604604604721243068807039 +141241241241241248267654747412 * 0.15 = 21186186186186187240148212111 +141241241241241248267654747412 * -0.01 = -1412412412412412482676547474 Number "-149143276547656984948124912" (scale 0) --149143276547656984948124912 × 15151324141414.412312232141241 = -2259718126486161223119790826488981524974 --149143276547656984948124912 × -132132245132134.1515123765412 = 19706635976604687211527336089051267200810 --149143276547656984948124912 × 141241241241241248267654747412 = -21065181502376778401476291731259854717478035244384727744 --149143276547656984948124912 × -149143276547656984948124912 = 22243716939370890018820252028254140421311664755007744 --149143276547656984948124912 × 0.1322135476547459213732911312 = -19718761701218596539144441 --149143276547656984948124912 × -0.123912932193769965476541321 = 18480780714006502282899774 --149143276547656984948124912 × 0 = 0 --149143276547656984948124912 × 0.00 = 0 --149143276547656984948124912 × -0 = 0 --149143276547656984948124912 × -0.00 = 0 --149143276547656984948124912 × 15 = -2237149148214854774221873680 --149143276547656984948124912 × -15 = 2237149148214854774221873680 --149143276547656984948124912 × 1 = -149143276547656984948124912 --149143276547656984948124912 × -9 = 1342289488928912864533124208 --149143276547656984948124912 × 14.14 = -2108885930383869767166486255 --149143276547656984948124912 × -16.60 = 2475778390691105950138873539 --149143276547656984948124912 × 0.15 = -22371491482148547742218736 --149143276547656984948124912 × -0.01 = 1491432765476569849481249 +-149143276547656984948124912 * 15151324141414.412312232141241 = -2259718126486161223119790826488981524974 +-149143276547656984948124912 * -132132245132134.1515123765412 = 19706635976604687211527336089051267200810 +-149143276547656984948124912 * 141241241241241248267654747412 = -21065181502376778401476291731259854717478035244384727744 +-149143276547656984948124912 * -149143276547656984948124912 = 22243716939370890018820252028254140421311664755007744 +-149143276547656984948124912 * 0.1322135476547459213732911312 = -19718761701218596539144441 +-149143276547656984948124912 * -0.123912932193769965476541321 = 18480780714006502282899774 +-149143276547656984948124912 * 0 = 0 +-149143276547656984948124912 * 0.00 = 0 +-149143276547656984948124912 * -0 = 0 +-149143276547656984948124912 * -0.00 = 0 +-149143276547656984948124912 * 15 = -2237149148214854774221873680 +-149143276547656984948124912 * -15 = 2237149148214854774221873680 +-149143276547656984948124912 * 1 = -149143276547656984948124912 +-149143276547656984948124912 * -9 = 1342289488928912864533124208 +-149143276547656984948124912 * 14.14 = -2108885930383869767166486255 +-149143276547656984948124912 * -16.60 = 2475778390691105950138873539 +-149143276547656984948124912 * 0.15 = -22371491482148547742218736 +-149143276547656984948124912 * -0.01 = 1491432765476569849481249 Number "0.1322135476547459213732911312" (scale 0) -0.1322135476547459213732911312 × 15151324141414.412312232141241 = 2003210316403 -0.1322135476547459213732911312 × -132132245132134.1515123765412 = -17469672888505 -0.1322135476547459213732911312 × 141241241241241248267654747412 = 18674005579664314748578026521 -0.1322135476547459213732911312 × -149143276547656984948124912 = -19718761701218596539144441 -0.1322135476547459213732911312 × 0.1322135476547459213732911312 = 0 -0.1322135476547459213732911312 × -0.123912932193769965476541321 = 0 -0.1322135476547459213732911312 × 0 = 0 -0.1322135476547459213732911312 × 0.00 = 0 -0.1322135476547459213732911312 × -0 = 0 -0.1322135476547459213732911312 × -0.00 = 0 -0.1322135476547459213732911312 × 15 = 1 -0.1322135476547459213732911312 × -15 = -1 -0.1322135476547459213732911312 × 1 = 0 -0.1322135476547459213732911312 × -9 = -1 -0.1322135476547459213732911312 × 14.14 = 1 -0.1322135476547459213732911312 × -16.60 = -2 -0.1322135476547459213732911312 × 0.15 = 0 -0.1322135476547459213732911312 × -0.01 = 0 +0.1322135476547459213732911312 * 15151324141414.412312232141241 = 2003210316403 +0.1322135476547459213732911312 * -132132245132134.1515123765412 = -17469672888505 +0.1322135476547459213732911312 * 141241241241241248267654747412 = 18674005579664314748578026521 +0.1322135476547459213732911312 * -149143276547656984948124912 = -19718761701218596539144441 +0.1322135476547459213732911312 * 0.1322135476547459213732911312 = 0 +0.1322135476547459213732911312 * -0.123912932193769965476541321 = 0 +0.1322135476547459213732911312 * 0 = 0 +0.1322135476547459213732911312 * 0.00 = 0 +0.1322135476547459213732911312 * -0 = 0 +0.1322135476547459213732911312 * -0.00 = 0 +0.1322135476547459213732911312 * 15 = 1 +0.1322135476547459213732911312 * -15 = -1 +0.1322135476547459213732911312 * 1 = 0 +0.1322135476547459213732911312 * -9 = -1 +0.1322135476547459213732911312 * 14.14 = 1 +0.1322135476547459213732911312 * -16.60 = -2 +0.1322135476547459213732911312 * 0.15 = 0 +0.1322135476547459213732911312 * -0.01 = 0 Number "-0.123912932193769965476541321" (scale 0) --0.123912932193769965476541321 × 15151324141414.412312232141241 = -1877445000980 --0.123912932193769965476541321 × -132132245132134.1515123765412 = 16372893931668 --0.123912932193769965476541321 × 141241241241241248267654747412 = -17501616348889832831364181429 --0.123912932193769965476541321 × -149143276547656984948124912 = 18480780714006502282899774 --0.123912932193769965476541321 × 0.1322135476547459213732911312 = 0 --0.123912932193769965476541321 × -0.123912932193769965476541321 = 0 --0.123912932193769965476541321 × 0 = 0 --0.123912932193769965476541321 × 0.00 = 0 --0.123912932193769965476541321 × -0 = 0 --0.123912932193769965476541321 × -0.00 = 0 --0.123912932193769965476541321 × 15 = -1 --0.123912932193769965476541321 × -15 = 1 --0.123912932193769965476541321 × 1 = 0 --0.123912932193769965476541321 × -9 = 1 --0.123912932193769965476541321 × 14.14 = -1 --0.123912932193769965476541321 × -16.60 = 2 --0.123912932193769965476541321 × 0.15 = 0 --0.123912932193769965476541321 × -0.01 = 0 +-0.123912932193769965476541321 * 15151324141414.412312232141241 = -1877445000980 +-0.123912932193769965476541321 * -132132245132134.1515123765412 = 16372893931668 +-0.123912932193769965476541321 * 141241241241241248267654747412 = -17501616348889832831364181429 +-0.123912932193769965476541321 * -149143276547656984948124912 = 18480780714006502282899774 +-0.123912932193769965476541321 * 0.1322135476547459213732911312 = 0 +-0.123912932193769965476541321 * -0.123912932193769965476541321 = 0 +-0.123912932193769965476541321 * 0 = 0 +-0.123912932193769965476541321 * 0.00 = 0 +-0.123912932193769965476541321 * -0 = 0 +-0.123912932193769965476541321 * -0.00 = 0 +-0.123912932193769965476541321 * 15 = -1 +-0.123912932193769965476541321 * -15 = 1 +-0.123912932193769965476541321 * 1 = 0 +-0.123912932193769965476541321 * -9 = 1 +-0.123912932193769965476541321 * 14.14 = -1 +-0.123912932193769965476541321 * -16.60 = 2 +-0.123912932193769965476541321 * 0.15 = 0 +-0.123912932193769965476541321 * -0.01 = 0 Number "15151324141414.412312232141241" (scale 10) -15151324141414.412312232141241 × 15151324141414.412312232141241 = 229562623238207178422472679.9262995876 -15151324141414.412312232141241 × -132132245132134.1515123765412 = -2001978475529791133885654151.5491331991 -15151324141414.412312232141241 × 141241241241241248267654747412 = 2139991828181755439048012256383179795538025.4097677632 -15151324141414.412312232141241 × -149143276547656984948124912 = -2259718126486161223119790826488981524974.8925816946 -15151324141414.412312232141241 × 0.1322135476547459213732911312 = 2003210316403.3967337164 -15151324141414.412312232141241 × -0.123912932193769965476541321 = -1877445000980.9140124713 -15151324141414.412312232141241 × 0 = 0.0000000000 -15151324141414.412312232141241 × 0.00 = 0.0000000000 -15151324141414.412312232141241 × -0 = 0.0000000000 -15151324141414.412312232141241 × -0.00 = 0.0000000000 -15151324141414.412312232141241 × 15 = 227269862121216.1846834821 -15151324141414.412312232141241 × -15 = -227269862121216.1846834821 -15151324141414.412312232141241 × 1 = 15151324141414.4123122321 -15151324141414.412312232141241 × -9 = -136361917272729.7108100892 -15151324141414.412312232141241 × 14.14 = 214239723359599.7900949624 -15151324141414.412312232141241 × -16.60 = -251511980747479.2443830535 -15151324141414.412312232141241 × 0.15 = 2272698621212.1618468348 -15151324141414.412312232141241 × -0.01 = -151513241414.1441231223 +15151324141414.412312232141241 * 15151324141414.412312232141241 = 229562623238207178422472679.9262995876 +15151324141414.412312232141241 * -132132245132134.1515123765412 = -2001978475529791133885654151.5491331991 +15151324141414.412312232141241 * 141241241241241248267654747412 = 2139991828181755439048012256383179795538025.4097677632 +15151324141414.412312232141241 * -149143276547656984948124912 = -2259718126486161223119790826488981524974.8925816946 +15151324141414.412312232141241 * 0.1322135476547459213732911312 = 2003210316403.3967337164 +15151324141414.412312232141241 * -0.123912932193769965476541321 = -1877445000980.9140124713 +15151324141414.412312232141241 * 0 = 0.0000000000 +15151324141414.412312232141241 * 0.00 = 0.0000000000 +15151324141414.412312232141241 * -0 = 0.0000000000 +15151324141414.412312232141241 * -0.00 = 0.0000000000 +15151324141414.412312232141241 * 15 = 227269862121216.1846834821 +15151324141414.412312232141241 * -15 = -227269862121216.1846834821 +15151324141414.412312232141241 * 1 = 15151324141414.4123122321 +15151324141414.412312232141241 * -9 = -136361917272729.7108100892 +15151324141414.412312232141241 * 14.14 = 214239723359599.7900949624 +15151324141414.412312232141241 * -16.60 = -251511980747479.2443830535 +15151324141414.412312232141241 * 0.15 = 2272698621212.1618468348 +15151324141414.412312232141241 * -0.01 = -151513241414.1441231223 Number "-132132245132134.1515123765412" (scale 10) --132132245132134.1515123765412 × 15151324141414.412312232141241 = -2001978475529791133885654151.5491331991 --132132245132134.1515123765412 × -132132245132134.1515123765412 = 17458930203658389178460349344.0776677900 --132132245132134.1515123765412 × 141241241241241248267654747412 = -18662522310454584290173879848464266332555498.5267202113 --132132245132134.1515123765412 × -149143276547656984948124912 = 19706635976604687211527336089051267200810.4158361143 --132132245132134.1515123765412 × 0.1322135476547459213732911312 = -17469672888505.9884334474 --132132245132134.1515123765412 × -0.123912932193769965476541321 = 16372893931668.7307088223 --132132245132134.1515123765412 × 0 = 0.0000000000 --132132245132134.1515123765412 × 0.00 = 0.0000000000 --132132245132134.1515123765412 × -0 = 0.0000000000 --132132245132134.1515123765412 × -0.00 = 0.0000000000 --132132245132134.1515123765412 × 15 = -1981983676982012.2726856481 --132132245132134.1515123765412 × -15 = 1981983676982012.2726856481 --132132245132134.1515123765412 × 1 = -132132245132134.1515123765 --132132245132134.1515123765412 × -9 = 1189190206189207.3636113888 --132132245132134.1515123765412 × 14.14 = -1868349946168376.9023850042 --132132245132134.1515123765412 × -16.60 = 2193395269193426.9151054505 --132132245132134.1515123765412 × 0.15 = -19819836769820.1227268564 --132132245132134.1515123765412 × -0.01 = 1321322451321.3415151237 +-132132245132134.1515123765412 * 15151324141414.412312232141241 = -2001978475529791133885654151.5491331991 +-132132245132134.1515123765412 * -132132245132134.1515123765412 = 17458930203658389178460349344.0776677900 +-132132245132134.1515123765412 * 141241241241241248267654747412 = -18662522310454584290173879848464266332555498.5267202113 +-132132245132134.1515123765412 * -149143276547656984948124912 = 19706635976604687211527336089051267200810.4158361143 +-132132245132134.1515123765412 * 0.1322135476547459213732911312 = -17469672888505.9884334474 +-132132245132134.1515123765412 * -0.123912932193769965476541321 = 16372893931668.7307088223 +-132132245132134.1515123765412 * 0 = 0.0000000000 +-132132245132134.1515123765412 * 0.00 = 0.0000000000 +-132132245132134.1515123765412 * -0 = 0.0000000000 +-132132245132134.1515123765412 * -0.00 = 0.0000000000 +-132132245132134.1515123765412 * 15 = -1981983676982012.2726856481 +-132132245132134.1515123765412 * -15 = 1981983676982012.2726856481 +-132132245132134.1515123765412 * 1 = -132132245132134.1515123765 +-132132245132134.1515123765412 * -9 = 1189190206189207.3636113888 +-132132245132134.1515123765412 * 14.14 = -1868349946168376.9023850042 +-132132245132134.1515123765412 * -16.60 = 2193395269193426.9151054505 +-132132245132134.1515123765412 * 0.15 = -19819836769820.1227268564 +-132132245132134.1515123765412 * -0.01 = 1321322451321.3415151237 Number "141241241241241248267654747412" (scale 10) -141241241241241248267654747412 × 15151324141414.412312232141241 = 2139991828181755439048012256383179795538025.4097677632 -141241241241241248267654747412 × -132132245132134.1515123765412 = -18662522310454584290173879848464266332555498.5267202113 -141241241241241248267654747412 × 141241241241241248267654747412 = 19949088227366507629622653233761071253230364164181520697744.0000000000 -141241241241241248267654747412 × -149143276547656984948124912 = -21065181502376778401476291731259854717478035244384727744.0000000000 -141241241241241248267654747412 × 0.1322135476547459213732911312 = 18674005579664314748578026521.9598901262 -141241241241241248267654747412 × -0.123912932193769965476541321 = -17501616348889832831364181429.7008871512 -141241241241241248267654747412 × 0 = 0.0000000000 -141241241241241248267654747412 × 0.00 = 0.0000000000 -141241241241241248267654747412 × -0 = 0.0000000000 -141241241241241248267654747412 × -0.00 = 0.0000000000 -141241241241241248267654747412 × 15 = 2118618618618618724014821211180.0000000000 -141241241241241248267654747412 × -15 = -2118618618618618724014821211180.0000000000 -141241241241241248267654747412 × 1 = 141241241241241248267654747412.0000000000 -141241241241241248267654747412 × -9 = -1271171171171171234408892726708.0000000000 -141241241241241248267654747412 × 14.14 = 1997151151151151250504638128405.6800000000 -141241241241241248267654747412 × -16.60 = -2344604604604604721243068807039.2000000000 -141241241241241248267654747412 × 0.15 = 21186186186186187240148212111.8000000000 -141241241241241248267654747412 × -0.01 = -1412412412412412482676547474.1200000000 +141241241241241248267654747412 * 15151324141414.412312232141241 = 2139991828181755439048012256383179795538025.4097677632 +141241241241241248267654747412 * -132132245132134.1515123765412 = -18662522310454584290173879848464266332555498.5267202113 +141241241241241248267654747412 * 141241241241241248267654747412 = 19949088227366507629622653233761071253230364164181520697744.0000000000 +141241241241241248267654747412 * -149143276547656984948124912 = -21065181502376778401476291731259854717478035244384727744.0000000000 +141241241241241248267654747412 * 0.1322135476547459213732911312 = 18674005579664314748578026521.9598901262 +141241241241241248267654747412 * -0.123912932193769965476541321 = -17501616348889832831364181429.7008871512 +141241241241241248267654747412 * 0 = 0.0000000000 +141241241241241248267654747412 * 0.00 = 0.0000000000 +141241241241241248267654747412 * -0 = 0.0000000000 +141241241241241248267654747412 * -0.00 = 0.0000000000 +141241241241241248267654747412 * 15 = 2118618618618618724014821211180.0000000000 +141241241241241248267654747412 * -15 = -2118618618618618724014821211180.0000000000 +141241241241241248267654747412 * 1 = 141241241241241248267654747412.0000000000 +141241241241241248267654747412 * -9 = -1271171171171171234408892726708.0000000000 +141241241241241248267654747412 * 14.14 = 1997151151151151250504638128405.6800000000 +141241241241241248267654747412 * -16.60 = -2344604604604604721243068807039.2000000000 +141241241241241248267654747412 * 0.15 = 21186186186186187240148212111.8000000000 +141241241241241248267654747412 * -0.01 = -1412412412412412482676547474.1200000000 Number "-149143276547656984948124912" (scale 10) --149143276547656984948124912 × 15151324141414.412312232141241 = -2259718126486161223119790826488981524974.8925816946 --149143276547656984948124912 × -132132245132134.1515123765412 = 19706635976604687211527336089051267200810.4158361143 --149143276547656984948124912 × 141241241241241248267654747412 = -21065181502376778401476291731259854717478035244384727744.0000000000 --149143276547656984948124912 × -149143276547656984948124912 = 22243716939370890018820252028254140421311664755007744.0000000000 --149143276547656984948124912 × 0.1322135476547459213732911312 = -19718761701218596539144441.0298753533 --149143276547656984948124912 × -0.123912932193769965476541321 = 18480780714006502282899774.5778544540 --149143276547656984948124912 × 0 = 0.0000000000 --149143276547656984948124912 × 0.00 = 0.0000000000 --149143276547656984948124912 × -0 = 0.0000000000 --149143276547656984948124912 × -0.00 = 0.0000000000 --149143276547656984948124912 × 15 = -2237149148214854774221873680.0000000000 --149143276547656984948124912 × -15 = 2237149148214854774221873680.0000000000 --149143276547656984948124912 × 1 = -149143276547656984948124912.0000000000 --149143276547656984948124912 × -9 = 1342289488928912864533124208.0000000000 --149143276547656984948124912 × 14.14 = -2108885930383869767166486255.6800000000 --149143276547656984948124912 × -16.60 = 2475778390691105950138873539.2000000000 --149143276547656984948124912 × 0.15 = -22371491482148547742218736.8000000000 --149143276547656984948124912 × -0.01 = 1491432765476569849481249.1200000000 +-149143276547656984948124912 * 15151324141414.412312232141241 = -2259718126486161223119790826488981524974.8925816946 +-149143276547656984948124912 * -132132245132134.1515123765412 = 19706635976604687211527336089051267200810.4158361143 +-149143276547656984948124912 * 141241241241241248267654747412 = -21065181502376778401476291731259854717478035244384727744.0000000000 +-149143276547656984948124912 * -149143276547656984948124912 = 22243716939370890018820252028254140421311664755007744.0000000000 +-149143276547656984948124912 * 0.1322135476547459213732911312 = -19718761701218596539144441.0298753533 +-149143276547656984948124912 * -0.123912932193769965476541321 = 18480780714006502282899774.5778544540 +-149143276547656984948124912 * 0 = 0.0000000000 +-149143276547656984948124912 * 0.00 = 0.0000000000 +-149143276547656984948124912 * -0 = 0.0000000000 +-149143276547656984948124912 * -0.00 = 0.0000000000 +-149143276547656984948124912 * 15 = -2237149148214854774221873680.0000000000 +-149143276547656984948124912 * -15 = 2237149148214854774221873680.0000000000 +-149143276547656984948124912 * 1 = -149143276547656984948124912.0000000000 +-149143276547656984948124912 * -9 = 1342289488928912864533124208.0000000000 +-149143276547656984948124912 * 14.14 = -2108885930383869767166486255.6800000000 +-149143276547656984948124912 * -16.60 = 2475778390691105950138873539.2000000000 +-149143276547656984948124912 * 0.15 = -22371491482148547742218736.8000000000 +-149143276547656984948124912 * -0.01 = 1491432765476569849481249.1200000000 Number "0.1322135476547459213732911312" (scale 10) -0.1322135476547459213732911312 × 15151324141414.412312232141241 = 2003210316403.3967337164 -0.1322135476547459213732911312 × -132132245132134.1515123765412 = -17469672888505.9884334474 -0.1322135476547459213732911312 × 141241241241241248267654747412 = 18674005579664314748578026521.9598901262 -0.1322135476547459213732911312 × -149143276547656984948124912 = -19718761701218596539144441.0298753533 -0.1322135476547459213732911312 × 0.1322135476547459213732911312 = 0.0174804221 -0.1322135476547459213732911312 × -0.123912932193769965476541321 = -0.0163829683 -0.1322135476547459213732911312 × 0 = 0.0000000000 -0.1322135476547459213732911312 × 0.00 = 0.0000000000 -0.1322135476547459213732911312 × -0 = 0.0000000000 -0.1322135476547459213732911312 × -0.00 = 0.0000000000 -0.1322135476547459213732911312 × 15 = 1.9832032148 -0.1322135476547459213732911312 × -15 = -1.9832032148 -0.1322135476547459213732911312 × 1 = 0.1322135476 -0.1322135476547459213732911312 × -9 = -1.1899219288 -0.1322135476547459213732911312 × 14.14 = 1.8694995638 -0.1322135476547459213732911312 × -16.60 = -2.1947448910 -0.1322135476547459213732911312 × 0.15 = 0.0198320321 -0.1322135476547459213732911312 × -0.01 = -0.0013221354 +0.1322135476547459213732911312 * 15151324141414.412312232141241 = 2003210316403.3967337164 +0.1322135476547459213732911312 * -132132245132134.1515123765412 = -17469672888505.9884334474 +0.1322135476547459213732911312 * 141241241241241248267654747412 = 18674005579664314748578026521.9598901262 +0.1322135476547459213732911312 * -149143276547656984948124912 = -19718761701218596539144441.0298753533 +0.1322135476547459213732911312 * 0.1322135476547459213732911312 = 0.0174804221 +0.1322135476547459213732911312 * -0.123912932193769965476541321 = -0.0163829683 +0.1322135476547459213732911312 * 0 = 0.0000000000 +0.1322135476547459213732911312 * 0.00 = 0.0000000000 +0.1322135476547459213732911312 * -0 = 0.0000000000 +0.1322135476547459213732911312 * -0.00 = 0.0000000000 +0.1322135476547459213732911312 * 15 = 1.9832032148 +0.1322135476547459213732911312 * -15 = -1.9832032148 +0.1322135476547459213732911312 * 1 = 0.1322135476 +0.1322135476547459213732911312 * -9 = -1.1899219288 +0.1322135476547459213732911312 * 14.14 = 1.8694995638 +0.1322135476547459213732911312 * -16.60 = -2.1947448910 +0.1322135476547459213732911312 * 0.15 = 0.0198320321 +0.1322135476547459213732911312 * -0.01 = -0.0013221354 Number "-0.123912932193769965476541321" (scale 10) --0.123912932193769965476541321 × 15151324141414.412312232141241 = -1877445000980.9140124713 --0.123912932193769965476541321 × -132132245132134.1515123765412 = 16372893931668.7307088223 --0.123912932193769965476541321 × 141241241241241248267654747412 = -17501616348889832831364181429.7008871512 --0.123912932193769965476541321 × -149143276547656984948124912 = 18480780714006502282899774.5778544540 --0.123912932193769965476541321 × 0.1322135476547459213732911312 = -0.0163829683 --0.123912932193769965476541321 × -0.123912932193769965476541321 = 0.0153544147 --0.123912932193769965476541321 × 0 = 0.0000000000 --0.123912932193769965476541321 × 0.00 = 0.0000000000 --0.123912932193769965476541321 × -0 = 0.0000000000 --0.123912932193769965476541321 × -0.00 = 0.0000000000 --0.123912932193769965476541321 × 15 = -1.8586939829 --0.123912932193769965476541321 × -15 = 1.8586939829 --0.123912932193769965476541321 × 1 = -0.1239129321 --0.123912932193769965476541321 × -9 = 1.1152163897 --0.123912932193769965476541321 × 14.14 = -1.7521288612 --0.123912932193769965476541321 × -16.60 = 2.0569546744 --0.123912932193769965476541321 × 0.15 = -0.0185869398 --0.123912932193769965476541321 × -0.01 = 0.0012391293 +-0.123912932193769965476541321 * 15151324141414.412312232141241 = -1877445000980.9140124713 +-0.123912932193769965476541321 * -132132245132134.1515123765412 = 16372893931668.7307088223 +-0.123912932193769965476541321 * 141241241241241248267654747412 = -17501616348889832831364181429.7008871512 +-0.123912932193769965476541321 * -149143276547656984948124912 = 18480780714006502282899774.5778544540 +-0.123912932193769965476541321 * 0.1322135476547459213732911312 = -0.0163829683 +-0.123912932193769965476541321 * -0.123912932193769965476541321 = 0.0153544147 +-0.123912932193769965476541321 * 0 = 0.0000000000 +-0.123912932193769965476541321 * 0.00 = 0.0000000000 +-0.123912932193769965476541321 * -0 = 0.0000000000 +-0.123912932193769965476541321 * -0.00 = 0.0000000000 +-0.123912932193769965476541321 * 15 = -1.8586939829 +-0.123912932193769965476541321 * -15 = 1.8586939829 +-0.123912932193769965476541321 * 1 = -0.1239129321 +-0.123912932193769965476541321 * -9 = 1.1152163897 +-0.123912932193769965476541321 * 14.14 = -1.7521288612 +-0.123912932193769965476541321 * -16.60 = 2.0569546744 +-0.123912932193769965476541321 * 0.15 = -0.0185869398 +-0.123912932193769965476541321 * -0.01 = 0.0012391293 diff --git a/ext/bcmath/tests/bcmul_zero.phpt b/ext/bcmath/tests/bcmul_zero.phpt index bf09eadf8aae2..cfae0c7190aa7 100644 --- a/ext/bcmath/tests/bcmul_zero.phpt +++ b/ext/bcmath/tests/bcmul_zero.phpt @@ -6,6 +6,7 @@ bcmath bcmath.scale=0 --FILE-- --EXPECT-- Number "0" (scale 0) - 0 × 0 = 0 - 0 × 0.00 = 0 - 0 × -0 = 0 - 0 × -0.00 = 0 - 0 × 15 = 0 - 0 × -15 = 0 - 0 × 1 = 0 - 0 × -9 = 0 - 0 × 14.14 = 0 - 0 × -16.60 = 0 - 0 × 0.15 = 0 - 0 × -0.01 = 0 - 0 × 15151324141414.412312232141241 = 0 - 0 × -132132245132134.1515123765412 = 0 - 0 × 141241241241241248267654747412 = 0 - 0 × -149143276547656984948124912 = 0 - 0 × 0.1322135476547459213732911312 = 0 - 0 × -0.123912932193769965476541321 = 0 +0 * 0 = 0 +0 * 0.00 = 0 +0 * -0 = 0 +0 * -0.00 = 0 +0 * 15 = 0 +0 * -15 = 0 +0 * 1 = 0 +0 * -9 = 0 +0 * 14.14 = 0 +0 * -16.60 = 0 +0 * 0.15 = 0 +0 * -0.01 = 0 +0 * 15151324141414.412312232141241 = 0 +0 * -132132245132134.1515123765412 = 0 +0 * 141241241241241248267654747412 = 0 +0 * -149143276547656984948124912 = 0 +0 * 0.1322135476547459213732911312 = 0 +0 * -0.123912932193769965476541321 = 0 Number "0.00" (scale 0) - 0.00 × 0 = 0 - 0.00 × 0.00 = 0 - 0.00 × -0 = 0 - 0.00 × -0.00 = 0 - 0.00 × 15 = 0 - 0.00 × -15 = 0 - 0.00 × 1 = 0 - 0.00 × -9 = 0 - 0.00 × 14.14 = 0 - 0.00 × -16.60 = 0 - 0.00 × 0.15 = 0 - 0.00 × -0.01 = 0 - 0.00 × 15151324141414.412312232141241 = 0 - 0.00 × -132132245132134.1515123765412 = 0 - 0.00 × 141241241241241248267654747412 = 0 - 0.00 × -149143276547656984948124912 = 0 - 0.00 × 0.1322135476547459213732911312 = 0 - 0.00 × -0.123912932193769965476541321 = 0 +0.00 * 0 = 0 +0.00 * 0.00 = 0 +0.00 * -0 = 0 +0.00 * -0.00 = 0 +0.00 * 15 = 0 +0.00 * -15 = 0 +0.00 * 1 = 0 +0.00 * -9 = 0 +0.00 * 14.14 = 0 +0.00 * -16.60 = 0 +0.00 * 0.15 = 0 +0.00 * -0.01 = 0 +0.00 * 15151324141414.412312232141241 = 0 +0.00 * -132132245132134.1515123765412 = 0 +0.00 * 141241241241241248267654747412 = 0 +0.00 * -149143276547656984948124912 = 0 +0.00 * 0.1322135476547459213732911312 = 0 +0.00 * -0.123912932193769965476541321 = 0 Number "-0" (scale 0) - -0 × 0 = 0 - -0 × 0.00 = 0 - -0 × -0 = 0 - -0 × -0.00 = 0 - -0 × 15 = 0 - -0 × -15 = 0 - -0 × 1 = 0 - -0 × -9 = 0 - -0 × 14.14 = 0 - -0 × -16.60 = 0 - -0 × 0.15 = 0 - -0 × -0.01 = 0 - -0 × 15151324141414.412312232141241 = 0 - -0 × -132132245132134.1515123765412 = 0 - -0 × 141241241241241248267654747412 = 0 - -0 × -149143276547656984948124912 = 0 - -0 × 0.1322135476547459213732911312 = 0 - -0 × -0.123912932193769965476541321 = 0 +-0 * 0 = 0 +-0 * 0.00 = 0 +-0 * -0 = 0 +-0 * -0.00 = 0 +-0 * 15 = 0 +-0 * -15 = 0 +-0 * 1 = 0 +-0 * -9 = 0 +-0 * 14.14 = 0 +-0 * -16.60 = 0 +-0 * 0.15 = 0 +-0 * -0.01 = 0 +-0 * 15151324141414.412312232141241 = 0 +-0 * -132132245132134.1515123765412 = 0 +-0 * 141241241241241248267654747412 = 0 +-0 * -149143276547656984948124912 = 0 +-0 * 0.1322135476547459213732911312 = 0 +-0 * -0.123912932193769965476541321 = 0 Number "-0.00" (scale 0) - -0.00 × 0 = 0 - -0.00 × 0.00 = 0 - -0.00 × -0 = 0 - -0.00 × -0.00 = 0 - -0.00 × 15 = 0 - -0.00 × -15 = 0 - -0.00 × 1 = 0 - -0.00 × -9 = 0 - -0.00 × 14.14 = 0 - -0.00 × -16.60 = 0 - -0.00 × 0.15 = 0 - -0.00 × -0.01 = 0 - -0.00 × 15151324141414.412312232141241 = 0 - -0.00 × -132132245132134.1515123765412 = 0 - -0.00 × 141241241241241248267654747412 = 0 - -0.00 × -149143276547656984948124912 = 0 - -0.00 × 0.1322135476547459213732911312 = 0 - -0.00 × -0.123912932193769965476541321 = 0 +-0.00 * 0 = 0 +-0.00 * 0.00 = 0 +-0.00 * -0 = 0 +-0.00 * -0.00 = 0 +-0.00 * 15 = 0 +-0.00 * -15 = 0 +-0.00 * 1 = 0 +-0.00 * -9 = 0 +-0.00 * 14.14 = 0 +-0.00 * -16.60 = 0 +-0.00 * 0.15 = 0 +-0.00 * -0.01 = 0 +-0.00 * 15151324141414.412312232141241 = 0 +-0.00 * -132132245132134.1515123765412 = 0 +-0.00 * 141241241241241248267654747412 = 0 +-0.00 * -149143276547656984948124912 = 0 +-0.00 * 0.1322135476547459213732911312 = 0 +-0.00 * -0.123912932193769965476541321 = 0 Number "0" (scale 10) - 0 × 0 = 0.0000000000 - 0 × 0.00 = 0.0000000000 - 0 × -0 = 0.0000000000 - 0 × -0.00 = 0.0000000000 - 0 × 15 = 0.0000000000 - 0 × -15 = 0.0000000000 - 0 × 1 = 0.0000000000 - 0 × -9 = 0.0000000000 - 0 × 14.14 = 0.0000000000 - 0 × -16.60 = 0.0000000000 - 0 × 0.15 = 0.0000000000 - 0 × -0.01 = 0.0000000000 - 0 × 15151324141414.412312232141241 = 0.0000000000 - 0 × -132132245132134.1515123765412 = 0.0000000000 - 0 × 141241241241241248267654747412 = 0.0000000000 - 0 × -149143276547656984948124912 = 0.0000000000 - 0 × 0.1322135476547459213732911312 = 0.0000000000 - 0 × -0.123912932193769965476541321 = 0.0000000000 +0 * 0 = 0.0000000000 +0 * 0.00 = 0.0000000000 +0 * -0 = 0.0000000000 +0 * -0.00 = 0.0000000000 +0 * 15 = 0.0000000000 +0 * -15 = 0.0000000000 +0 * 1 = 0.0000000000 +0 * -9 = 0.0000000000 +0 * 14.14 = 0.0000000000 +0 * -16.60 = 0.0000000000 +0 * 0.15 = 0.0000000000 +0 * -0.01 = 0.0000000000 +0 * 15151324141414.412312232141241 = 0.0000000000 +0 * -132132245132134.1515123765412 = 0.0000000000 +0 * 141241241241241248267654747412 = 0.0000000000 +0 * -149143276547656984948124912 = 0.0000000000 +0 * 0.1322135476547459213732911312 = 0.0000000000 +0 * -0.123912932193769965476541321 = 0.0000000000 Number "0.00" (scale 10) - 0.00 × 0 = 0.0000000000 - 0.00 × 0.00 = 0.0000000000 - 0.00 × -0 = 0.0000000000 - 0.00 × -0.00 = 0.0000000000 - 0.00 × 15 = 0.0000000000 - 0.00 × -15 = 0.0000000000 - 0.00 × 1 = 0.0000000000 - 0.00 × -9 = 0.0000000000 - 0.00 × 14.14 = 0.0000000000 - 0.00 × -16.60 = 0.0000000000 - 0.00 × 0.15 = 0.0000000000 - 0.00 × -0.01 = 0.0000000000 - 0.00 × 15151324141414.412312232141241 = 0.0000000000 - 0.00 × -132132245132134.1515123765412 = 0.0000000000 - 0.00 × 141241241241241248267654747412 = 0.0000000000 - 0.00 × -149143276547656984948124912 = 0.0000000000 - 0.00 × 0.1322135476547459213732911312 = 0.0000000000 - 0.00 × -0.123912932193769965476541321 = 0.0000000000 +0.00 * 0 = 0.0000000000 +0.00 * 0.00 = 0.0000000000 +0.00 * -0 = 0.0000000000 +0.00 * -0.00 = 0.0000000000 +0.00 * 15 = 0.0000000000 +0.00 * -15 = 0.0000000000 +0.00 * 1 = 0.0000000000 +0.00 * -9 = 0.0000000000 +0.00 * 14.14 = 0.0000000000 +0.00 * -16.60 = 0.0000000000 +0.00 * 0.15 = 0.0000000000 +0.00 * -0.01 = 0.0000000000 +0.00 * 15151324141414.412312232141241 = 0.0000000000 +0.00 * -132132245132134.1515123765412 = 0.0000000000 +0.00 * 141241241241241248267654747412 = 0.0000000000 +0.00 * -149143276547656984948124912 = 0.0000000000 +0.00 * 0.1322135476547459213732911312 = 0.0000000000 +0.00 * -0.123912932193769965476541321 = 0.0000000000 Number "-0" (scale 10) - -0 × 0 = 0.0000000000 - -0 × 0.00 = 0.0000000000 - -0 × -0 = 0.0000000000 - -0 × -0.00 = 0.0000000000 - -0 × 15 = 0.0000000000 - -0 × -15 = 0.0000000000 - -0 × 1 = 0.0000000000 - -0 × -9 = 0.0000000000 - -0 × 14.14 = 0.0000000000 - -0 × -16.60 = 0.0000000000 - -0 × 0.15 = 0.0000000000 - -0 × -0.01 = 0.0000000000 - -0 × 15151324141414.412312232141241 = 0.0000000000 - -0 × -132132245132134.1515123765412 = 0.0000000000 - -0 × 141241241241241248267654747412 = 0.0000000000 - -0 × -149143276547656984948124912 = 0.0000000000 - -0 × 0.1322135476547459213732911312 = 0.0000000000 - -0 × -0.123912932193769965476541321 = 0.0000000000 +-0 * 0 = 0.0000000000 +-0 * 0.00 = 0.0000000000 +-0 * -0 = 0.0000000000 +-0 * -0.00 = 0.0000000000 +-0 * 15 = 0.0000000000 +-0 * -15 = 0.0000000000 +-0 * 1 = 0.0000000000 +-0 * -9 = 0.0000000000 +-0 * 14.14 = 0.0000000000 +-0 * -16.60 = 0.0000000000 +-0 * 0.15 = 0.0000000000 +-0 * -0.01 = 0.0000000000 +-0 * 15151324141414.412312232141241 = 0.0000000000 +-0 * -132132245132134.1515123765412 = 0.0000000000 +-0 * 141241241241241248267654747412 = 0.0000000000 +-0 * -149143276547656984948124912 = 0.0000000000 +-0 * 0.1322135476547459213732911312 = 0.0000000000 +-0 * -0.123912932193769965476541321 = 0.0000000000 Number "-0.00" (scale 10) - -0.00 × 0 = 0.0000000000 - -0.00 × 0.00 = 0.0000000000 - -0.00 × -0 = 0.0000000000 - -0.00 × -0.00 = 0.0000000000 - -0.00 × 15 = 0.0000000000 - -0.00 × -15 = 0.0000000000 - -0.00 × 1 = 0.0000000000 - -0.00 × -9 = 0.0000000000 - -0.00 × 14.14 = 0.0000000000 - -0.00 × -16.60 = 0.0000000000 - -0.00 × 0.15 = 0.0000000000 - -0.00 × -0.01 = 0.0000000000 - -0.00 × 15151324141414.412312232141241 = 0.0000000000 - -0.00 × -132132245132134.1515123765412 = 0.0000000000 - -0.00 × 141241241241241248267654747412 = 0.0000000000 - -0.00 × -149143276547656984948124912 = 0.0000000000 - -0.00 × 0.1322135476547459213732911312 = 0.0000000000 - -0.00 × -0.123912932193769965476541321 = 0.0000000000 +-0.00 * 0 = 0.0000000000 +-0.00 * 0.00 = 0.0000000000 +-0.00 * -0 = 0.0000000000 +-0.00 * -0.00 = 0.0000000000 +-0.00 * 15 = 0.0000000000 +-0.00 * -15 = 0.0000000000 +-0.00 * 1 = 0.0000000000 +-0.00 * -9 = 0.0000000000 +-0.00 * 14.14 = 0.0000000000 +-0.00 * -16.60 = 0.0000000000 +-0.00 * 0.15 = 0.0000000000 +-0.00 * -0.01 = 0.0000000000 +-0.00 * 15151324141414.412312232141241 = 0.0000000000 +-0.00 * -132132245132134.1515123765412 = 0.0000000000 +-0.00 * 141241241241241248267654747412 = 0.0000000000 +-0.00 * -149143276547656984948124912 = 0.0000000000 +-0.00 * 0.1322135476547459213732911312 = 0.0000000000 +-0.00 * -0.123912932193769965476541321 = 0.0000000000 diff --git a/ext/bcmath/tests/bcpow.phpt b/ext/bcmath/tests/bcpow.phpt index 5c2f986cf555d..3d74668677958 100644 --- a/ext/bcmath/tests/bcpow.phpt +++ b/ext/bcmath/tests/bcpow.phpt @@ -6,6 +6,7 @@ bcmath bcmath.scale=0 --FILE-- --EXPECT-- Number "15" (scale 0) - 15 ** 15 = 437893890380859375 - 15 ** -15 = 0 - 15 ** 1 = 15 - 15 ** -9 = 0 - 15 ** 0 = 1 - 15 ** -0 = 1 - 15 ** 252 = 237135886481351297382468574917313144844970356302221777632832615638003070736580081217360793962070064247594576249396872345556164659881002366207912047265309059413892077092997608382858888266273629252398653205357976938870120670782142034597069710705445432682146079950147310455577098764479160308837890625 - 15 ** -112 = 0 +15 ** 15 = 437893890380859375 +15 ** -15 = 0 +15 ** 1 = 15 +15 ** -9 = 0 +15 ** 0 = 1 +15 ** -0 = 1 +15 ** 252 = 237135886481351297382468574917313144844970356302221777632832615638003070736580081217360793962070064247594576249396872345556164659881002366207912047265309059413892077092997608382858888266273629252398653205357976938870120670782142034597069710705445432682146079950147310455577098764479160308837890625 +15 ** -112 = 0 Number "-15" (scale 0) - -15 ** 15 = -437893890380859375 - -15 ** -15 = 0 - -15 ** 1 = -15 - -15 ** -9 = 0 - -15 ** 0 = 1 - -15 ** -0 = 1 - -15 ** 252 = 237135886481351297382468574917313144844970356302221777632832615638003070736580081217360793962070064247594576249396872345556164659881002366207912047265309059413892077092997608382858888266273629252398653205357976938870120670782142034597069710705445432682146079950147310455577098764479160308837890625 - -15 ** -112 = 0 +-15 ** 15 = -437893890380859375 +-15 ** -15 = 0 +-15 ** 1 = -15 +-15 ** -9 = 0 +-15 ** 0 = 1 +-15 ** -0 = 1 +-15 ** 252 = 237135886481351297382468574917313144844970356302221777632832615638003070736580081217360793962070064247594576249396872345556164659881002366207912047265309059413892077092997608382858888266273629252398653205357976938870120670782142034597069710705445432682146079950147310455577098764479160308837890625 +-15 ** -112 = 0 Number "1" (scale 0) - 1 ** 15 = 1 - 1 ** -15 = 1 - 1 ** 1 = 1 - 1 ** -9 = 1 - 1 ** 0 = 1 - 1 ** -0 = 1 - 1 ** 252 = 1 - 1 ** -112 = 1 +1 ** 15 = 1 +1 ** -15 = 1 +1 ** 1 = 1 +1 ** -9 = 1 +1 ** 0 = 1 +1 ** -0 = 1 +1 ** 252 = 1 +1 ** -112 = 1 Number "-9" (scale 0) - -9 ** 15 = -205891132094649 - -9 ** -15 = 0 - -9 ** 1 = -9 - -9 ** -9 = 0 - -9 ** 0 = 1 - -9 ** -0 = 1 - -9 ** 252 = 2945183635465464884233206633443008848559894187106131466268028902439028615518295534220079169301330491447962555905286712315981330452878058357582386904241524088181763471075659119460152769761830870007779820098802358876968679265201323425586410081 - -9 ** -112 = 0 +-9 ** 15 = -205891132094649 +-9 ** -15 = 0 +-9 ** 1 = -9 +-9 ** -9 = 0 +-9 ** 0 = 1 +-9 ** -0 = 1 +-9 ** 252 = 2945183635465464884233206633443008848559894187106131466268028902439028615518295534220079169301330491447962555905286712315981330452878058357582386904241524088181763471075659119460152769761830870007779820098802358876968679265201323425586410081 +-9 ** -112 = 0 Number "0" (scale 0) - 0 ** 15 = 0 - 0 ** -15 = 0 - 0 ** 1 = 0 - 0 ** -9 = 0 - 0 ** 0 = 1 - 0 ** -0 = 1 - 0 ** 252 = 0 - 0 ** -112 = 0 +0 ** 15 = 0 +0 ** -15 = 0 +0 ** 1 = 0 +0 ** -9 = 0 +0 ** 0 = 1 +0 ** -0 = 1 +0 ** 252 = 0 +0 ** -112 = 0 Number "-0" (scale 0) - -0 ** 15 = 0 - -0 ** -15 = 0 - -0 ** 1 = 0 - -0 ** -9 = 0 - -0 ** 0 = 1 - -0 ** -0 = 1 - -0 ** 252 = 0 - -0 ** -112 = 0 +-0 ** 15 = 0 +-0 ** -15 = 0 +-0 ** 1 = 0 +-0 ** -9 = 0 +-0 ** 0 = 1 +-0 ** -0 = 1 +-0 ** 252 = 0 +-0 ** -112 = 0 Number "252" (scale 0) - 252 ** 15 = 1049562032118382425513949173821472768 - 252 ** -15 = 0 - 252 ** 1 = 252 - 252 ** -9 = 0 - 252 ** 0 = 1 - 252 ** -0 = 1 - 252 ** 252 = 142212010733424647125806541813713973266552845448041013743767421605354690415544328196152173390963803494710443230142152775687771944805429044982729796870857181947776572826160793933424942988750037827638341986183789792079484880609013515717131451507203060282065264043070502125106179548342207047711204933650239424460841202157152719662980652213693426926863084348529493037513389175805577626219903234384208039735661457745854089305800218117427842428649306815115886661640301037762482527923343983853507875264930793965916131347421096416232894153340276842687468868552274843085150094307684610419227652811804917758213226496 - 252 ** -112 = 0 +252 ** 15 = 1049562032118382425513949173821472768 +252 ** -15 = 0 +252 ** 1 = 252 +252 ** -9 = 0 +252 ** 0 = 1 +252 ** -0 = 1 +252 ** 252 = 142212010733424647125806541813713973266552845448041013743767421605354690415544328196152173390963803494710443230142152775687771944805429044982729796870857181947776572826160793933424942988750037827638341986183789792079484880609013515717131451507203060282065264043070502125106179548342207047711204933650239424460841202157152719662980652213693426926863084348529493037513389175805577626219903234384208039735661457745854089305800218117427842428649306815115886661640301037762482527923343983853507875264930793965916131347421096416232894153340276842687468868552274843085150094307684610419227652811804917758213226496 +252 ** -112 = 0 Number "-112" (scale 0) - -112 ** 15 = -5473565759257037859954903482368 - -112 ** -15 = 0 - -112 ** 1 = -112 - -112 ** -9 = 0 - -112 ** 0 = 1 - -112 ** -0 = 1 - -112 ** 252 = 2528958559509291693508169626548016243760525615786379976651267082288161074806837567146354242426675448089179587223689918667106749284121965637887934532709154725528081671334320643858146400820666287506930741579829377389324701928200642059190071982670723834096616484481264403390509754202256821825886418273918096647296731861068941003342202311747852949747419032091731983573265045376333262301085406296848909763397511959941544798830761308589095475080050282796818166220650002245272286955283850226653729461037771414650027776147456 - -112 ** -112 = 0 +-112 ** 15 = -5473565759257037859954903482368 +-112 ** -15 = 0 +-112 ** 1 = -112 +-112 ** -9 = 0 +-112 ** 0 = 1 +-112 ** -0 = 1 +-112 ** 252 = 2528958559509291693508169626548016243760525615786379976651267082288161074806837567146354242426675448089179587223689918667106749284121965637887934532709154725528081671334320643858146400820666287506930741579829377389324701928200642059190071982670723834096616484481264403390509754202256821825886418273918096647296731861068941003342202311747852949747419032091731983573265045376333262301085406296848909763397511959941544798830761308589095475080050282796818166220650002245272286955283850226653729461037771414650027776147456 +-112 ** -112 = 0 Number "0.00" (scale 0) - 0.00 ** 15 = 0 - 0.00 ** -15 = 0 - 0.00 ** 1 = 0 - 0.00 ** -9 = 0 - 0.00 ** 0 = 1 - 0.00 ** -0 = 1 - 0.00 ** 252 = 0 - 0.00 ** -112 = 0 +0.00 ** 15 = 0 +0.00 ** -15 = 0 +0.00 ** 1 = 0 +0.00 ** -9 = 0 +0.00 ** 0 = 1 +0.00 ** -0 = 1 +0.00 ** 252 = 0 +0.00 ** -112 = 0 Number "-0.00" (scale 0) - -0.00 ** 15 = 0 - -0.00 ** -15 = 0 - -0.00 ** 1 = 0 - -0.00 ** -9 = 0 - -0.00 ** 0 = 1 - -0.00 ** -0 = 1 - -0.00 ** 252 = 0 - -0.00 ** -112 = 0 +-0.00 ** 15 = 0 +-0.00 ** -15 = 0 +-0.00 ** 1 = 0 +-0.00 ** -9 = 0 +-0.00 ** 0 = 1 +-0.00 ** -0 = 1 +-0.00 ** 252 = 0 +-0.00 ** -112 = 0 Number "14.14" (scale 0) - 14.14 ** 15 = 180609729388653367 - 14.14 ** -15 = 0 - 14.14 ** 1 = 14 - 14.14 ** -9 = 0 - 14.14 ** 0 = 1 - 14.14 ** -0 = 1 - 14.14 ** 252 = 81893830287657387446140079713887806093576884288543703328783802176508922753380870094003376900318176725198165627317176488631295332728458521626072637389422651709754634844150191850264235770478926203337416116264674564206565124289082609409927041547210316199545928823591027686585730497632744792533 - 14.14 ** -112 = 0 +14.14 ** 15 = 180609729388653367 +14.14 ** -15 = 0 +14.14 ** 1 = 14 +14.14 ** -9 = 0 +14.14 ** 0 = 1 +14.14 ** -0 = 1 +14.14 ** 252 = 81893830287657387446140079713887806093576884288543703328783802176508922753380870094003376900318176725198165627317176488631295332728458521626072637389422651709754634844150191850264235770478926203337416116264674564206565124289082609409927041547210316199545928823591027686585730497632744792533 +14.14 ** -112 = 0 Number "-16.60" (scale 0) -16.60 ** 15 = -2002725006700243463 @@ -162,24 +149,24 @@ Number "-16.60" (scale 0) -16.60 ** -112 = 0 Number "0.15" (scale 0) - 0.15 ** 15 = 0 - 0.15 ** -15 = 2283658260521 - 0.15 ** 1 = 0 - 0.15 ** -9 = 26012294 - 0.15 ** 0 = 1 - 0.15 ** -0 = 1 - 0.15 ** 252 = 0 - 0.15 ** -112 = 189574092538418764958341193234367215745086742520818271114560854632390900314942322598922704092 +0.15 ** 15 = 0 +0.15 ** -15 = 2283658260521 +0.15 ** 1 = 0 +0.15 ** -9 = 26012294 +0.15 ** 0 = 1 +0.15 ** -0 = 1 +0.15 ** 252 = 0 +0.15 ** -112 = 189574092538418764958341193234367215745086742520818271114560854632390900314942322598922704092 Number "-0.01" (scale 0) - -0.01 ** 15 = 0 - -0.01 ** -15 = -1000000000000000000000000000000 - -0.01 ** 1 = 0 - -0.01 ** -9 = -1000000000000000000 - -0.01 ** 0 = 1 - -0.01 ** -0 = 1 - -0.01 ** 252 = 0 - -0.01 ** -112 = 100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +-0.01 ** 15 = 0 +-0.01 ** -15 = -1000000000000000000000000000000 +-0.01 ** 1 = 0 +-0.01 ** -9 = -1000000000000000000 +-0.01 ** 0 = 1 +-0.01 ** -0 = 1 +-0.01 ** 252 = 0 +-0.01 ** -112 = 100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 Number "15151324141414.412312232141241" (scale 0) 15151324141414.412312232141241 ** 15 = 509048123991351801905481953476379185972789524506389464560948346272971876778908444213802402540123245924548973078757287880001162665191012187707496396738218203170247236816923480505943223846447785782345 @@ -242,114 +229,114 @@ Number "-0.123912932193769965476541321" (scale 0) -0.123912932193769965476541321 ** -112 = 372337687215014577843846097845819604950292238064034167723169672020440891758727112526694844172394015451 Number "15" (scale 10) - 15 ** 15 = 437893890380859375.0000000000 - 15 ** -15 = 0.0000000000 - 15 ** 1 = 15.0000000000 - 15 ** -9 = 0.0000000000 - 15 ** 0 = 1.0000000000 - 15 ** -0 = 1.0000000000 - 15 ** 252 = 237135886481351297382468574917313144844970356302221777632832615638003070736580081217360793962070064247594576249396872345556164659881002366207912047265309059413892077092997608382858888266273629252398653205357976938870120670782142034597069710705445432682146079950147310455577098764479160308837890625.0000000000 - 15 ** -112 = 0.0000000000 +15 ** 15 = 437893890380859375.0000000000 +15 ** -15 = 0.0000000000 +15 ** 1 = 15.0000000000 +15 ** -9 = 0.0000000000 +15 ** 0 = 1.0000000000 +15 ** -0 = 1.0000000000 +15 ** 252 = 237135886481351297382468574917313144844970356302221777632832615638003070736580081217360793962070064247594576249396872345556164659881002366207912047265309059413892077092997608382858888266273629252398653205357976938870120670782142034597069710705445432682146079950147310455577098764479160308837890625.0000000000 +15 ** -112 = 0.0000000000 Number "-15" (scale 10) - -15 ** 15 = -437893890380859375.0000000000 - -15 ** -15 = 0.0000000000 - -15 ** 1 = -15.0000000000 - -15 ** -9 = 0.0000000000 - -15 ** 0 = 1.0000000000 - -15 ** -0 = 1.0000000000 - -15 ** 252 = 237135886481351297382468574917313144844970356302221777632832615638003070736580081217360793962070064247594576249396872345556164659881002366207912047265309059413892077092997608382858888266273629252398653205357976938870120670782142034597069710705445432682146079950147310455577098764479160308837890625.0000000000 - -15 ** -112 = 0.0000000000 +-15 ** 15 = -437893890380859375.0000000000 +-15 ** -15 = 0.0000000000 +-15 ** 1 = -15.0000000000 +-15 ** -9 = 0.0000000000 +-15 ** 0 = 1.0000000000 +-15 ** -0 = 1.0000000000 +-15 ** 252 = 237135886481351297382468574917313144844970356302221777632832615638003070736580081217360793962070064247594576249396872345556164659881002366207912047265309059413892077092997608382858888266273629252398653205357976938870120670782142034597069710705445432682146079950147310455577098764479160308837890625.0000000000 +-15 ** -112 = 0.0000000000 Number "1" (scale 10) - 1 ** 15 = 1.0000000000 - 1 ** -15 = 1.0000000000 - 1 ** 1 = 1.0000000000 - 1 ** -9 = 1.0000000000 - 1 ** 0 = 1.0000000000 - 1 ** -0 = 1.0000000000 - 1 ** 252 = 1.0000000000 - 1 ** -112 = 1.0000000000 +1 ** 15 = 1.0000000000 +1 ** -15 = 1.0000000000 +1 ** 1 = 1.0000000000 +1 ** -9 = 1.0000000000 +1 ** 0 = 1.0000000000 +1 ** -0 = 1.0000000000 +1 ** 252 = 1.0000000000 +1 ** -112 = 1.0000000000 Number "-9" (scale 10) - -9 ** 15 = -205891132094649.0000000000 - -9 ** -15 = 0.0000000000 - -9 ** 1 = -9.0000000000 - -9 ** -9 = -0.0000000025 - -9 ** 0 = 1.0000000000 - -9 ** -0 = 1.0000000000 - -9 ** 252 = 2945183635465464884233206633443008848559894187106131466268028902439028615518295534220079169301330491447962555905286712315981330452878058357582386904241524088181763471075659119460152769761830870007779820098802358876968679265201323425586410081.0000000000 - -9 ** -112 = 0.0000000000 +-9 ** 15 = -205891132094649.0000000000 +-9 ** -15 = 0.0000000000 +-9 ** 1 = -9.0000000000 +-9 ** -9 = -0.0000000025 +-9 ** 0 = 1.0000000000 +-9 ** -0 = 1.0000000000 +-9 ** 252 = 2945183635465464884233206633443008848559894187106131466268028902439028615518295534220079169301330491447962555905286712315981330452878058357582386904241524088181763471075659119460152769761830870007779820098802358876968679265201323425586410081.0000000000 +-9 ** -112 = 0.0000000000 Number "0" (scale 10) - 0 ** 15 = 0.0000000000 - 0 ** -15 = 0.0000000000 - 0 ** 1 = 0.0000000000 - 0 ** -9 = 0.0000000000 - 0 ** 0 = 1.0000000000 - 0 ** -0 = 1.0000000000 - 0 ** 252 = 0.0000000000 - 0 ** -112 = 0.0000000000 +0 ** 15 = 0.0000000000 +0 ** -15 = 0.0000000000 +0 ** 1 = 0.0000000000 +0 ** -9 = 0.0000000000 +0 ** 0 = 1.0000000000 +0 ** -0 = 1.0000000000 +0 ** 252 = 0.0000000000 +0 ** -112 = 0.0000000000 Number "-0" (scale 10) - -0 ** 15 = 0.0000000000 - -0 ** -15 = 0.0000000000 - -0 ** 1 = 0.0000000000 - -0 ** -9 = 0.0000000000 - -0 ** 0 = 1.0000000000 - -0 ** -0 = 1.0000000000 - -0 ** 252 = 0.0000000000 - -0 ** -112 = 0.0000000000 +-0 ** 15 = 0.0000000000 +-0 ** -15 = 0.0000000000 +-0 ** 1 = 0.0000000000 +-0 ** -9 = 0.0000000000 +-0 ** 0 = 1.0000000000 +-0 ** -0 = 1.0000000000 +-0 ** 252 = 0.0000000000 +-0 ** -112 = 0.0000000000 Number "252" (scale 10) - 252 ** 15 = 1049562032118382425513949173821472768.0000000000 - 252 ** -15 = 0.0000000000 - 252 ** 1 = 252.0000000000 - 252 ** -9 = 0.0000000000 - 252 ** 0 = 1.0000000000 - 252 ** -0 = 1.0000000000 - 252 ** 252 = 142212010733424647125806541813713973266552845448041013743767421605354690415544328196152173390963803494710443230142152775687771944805429044982729796870857181947776572826160793933424942988750037827638341986183789792079484880609013515717131451507203060282065264043070502125106179548342207047711204933650239424460841202157152719662980652213693426926863084348529493037513389175805577626219903234384208039735661457745854089305800218117427842428649306815115886661640301037762482527923343983853507875264930793965916131347421096416232894153340276842687468868552274843085150094307684610419227652811804917758213226496.0000000000 - 252 ** -112 = 0.0000000000 +252 ** 15 = 1049562032118382425513949173821472768.0000000000 +252 ** -15 = 0.0000000000 +252 ** 1 = 252.0000000000 +252 ** -9 = 0.0000000000 +252 ** 0 = 1.0000000000 +252 ** -0 = 1.0000000000 +252 ** 252 = 142212010733424647125806541813713973266552845448041013743767421605354690415544328196152173390963803494710443230142152775687771944805429044982729796870857181947776572826160793933424942988750037827638341986183789792079484880609013515717131451507203060282065264043070502125106179548342207047711204933650239424460841202157152719662980652213693426926863084348529493037513389175805577626219903234384208039735661457745854089305800218117427842428649306815115886661640301037762482527923343983853507875264930793965916131347421096416232894153340276842687468868552274843085150094307684610419227652811804917758213226496.0000000000 +252 ** -112 = 0.0000000000 Number "-112" (scale 10) - -112 ** 15 = -5473565759257037859954903482368.0000000000 - -112 ** -15 = 0.0000000000 - -112 ** 1 = -112.0000000000 - -112 ** -9 = 0.0000000000 - -112 ** 0 = 1.0000000000 - -112 ** -0 = 1.0000000000 - -112 ** 252 = 2528958559509291693508169626548016243760525615786379976651267082288161074806837567146354242426675448089179587223689918667106749284121965637887934532709154725528081671334320643858146400820666287506930741579829377389324701928200642059190071982670723834096616484481264403390509754202256821825886418273918096647296731861068941003342202311747852949747419032091731983573265045376333262301085406296848909763397511959941544798830761308589095475080050282796818166220650002245272286955283850226653729461037771414650027776147456.0000000000 - -112 ** -112 = 0.0000000000 +-112 ** 15 = -5473565759257037859954903482368.0000000000 +-112 ** -15 = 0.0000000000 +-112 ** 1 = -112.0000000000 +-112 ** -9 = 0.0000000000 +-112 ** 0 = 1.0000000000 +-112 ** -0 = 1.0000000000 +-112 ** 252 = 2528958559509291693508169626548016243760525615786379976651267082288161074806837567146354242426675448089179587223689918667106749284121965637887934532709154725528081671334320643858146400820666287506930741579829377389324701928200642059190071982670723834096616484481264403390509754202256821825886418273918096647296731861068941003342202311747852949747419032091731983573265045376333262301085406296848909763397511959941544798830761308589095475080050282796818166220650002245272286955283850226653729461037771414650027776147456.0000000000 +-112 ** -112 = 0.0000000000 Number "0.00" (scale 10) - 0.00 ** 15 = 0.0000000000 - 0.00 ** -15 = 0.0000000000 - 0.00 ** 1 = 0.0000000000 - 0.00 ** -9 = 0.0000000000 - 0.00 ** 0 = 1.0000000000 - 0.00 ** -0 = 1.0000000000 - 0.00 ** 252 = 0.0000000000 - 0.00 ** -112 = 0.0000000000 +0.00 ** 15 = 0.0000000000 +0.00 ** -15 = 0.0000000000 +0.00 ** 1 = 0.0000000000 +0.00 ** -9 = 0.0000000000 +0.00 ** 0 = 1.0000000000 +0.00 ** -0 = 1.0000000000 +0.00 ** 252 = 0.0000000000 +0.00 ** -112 = 0.0000000000 Number "-0.00" (scale 10) - -0.00 ** 15 = 0.0000000000 - -0.00 ** -15 = 0.0000000000 - -0.00 ** 1 = 0.0000000000 - -0.00 ** -9 = 0.0000000000 - -0.00 ** 0 = 1.0000000000 - -0.00 ** -0 = 1.0000000000 - -0.00 ** 252 = 0.0000000000 - -0.00 ** -112 = 0.0000000000 +-0.00 ** 15 = 0.0000000000 +-0.00 ** -15 = 0.0000000000 +-0.00 ** 1 = 0.0000000000 +-0.00 ** -9 = 0.0000000000 +-0.00 ** 0 = 1.0000000000 +-0.00 ** -0 = 1.0000000000 +-0.00 ** 252 = 0.0000000000 +-0.00 ** -112 = 0.0000000000 Number "14.14" (scale 10) - 14.14 ** 15 = 180609729388653367.2586094856 - 14.14 ** -15 = 0.0000000000 - 14.14 ** 1 = 14.1400000000 - 14.14 ** -9 = 0.0000000000 - 14.14 ** 0 = 1.0000000000 - 14.14 ** -0 = 1.0000000000 - 14.14 ** 252 = 81893830287657387446140079713887806093576884288543703328783802176508922753380870094003376900318176725198165627317176488631295332728458521626072637389422651709754634844150191850264235770478926203337416116264674564206565124289082609409927041547210316199545928823591027686585730497632744792533.0727815413 - 14.14 ** -112 = 0.0000000000 +14.14 ** 15 = 180609729388653367.2586094856 +14.14 ** -15 = 0.0000000000 +14.14 ** 1 = 14.1400000000 +14.14 ** -9 = 0.0000000000 +14.14 ** 0 = 1.0000000000 +14.14 ** -0 = 1.0000000000 +14.14 ** 252 = 81893830287657387446140079713887806093576884288543703328783802176508922753380870094003376900318176725198165627317176488631295332728458521626072637389422651709754634844150191850264235770478926203337416116264674564206565124289082609409927041547210316199545928823591027686585730497632744792533.0727815413 +14.14 ** -112 = 0.0000000000 Number "-16.60" (scale 10) -16.60 ** 15 = -2002725006700243463.1471178615 @@ -362,24 +349,24 @@ Number "-16.60" (scale 10) -16.60 ** -112 = 0.0000000000 Number "0.15" (scale 10) - 0.15 ** 15 = 0.0000000000 - 0.15 ** -15 = 2283658260521.1672220051 - 0.15 ** 1 = 0.1500000000 - 0.15 ** -9 = 26012294.8737489203 - 0.15 ** 0 = 1.0000000000 - 0.15 ** -0 = 1.0000000000 - 0.15 ** 252 = 0.0000000000 - 0.15 ** -112 = 189574092538418764958341193234367215745086742520818271114560854632390900314942322598922704092.1046205530 +0.15 ** 15 = 0.0000000000 +0.15 ** -15 = 2283658260521.1672220051 +0.15 ** 1 = 0.1500000000 +0.15 ** -9 = 26012294.8737489203 +0.15 ** 0 = 1.0000000000 +0.15 ** -0 = 1.0000000000 +0.15 ** 252 = 0.0000000000 +0.15 ** -112 = 189574092538418764958341193234367215745086742520818271114560854632390900314942322598922704092.1046205530 Number "-0.01" (scale 10) - -0.01 ** 15 = 0.0000000000 - -0.01 ** -15 = -1000000000000000000000000000000.0000000000 - -0.01 ** 1 = -0.0100000000 - -0.01 ** -9 = -1000000000000000000.0000000000 - -0.01 ** 0 = 1.0000000000 - -0.01 ** -0 = 1.0000000000 - -0.01 ** 252 = 0.0000000000 - -0.01 ** -112 = 100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000.0000000000 +-0.01 ** 15 = 0.0000000000 +-0.01 ** -15 = -1000000000000000000000000000000.0000000000 +-0.01 ** 1 = -0.0100000000 +-0.01 ** -9 = -1000000000000000000.0000000000 +-0.01 ** 0 = 1.0000000000 +-0.01 ** -0 = 1.0000000000 +-0.01 ** 252 = 0.0000000000 +-0.01 ** -112 = 100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000.0000000000 Number "15151324141414.412312232141241" (scale 10) 15151324141414.412312232141241 ** 15 = 509048123991351801905481953476379185972789524506389464560948346272971876778908444213802402540123245924548973078757287880001162665191012187707496396738218203170247236816923480505943223846447785782345.3558894965 diff --git a/ext/bcmath/tests/bcpow_large_numbers.phpt b/ext/bcmath/tests/bcpow_large_numbers.phpt index 3b1e21656fec6..a4f8613e77dc5 100644 --- a/ext/bcmath/tests/bcpow_large_numbers.phpt +++ b/ext/bcmath/tests/bcpow_large_numbers.phpt @@ -6,6 +6,7 @@ bcmath bcmath.scale=0 --FILE-- --EXPECT-- Number "252" (scale 0) - 252 ** 252 = 142212010733424647125806541813713973266552845448041013743767421605354690415544328196152173390963803494710443230142152775687771944805429044982729796870857181947776572826160793933424942988750037827638341986183789792079484880609013515717131451507203060282065264043070502125106179548342207047711204933650239424460841202157152719662980652213693426926863084348529493037513389175805577626219903234384208039735661457745854089305800218117427842428649306815115886661640301037762482527923343983853507875264930793965916131347421096416232894153340276842687468868552274843085150094307684610419227652811804917758213226496 - 252 ** -112 = 0 +252 ** 252 = 142212010733424647125806541813713973266552845448041013743767421605354690415544328196152173390963803494710443230142152775687771944805429044982729796870857181947776572826160793933424942988750037827638341986183789792079484880609013515717131451507203060282065264043070502125106179548342207047711204933650239424460841202157152719662980652213693426926863084348529493037513389175805577626219903234384208039735661457745854089305800218117427842428649306815115886661640301037762482527923343983853507875264930793965916131347421096416232894153340276842687468868552274843085150094307684610419227652811804917758213226496 +252 ** -112 = 0 Number "-112" (scale 0) - -112 ** 252 = 2528958559509291693508169626548016243760525615786379976651267082288161074806837567146354242426675448089179587223689918667106749284121965637887934532709154725528081671334320643858146400820666287506930741579829377389324701928200642059190071982670723834096616484481264403390509754202256821825886418273918096647296731861068941003342202311747852949747419032091731983573265045376333262301085406296848909763397511959941544798830761308589095475080050282796818166220650002245272286955283850226653729461037771414650027776147456 - -112 ** -112 = 0 +-112 ** 252 = 2528958559509291693508169626548016243760525615786379976651267082288161074806837567146354242426675448089179587223689918667106749284121965637887934532709154725528081671334320643858146400820666287506930741579829377389324701928200642059190071982670723834096616484481264403390509754202256821825886418273918096647296731861068941003342202311747852949747419032091731983573265045376333262301085406296848909763397511959941544798830761308589095475080050282796818166220650002245272286955283850226653729461037771414650027776147456 +-112 ** -112 = 0 Number "0.00" (scale 0) - 0.00 ** 252 = 0 - 0.00 ** -112 = 0 +0.00 ** 252 = 0 +0.00 ** -112 = 0 Number "-0.00" (scale 0) - -0.00 ** 252 = 0 - -0.00 ** -112 = 0 +-0.00 ** 252 = 0 +-0.00 ** -112 = 0 Number "14.14" (scale 0) - 14.14 ** 252 = 81893830287657387446140079713887806093576884288543703328783802176508922753380870094003376900318176725198165627317176488631295332728458521626072637389422651709754634844150191850264235770478926203337416116264674564206565124289082609409927041547210316199545928823591027686585730497632744792533 - 14.14 ** -112 = 0 +14.14 ** 252 = 81893830287657387446140079713887806093576884288543703328783802176508922753380870094003376900318176725198165627317176488631295332728458521626072637389422651709754634844150191850264235770478926203337416116264674564206565124289082609409927041547210316199545928823591027686585730497632744792533 +14.14 ** -112 = 0 Number "-16.60" (scale 0) -16.60 ** 252 = 29325011162031531635050775473043742335712717807162139294189975794596377719994688259393390430325862997866008694776131070878139493075620575422701181905723221059535177378476880731856824922247604302185770818227621273103971150596854313288134126369153196254990016237048145067458027194360617116808917107675683822643 -16.60 ** -112 = 0 Number "0.15" (scale 0) - 0.15 ** 252 = 0 - 0.15 ** -112 = 189574092538418764958341193234367215745086742520818271114560854632390900314942322598922704092 +0.15 ** 252 = 0 +0.15 ** -112 = 189574092538418764958341193234367215745086742520818271114560854632390900314942322598922704092 Number "-0.01" (scale 0) - -0.01 ** 252 = 0 - -0.01 ** -112 = 100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +-0.01 ** 252 = 0 +-0.01 ** -112 = 100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 Number "15151324141414.412312232141241" (scale 0) 15151324141414.412312232141241 ** 252 = 2975421749795666718292864311407249970705086081437807395789379168718267809761515926216519710525556923711393180871882349125480337759668727402072958238900666362552341750552695988372017271582392491705356316948514737089205360282499880482512926893561832567935188520485154057479922893292233844872682027689029924296957873832086320362860520134654280058518517337570653996385278714198685752823835453817905306636319703719003676343516921560023010996505106467350842109482615346014981820723775172695392986401597801626150692206539756529644889137926049906575290564959396735953680592250779460130816876807757766338263686270020029393453575181327870591265373834140347848891333472452106266668645850397235968389042220027274496640159090815418483309643657324273121448493101717217140617069517287371864653153681358830190414615833078002577453411141597016583358385430394744450538495805740402488576124870572258200605831119008100984519684993455060646872766261382240383564392178883974453450433114215183488267147681395487265404247208352661495181304031822061114406175030677886104508679211172804603630316447723815907701460914622481206853022006681302191940743481903991732602477879503644713688600025822484351386994709104484371310424352144611218737196401824457866949669228902625541115988570606278592188602331451576075786613348336629409301707863923798082511203519536680273830467529869070112013346223720130183581189201489843066803035998524636580843999168622007134798723860720169157200004627398709928941733609441557160972211113022692009799237864185615460855228045985383589616750868474559577038584404446390706055987175018852877810774653462856565006598191028334508282011970034047209214176244147503985386832987247129380772291221015035166871079932982021644848487302418889155646720341011763574205760582552545432674974794783974025401318074084939141860755094923101801284442989344181743012614781021983935394731085008059924819771193595363859258571474767439534580638568746666210621240873673676940762489862112336626521441471577301366647762037305798100798711822457474507172500970023127288841824797039587587687760406935930088932018738492033507792817250533066953710174207685876451854460620309225706829752706450285622677922594957647037672524232255747269667789144401086986842640538153043741101238245322300993710394384754508967946211337487952324876892016919924636143376046118565299301806000686710931777881411145696867371682466218379864851343043041312758162391699150775018231599537746501756924961427444527995061269251565547747098676254156910141573235165420989417824245466381006116578002121746837672733849938657667872006918460874232266046864354612969306512425002050502769904919642157609172541701550215596501139800180259552618049103708500764672848369198536220300039766241517053637402993685274740246644140211865650547971680391614831119804648079596819224703795536455681460692071824945358084847698465553826334065350185771802401947633785300181386909348829848309501929340612695571623266869616638304357843374880496058625355636022120527400443841025788264209843812042625792300865583082505414465908017500188208987693716855836263772885824776988984333362684311002647195832946927199653846403980218407171091513992332604667414925751436017212580993860794349764631915036822374405575551253454423848395310883501116565831195963321659796880685759075194666868292856205113353111159407896940446955956749209 @@ -98,36 +85,36 @@ Number "-0.123912932193769965476541321" (scale 0) -0.123912932193769965476541321 ** -112 = 372337687215014577843846097845819604950292238064034167723169672020440891758727112526694844172394015451 Number "252" (scale 10) - 252 ** 252 = 142212010733424647125806541813713973266552845448041013743767421605354690415544328196152173390963803494710443230142152775687771944805429044982729796870857181947776572826160793933424942988750037827638341986183789792079484880609013515717131451507203060282065264043070502125106179548342207047711204933650239424460841202157152719662980652213693426926863084348529493037513389175805577626219903234384208039735661457745854089305800218117427842428649306815115886661640301037762482527923343983853507875264930793965916131347421096416232894153340276842687468868552274843085150094307684610419227652811804917758213226496.0000000000 - 252 ** -112 = 0.0000000000 +252 ** 252 = 142212010733424647125806541813713973266552845448041013743767421605354690415544328196152173390963803494710443230142152775687771944805429044982729796870857181947776572826160793933424942988750037827638341986183789792079484880609013515717131451507203060282065264043070502125106179548342207047711204933650239424460841202157152719662980652213693426926863084348529493037513389175805577626219903234384208039735661457745854089305800218117427842428649306815115886661640301037762482527923343983853507875264930793965916131347421096416232894153340276842687468868552274843085150094307684610419227652811804917758213226496.0000000000 +252 ** -112 = 0.0000000000 Number "-112" (scale 10) - -112 ** 252 = 2528958559509291693508169626548016243760525615786379976651267082288161074806837567146354242426675448089179587223689918667106749284121965637887934532709154725528081671334320643858146400820666287506930741579829377389324701928200642059190071982670723834096616484481264403390509754202256821825886418273918096647296731861068941003342202311747852949747419032091731983573265045376333262301085406296848909763397511959941544798830761308589095475080050282796818166220650002245272286955283850226653729461037771414650027776147456.0000000000 - -112 ** -112 = 0.0000000000 +-112 ** 252 = 2528958559509291693508169626548016243760525615786379976651267082288161074806837567146354242426675448089179587223689918667106749284121965637887934532709154725528081671334320643858146400820666287506930741579829377389324701928200642059190071982670723834096616484481264403390509754202256821825886418273918096647296731861068941003342202311747852949747419032091731983573265045376333262301085406296848909763397511959941544798830761308589095475080050282796818166220650002245272286955283850226653729461037771414650027776147456.0000000000 +-112 ** -112 = 0.0000000000 Number "0.00" (scale 10) - 0.00 ** 252 = 0.0000000000 - 0.00 ** -112 = 0.0000000000 +0.00 ** 252 = 0.0000000000 +0.00 ** -112 = 0.0000000000 Number "-0.00" (scale 10) - -0.00 ** 252 = 0.0000000000 - -0.00 ** -112 = 0.0000000000 +-0.00 ** 252 = 0.0000000000 +-0.00 ** -112 = 0.0000000000 Number "14.14" (scale 10) - 14.14 ** 252 = 81893830287657387446140079713887806093576884288543703328783802176508922753380870094003376900318176725198165627317176488631295332728458521626072637389422651709754634844150191850264235770478926203337416116264674564206565124289082609409927041547210316199545928823591027686585730497632744792533.0727815413 - 14.14 ** -112 = 0.0000000000 +14.14 ** 252 = 81893830287657387446140079713887806093576884288543703328783802176508922753380870094003376900318176725198165627317176488631295332728458521626072637389422651709754634844150191850264235770478926203337416116264674564206565124289082609409927041547210316199545928823591027686585730497632744792533.0727815413 +14.14 ** -112 = 0.0000000000 Number "-16.60" (scale 10) -16.60 ** 252 = 29325011162031531635050775473043742335712717807162139294189975794596377719994688259393390430325862997866008694776131070878139493075620575422701181905723221059535177378476880731856824922247604302185770818227621273103971150596854313288134126369153196254990016237048145067458027194360617116808917107675683822643.7551838996 -16.60 ** -112 = 0.0000000000 Number "0.15" (scale 10) - 0.15 ** 252 = 0.0000000000 - 0.15 ** -112 = 189574092538418764958341193234367215745086742520818271114560854632390900314942322598922704092.1046205530 +0.15 ** 252 = 0.0000000000 +0.15 ** -112 = 189574092538418764958341193234367215745086742520818271114560854632390900314942322598922704092.1046205530 Number "-0.01" (scale 10) - -0.01 ** 252 = 0.0000000000 - -0.01 ** -112 = 100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000.0000000000 +-0.01 ** 252 = 0.0000000000 +-0.01 ** -112 = 100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000.0000000000 Number "15151324141414.412312232141241" (scale 10) 15151324141414.412312232141241 ** 252 = 2975421749795666718292864311407249970705086081437807395789379168718267809761515926216519710525556923711393180871882349125480337759668727402072958238900666362552341750552695988372017271582392491705356316948514737089205360282499880482512926893561832567935188520485154057479922893292233844872682027689029924296957873832086320362860520134654280058518517337570653996385278714198685752823835453817905306636319703719003676343516921560023010996505106467350842109482615346014981820723775172695392986401597801626150692206539756529644889137926049906575290564959396735953680592250779460130816876807757766338263686270020029393453575181327870591265373834140347848891333472452106266668645850397235968389042220027274496640159090815418483309643657324273121448493101717217140617069517287371864653153681358830190414615833078002577453411141597016583358385430394744450538495805740402488576124870572258200605831119008100984519684993455060646872766261382240383564392178883974453450433114215183488267147681395487265404247208352661495181304031822061114406175030677886104508679211172804603630316447723815907701460914622481206853022006681302191940743481903991732602477879503644713688600025822484351386994709104484371310424352144611218737196401824457866949669228902625541115988570606278592188602331451576075786613348336629409301707863923798082511203519536680273830467529869070112013346223720130183581189201489843066803035998524636580843999168622007134798723860720169157200004627398709928941733609441557160972211113022692009799237864185615460855228045985383589616750868474559577038584404446390706055987175018852877810774653462856565006598191028334508282011970034047209214176244147503985386832987247129380772291221015035166871079932982021644848487302418889155646720341011763574205760582552545432674974794783974025401318074084939141860755094923101801284442989344181743012614781021983935394731085008059924819771193595363859258571474767439534580638568746666210621240873673676940762489862112336626521441471577301366647762037305798100798711822457474507172500970023127288841824797039587587687760406935930088932018738492033507792817250533066953710174207685876451854460620309225706829752706450285622677922594957647037672524232255747269667789144401086986842640538153043741101238245322300993710394384754508967946211337487952324876892016919924636143376046118565299301806000686710931777881411145696867371682466218379864851343043041312758162391699150775018231599537746501756924961427444527995061269251565547747098676254156910141573235165420989417824245466381006116578002121746837672733849938657667872006918460874232266046864354612969306512425002050502769904919642157609172541701550215596501139800180259552618049103708500764672848369198536220300039766241517053637402993685274740246644140211865650547971680391614831119804648079596819224703795536455681460692071824945358084847698465553826334065350185771802401947633785300181386909348829848309501929340612695571623266869616638304357843374880496058625355636022120527400443841025788264209843812042625792300865583082505414465908017500188208987693716855836263772885824776988984333362684311002647195832946927199653846403980218407171091513992332604667414925751436017212580993860794349764631915036822374405575551253454423848395310883501116565831195963321659796880685759075194666868292856205113353111159407896940446955956749209.1357309004 diff --git a/ext/bcmath/tests/bcsub.phpt b/ext/bcmath/tests/bcsub.phpt index ded2041fc9946..746c2f4e0bd0d 100644 --- a/ext/bcmath/tests/bcsub.phpt +++ b/ext/bcmath/tests/bcsub.phpt @@ -6,6 +6,7 @@ bcmath bcmath.scale=0 --FILE-- --EXPECT-- Number "15" (scale 0) - 15 - 15 = 0 - 15 - -15 = 30 - 15 - 1 = 14 - 15 - -9 = 24 - 15 - 14.14 = 0 - 15 - -16.60 = 31 - 15 - 0.15 = 14 - 15 - -0.01 = 15 - 15 - 0 = 15 - 15 - 0.00 = 15 - 15 - -0 = 15 - 15 - -0.00 = 15 - 15 - 15151324141414.412312232141241 = -15151324141399 - 15 - -132132245132134.1515123765412 = 132132245132149 - 15 - 141241241241241248267654747412 = -141241241241241248267654747397 - 15 - -149143276547656984948124912 = 149143276547656984948124927 - 15 - 0.1322135476547459213732911312 = 14 - 15 - -0.123912932193769965476541321 = 15 +15 - 15 = 0 +15 - -15 = 30 +15 - 1 = 14 +15 - -9 = 24 +15 - 14.14 = 0 +15 - -16.60 = 31 +15 - 0.15 = 14 +15 - -0.01 = 15 +15 - 0 = 15 +15 - 0.00 = 15 +15 - -0 = 15 +15 - -0.00 = 15 +15 - 15151324141414.412312232141241 = -15151324141399 +15 - -132132245132134.1515123765412 = 132132245132149 +15 - 141241241241241248267654747412 = -141241241241241248267654747397 +15 - -149143276547656984948124912 = 149143276547656984948124927 +15 - 0.1322135476547459213732911312 = 14 +15 - -0.123912932193769965476541321 = 15 Number "-15" (scale 0) - -15 - 15 = -30 - -15 - -15 = 0 - -15 - 1 = -16 - -15 - -9 = -6 - -15 - 14.14 = -29 - -15 - -16.60 = 1 - -15 - 0.15 = -15 - -15 - -0.01 = -14 - -15 - 0 = -15 - -15 - 0.00 = -15 - -15 - -0 = -15 - -15 - -0.00 = -15 - -15 - 15151324141414.412312232141241 = -15151324141429 - -15 - -132132245132134.1515123765412 = 132132245132119 - -15 - 141241241241241248267654747412 = -141241241241241248267654747427 - -15 - -149143276547656984948124912 = 149143276547656984948124897 - -15 - 0.1322135476547459213732911312 = -15 - -15 - -0.123912932193769965476541321 = -14 +-15 - 15 = -30 +-15 - -15 = 0 +-15 - 1 = -16 +-15 - -9 = -6 +-15 - 14.14 = -29 +-15 - -16.60 = 1 +-15 - 0.15 = -15 +-15 - -0.01 = -14 +-15 - 0 = -15 +-15 - 0.00 = -15 +-15 - -0 = -15 +-15 - -0.00 = -15 +-15 - 15151324141414.412312232141241 = -15151324141429 +-15 - -132132245132134.1515123765412 = 132132245132119 +-15 - 141241241241241248267654747412 = -141241241241241248267654747427 +-15 - -149143276547656984948124912 = 149143276547656984948124897 +-15 - 0.1322135476547459213732911312 = -15 +-15 - -0.123912932193769965476541321 = -14 Number "1" (scale 0) - 1 - 15 = -14 - 1 - -15 = 16 - 1 - 1 = 0 - 1 - -9 = 10 - 1 - 14.14 = -13 - 1 - -16.60 = 17 - 1 - 0.15 = 0 - 1 - -0.01 = 1 - 1 - 0 = 1 - 1 - 0.00 = 1 - 1 - -0 = 1 - 1 - -0.00 = 1 - 1 - 15151324141414.412312232141241 = -15151324141413 - 1 - -132132245132134.1515123765412 = 132132245132135 - 1 - 141241241241241248267654747412 = -141241241241241248267654747411 - 1 - -149143276547656984948124912 = 149143276547656984948124913 - 1 - 0.1322135476547459213732911312 = 0 - 1 - -0.123912932193769965476541321 = 1 +1 - 15 = -14 +1 - -15 = 16 +1 - 1 = 0 +1 - -9 = 10 +1 - 14.14 = -13 +1 - -16.60 = 17 +1 - 0.15 = 0 +1 - -0.01 = 1 +1 - 0 = 1 +1 - 0.00 = 1 +1 - -0 = 1 +1 - -0.00 = 1 +1 - 15151324141414.412312232141241 = -15151324141413 +1 - -132132245132134.1515123765412 = 132132245132135 +1 - 141241241241241248267654747412 = -141241241241241248267654747411 +1 - -149143276547656984948124912 = 149143276547656984948124913 +1 - 0.1322135476547459213732911312 = 0 +1 - -0.123912932193769965476541321 = 1 Number "-9" (scale 0) - -9 - 15 = -24 - -9 - -15 = 6 - -9 - 1 = -10 - -9 - -9 = 0 - -9 - 14.14 = -23 - -9 - -16.60 = 7 - -9 - 0.15 = -9 - -9 - -0.01 = -8 - -9 - 0 = -9 - -9 - 0.00 = -9 - -9 - -0 = -9 - -9 - -0.00 = -9 - -9 - 15151324141414.412312232141241 = -15151324141423 - -9 - -132132245132134.1515123765412 = 132132245132125 - -9 - 141241241241241248267654747412 = -141241241241241248267654747421 - -9 - -149143276547656984948124912 = 149143276547656984948124903 - -9 - 0.1322135476547459213732911312 = -9 - -9 - -0.123912932193769965476541321 = -8 +-9 - 15 = -24 +-9 - -15 = 6 +-9 - 1 = -10 +-9 - -9 = 0 +-9 - 14.14 = -23 +-9 - -16.60 = 7 +-9 - 0.15 = -9 +-9 - -0.01 = -8 +-9 - 0 = -9 +-9 - 0.00 = -9 +-9 - -0 = -9 +-9 - -0.00 = -9 +-9 - 15151324141414.412312232141241 = -15151324141423 +-9 - -132132245132134.1515123765412 = 132132245132125 +-9 - 141241241241241248267654747412 = -141241241241241248267654747421 +-9 - -149143276547656984948124912 = 149143276547656984948124903 +-9 - 0.1322135476547459213732911312 = -9 +-9 - -0.123912932193769965476541321 = -8 Number "14.14" (scale 0) - 14.14 - 15 = 0 - 14.14 - -15 = 29 - 14.14 - 1 = 13 - 14.14 - -9 = 23 - 14.14 - 14.14 = 0 - 14.14 - -16.60 = 30 - 14.14 - 0.15 = 13 - 14.14 - -0.01 = 14 - 14.14 - 0 = 14 - 14.14 - 0.00 = 14 - 14.14 - -0 = 14 - 14.14 - -0.00 = 14 - 14.14 - 15151324141414.412312232141241 = -15151324141400 - 14.14 - -132132245132134.1515123765412 = 132132245132148 - 14.14 - 141241241241241248267654747412 = -141241241241241248267654747397 - 14.14 - -149143276547656984948124912 = 149143276547656984948124926 - 14.14 - 0.1322135476547459213732911312 = 14 - 14.14 - -0.123912932193769965476541321 = 14 +14.14 - 15 = 0 +14.14 - -15 = 29 +14.14 - 1 = 13 +14.14 - -9 = 23 +14.14 - 14.14 = 0 +14.14 - -16.60 = 30 +14.14 - 0.15 = 13 +14.14 - -0.01 = 14 +14.14 - 0 = 14 +14.14 - 0.00 = 14 +14.14 - -0 = 14 +14.14 - -0.00 = 14 +14.14 - 15151324141414.412312232141241 = -15151324141400 +14.14 - -132132245132134.1515123765412 = 132132245132148 +14.14 - 141241241241241248267654747412 = -141241241241241248267654747397 +14.14 - -149143276547656984948124912 = 149143276547656984948124926 +14.14 - 0.1322135476547459213732911312 = 14 +14.14 - -0.123912932193769965476541321 = 14 Number "-16.60" (scale 0) -16.60 - 15 = -31 @@ -161,144 +147,144 @@ Number "-16.60" (scale 0) -16.60 - -0.123912932193769965476541321 = -16 Number "0.15" (scale 0) - 0.15 - 15 = -14 - 0.15 - -15 = 15 - 0.15 - 1 = 0 - 0.15 - -9 = 9 - 0.15 - 14.14 = -13 - 0.15 - -16.60 = 16 - 0.15 - 0.15 = 0 - 0.15 - -0.01 = 0 - 0.15 - 0 = 0 - 0.15 - 0.00 = 0 - 0.15 - -0 = 0 - 0.15 - -0.00 = 0 - 0.15 - 15151324141414.412312232141241 = -15151324141414 - 0.15 - -132132245132134.1515123765412 = 132132245132134 - 0.15 - 141241241241241248267654747412 = -141241241241241248267654747411 - 0.15 - -149143276547656984948124912 = 149143276547656984948124912 - 0.15 - 0.1322135476547459213732911312 = 0 - 0.15 - -0.123912932193769965476541321 = 0 +0.15 - 15 = -14 +0.15 - -15 = 15 +0.15 - 1 = 0 +0.15 - -9 = 9 +0.15 - 14.14 = -13 +0.15 - -16.60 = 16 +0.15 - 0.15 = 0 +0.15 - -0.01 = 0 +0.15 - 0 = 0 +0.15 - 0.00 = 0 +0.15 - -0 = 0 +0.15 - -0.00 = 0 +0.15 - 15151324141414.412312232141241 = -15151324141414 +0.15 - -132132245132134.1515123765412 = 132132245132134 +0.15 - 141241241241241248267654747412 = -141241241241241248267654747411 +0.15 - -149143276547656984948124912 = 149143276547656984948124912 +0.15 - 0.1322135476547459213732911312 = 0 +0.15 - -0.123912932193769965476541321 = 0 Number "-0.01" (scale 0) - -0.01 - 15 = -15 - -0.01 - -15 = 14 - -0.01 - 1 = -1 - -0.01 - -9 = 8 - -0.01 - 14.14 = -14 - -0.01 - -16.60 = 16 - -0.01 - 0.15 = 0 - -0.01 - -0.01 = 0 - -0.01 - 0 = 0 - -0.01 - 0.00 = 0 - -0.01 - -0 = 0 - -0.01 - -0.00 = 0 - -0.01 - 15151324141414.412312232141241 = -15151324141414 - -0.01 - -132132245132134.1515123765412 = 132132245132134 - -0.01 - 141241241241241248267654747412 = -141241241241241248267654747412 - -0.01 - -149143276547656984948124912 = 149143276547656984948124911 - -0.01 - 0.1322135476547459213732911312 = 0 - -0.01 - -0.123912932193769965476541321 = 0 +-0.01 - 15 = -15 +-0.01 - -15 = 14 +-0.01 - 1 = -1 +-0.01 - -9 = 8 +-0.01 - 14.14 = -14 +-0.01 - -16.60 = 16 +-0.01 - 0.15 = 0 +-0.01 - -0.01 = 0 +-0.01 - 0 = 0 +-0.01 - 0.00 = 0 +-0.01 - -0 = 0 +-0.01 - -0.00 = 0 +-0.01 - 15151324141414.412312232141241 = -15151324141414 +-0.01 - -132132245132134.1515123765412 = 132132245132134 +-0.01 - 141241241241241248267654747412 = -141241241241241248267654747412 +-0.01 - -149143276547656984948124912 = 149143276547656984948124911 +-0.01 - 0.1322135476547459213732911312 = 0 +-0.01 - -0.123912932193769965476541321 = 0 Number "15" (scale 10) - 15 - 15 = 0.0000000000 - 15 - -15 = 30.0000000000 - 15 - 1 = 14.0000000000 - 15 - -9 = 24.0000000000 - 15 - 14.14 = 0.8600000000 - 15 - -16.60 = 31.6000000000 - 15 - 0.15 = 14.8500000000 - 15 - -0.01 = 15.0100000000 - 15 - 0 = 15.0000000000 - 15 - 0.00 = 15.0000000000 - 15 - -0 = 15.0000000000 - 15 - -0.00 = 15.0000000000 - 15 - 15151324141414.412312232141241 = -15151324141399.4123122321 - 15 - -132132245132134.1515123765412 = 132132245132149.1515123765 - 15 - 141241241241241248267654747412 = -141241241241241248267654747397.0000000000 - 15 - -149143276547656984948124912 = 149143276547656984948124927.0000000000 - 15 - 0.1322135476547459213732911312 = 14.8677864523 - 15 - -0.123912932193769965476541321 = 15.1239129321 +15 - 15 = 0.0000000000 +15 - -15 = 30.0000000000 +15 - 1 = 14.0000000000 +15 - -9 = 24.0000000000 +15 - 14.14 = 0.8600000000 +15 - -16.60 = 31.6000000000 +15 - 0.15 = 14.8500000000 +15 - -0.01 = 15.0100000000 +15 - 0 = 15.0000000000 +15 - 0.00 = 15.0000000000 +15 - -0 = 15.0000000000 +15 - -0.00 = 15.0000000000 +15 - 15151324141414.412312232141241 = -15151324141399.4123122321 +15 - -132132245132134.1515123765412 = 132132245132149.1515123765 +15 - 141241241241241248267654747412 = -141241241241241248267654747397.0000000000 +15 - -149143276547656984948124912 = 149143276547656984948124927.0000000000 +15 - 0.1322135476547459213732911312 = 14.8677864523 +15 - -0.123912932193769965476541321 = 15.1239129321 Number "-15" (scale 10) - -15 - 15 = -30.0000000000 - -15 - -15 = 0.0000000000 - -15 - 1 = -16.0000000000 - -15 - -9 = -6.0000000000 - -15 - 14.14 = -29.1400000000 - -15 - -16.60 = 1.6000000000 - -15 - 0.15 = -15.1500000000 - -15 - -0.01 = -14.9900000000 - -15 - 0 = -15.0000000000 - -15 - 0.00 = -15.0000000000 - -15 - -0 = -15.0000000000 - -15 - -0.00 = -15.0000000000 - -15 - 15151324141414.412312232141241 = -15151324141429.4123122321 - -15 - -132132245132134.1515123765412 = 132132245132119.1515123765 - -15 - 141241241241241248267654747412 = -141241241241241248267654747427.0000000000 - -15 - -149143276547656984948124912 = 149143276547656984948124897.0000000000 - -15 - 0.1322135476547459213732911312 = -15.1322135476 - -15 - -0.123912932193769965476541321 = -14.8760870678 +-15 - 15 = -30.0000000000 +-15 - -15 = 0.0000000000 +-15 - 1 = -16.0000000000 +-15 - -9 = -6.0000000000 +-15 - 14.14 = -29.1400000000 +-15 - -16.60 = 1.6000000000 +-15 - 0.15 = -15.1500000000 +-15 - -0.01 = -14.9900000000 +-15 - 0 = -15.0000000000 +-15 - 0.00 = -15.0000000000 +-15 - -0 = -15.0000000000 +-15 - -0.00 = -15.0000000000 +-15 - 15151324141414.412312232141241 = -15151324141429.4123122321 +-15 - -132132245132134.1515123765412 = 132132245132119.1515123765 +-15 - 141241241241241248267654747412 = -141241241241241248267654747427.0000000000 +-15 - -149143276547656984948124912 = 149143276547656984948124897.0000000000 +-15 - 0.1322135476547459213732911312 = -15.1322135476 +-15 - -0.123912932193769965476541321 = -14.8760870678 Number "1" (scale 10) - 1 - 15 = -14.0000000000 - 1 - -15 = 16.0000000000 - 1 - 1 = 0.0000000000 - 1 - -9 = 10.0000000000 - 1 - 14.14 = -13.1400000000 - 1 - -16.60 = 17.6000000000 - 1 - 0.15 = 0.8500000000 - 1 - -0.01 = 1.0100000000 - 1 - 0 = 1.0000000000 - 1 - 0.00 = 1.0000000000 - 1 - -0 = 1.0000000000 - 1 - -0.00 = 1.0000000000 - 1 - 15151324141414.412312232141241 = -15151324141413.4123122321 - 1 - -132132245132134.1515123765412 = 132132245132135.1515123765 - 1 - 141241241241241248267654747412 = -141241241241241248267654747411.0000000000 - 1 - -149143276547656984948124912 = 149143276547656984948124913.0000000000 - 1 - 0.1322135476547459213732911312 = 0.8677864523 - 1 - -0.123912932193769965476541321 = 1.1239129321 +1 - 15 = -14.0000000000 +1 - -15 = 16.0000000000 +1 - 1 = 0.0000000000 +1 - -9 = 10.0000000000 +1 - 14.14 = -13.1400000000 +1 - -16.60 = 17.6000000000 +1 - 0.15 = 0.8500000000 +1 - -0.01 = 1.0100000000 +1 - 0 = 1.0000000000 +1 - 0.00 = 1.0000000000 +1 - -0 = 1.0000000000 +1 - -0.00 = 1.0000000000 +1 - 15151324141414.412312232141241 = -15151324141413.4123122321 +1 - -132132245132134.1515123765412 = 132132245132135.1515123765 +1 - 141241241241241248267654747412 = -141241241241241248267654747411.0000000000 +1 - -149143276547656984948124912 = 149143276547656984948124913.0000000000 +1 - 0.1322135476547459213732911312 = 0.8677864523 +1 - -0.123912932193769965476541321 = 1.1239129321 Number "-9" (scale 10) - -9 - 15 = -24.0000000000 - -9 - -15 = 6.0000000000 - -9 - 1 = -10.0000000000 - -9 - -9 = 0.0000000000 - -9 - 14.14 = -23.1400000000 - -9 - -16.60 = 7.6000000000 - -9 - 0.15 = -9.1500000000 - -9 - -0.01 = -8.9900000000 - -9 - 0 = -9.0000000000 - -9 - 0.00 = -9.0000000000 - -9 - -0 = -9.0000000000 - -9 - -0.00 = -9.0000000000 - -9 - 15151324141414.412312232141241 = -15151324141423.4123122321 - -9 - -132132245132134.1515123765412 = 132132245132125.1515123765 - -9 - 141241241241241248267654747412 = -141241241241241248267654747421.0000000000 - -9 - -149143276547656984948124912 = 149143276547656984948124903.0000000000 - -9 - 0.1322135476547459213732911312 = -9.1322135476 - -9 - -0.123912932193769965476541321 = -8.8760870678 +-9 - 15 = -24.0000000000 +-9 - -15 = 6.0000000000 +-9 - 1 = -10.0000000000 +-9 - -9 = 0.0000000000 +-9 - 14.14 = -23.1400000000 +-9 - -16.60 = 7.6000000000 +-9 - 0.15 = -9.1500000000 +-9 - -0.01 = -8.9900000000 +-9 - 0 = -9.0000000000 +-9 - 0.00 = -9.0000000000 +-9 - -0 = -9.0000000000 +-9 - -0.00 = -9.0000000000 +-9 - 15151324141414.412312232141241 = -15151324141423.4123122321 +-9 - -132132245132134.1515123765412 = 132132245132125.1515123765 +-9 - 141241241241241248267654747412 = -141241241241241248267654747421.0000000000 +-9 - -149143276547656984948124912 = 149143276547656984948124903.0000000000 +-9 - 0.1322135476547459213732911312 = -9.1322135476 +-9 - -0.123912932193769965476541321 = -8.8760870678 Number "14.14" (scale 10) - 14.14 - 15 = -0.8600000000 - 14.14 - -15 = 29.1400000000 - 14.14 - 1 = 13.1400000000 - 14.14 - -9 = 23.1400000000 - 14.14 - 14.14 = 0.0000000000 - 14.14 - -16.60 = 30.7400000000 - 14.14 - 0.15 = 13.9900000000 - 14.14 - -0.01 = 14.1500000000 - 14.14 - 0 = 14.1400000000 - 14.14 - 0.00 = 14.1400000000 - 14.14 - -0 = 14.1400000000 - 14.14 - -0.00 = 14.1400000000 - 14.14 - 15151324141414.412312232141241 = -15151324141400.2723122321 - 14.14 - -132132245132134.1515123765412 = 132132245132148.2915123765 - 14.14 - 141241241241241248267654747412 = -141241241241241248267654747397.8600000000 - 14.14 - -149143276547656984948124912 = 149143276547656984948124926.1400000000 - 14.14 - 0.1322135476547459213732911312 = 14.0077864523 - 14.14 - -0.123912932193769965476541321 = 14.2639129321 +14.14 - 15 = -0.8600000000 +14.14 - -15 = 29.1400000000 +14.14 - 1 = 13.1400000000 +14.14 - -9 = 23.1400000000 +14.14 - 14.14 = 0.0000000000 +14.14 - -16.60 = 30.7400000000 +14.14 - 0.15 = 13.9900000000 +14.14 - -0.01 = 14.1500000000 +14.14 - 0 = 14.1400000000 +14.14 - 0.00 = 14.1400000000 +14.14 - -0 = 14.1400000000 +14.14 - -0.00 = 14.1400000000 +14.14 - 15151324141414.412312232141241 = -15151324141400.2723122321 +14.14 - -132132245132134.1515123765412 = 132132245132148.2915123765 +14.14 - 141241241241241248267654747412 = -141241241241241248267654747397.8600000000 +14.14 - -149143276547656984948124912 = 149143276547656984948124926.1400000000 +14.14 - 0.1322135476547459213732911312 = 14.0077864523 +14.14 - -0.123912932193769965476541321 = 14.2639129321 Number "-16.60" (scale 10) -16.60 - 15 = -31.6000000000 @@ -321,41 +307,41 @@ Number "-16.60" (scale 10) -16.60 - -0.123912932193769965476541321 = -16.4760870678 Number "0.15" (scale 10) - 0.15 - 15 = -14.8500000000 - 0.15 - -15 = 15.1500000000 - 0.15 - 1 = -0.8500000000 - 0.15 - -9 = 9.1500000000 - 0.15 - 14.14 = -13.9900000000 - 0.15 - -16.60 = 16.7500000000 - 0.15 - 0.15 = 0.0000000000 - 0.15 - -0.01 = 0.1600000000 - 0.15 - 0 = 0.1500000000 - 0.15 - 0.00 = 0.1500000000 - 0.15 - -0 = 0.1500000000 - 0.15 - -0.00 = 0.1500000000 - 0.15 - 15151324141414.412312232141241 = -15151324141414.2623122321 - 0.15 - -132132245132134.1515123765412 = 132132245132134.3015123765 - 0.15 - 141241241241241248267654747412 = -141241241241241248267654747411.8500000000 - 0.15 - -149143276547656984948124912 = 149143276547656984948124912.1500000000 - 0.15 - 0.1322135476547459213732911312 = 0.0177864523 - 0.15 - -0.123912932193769965476541321 = 0.2739129321 +0.15 - 15 = -14.8500000000 +0.15 - -15 = 15.1500000000 +0.15 - 1 = -0.8500000000 +0.15 - -9 = 9.1500000000 +0.15 - 14.14 = -13.9900000000 +0.15 - -16.60 = 16.7500000000 +0.15 - 0.15 = 0.0000000000 +0.15 - -0.01 = 0.1600000000 +0.15 - 0 = 0.1500000000 +0.15 - 0.00 = 0.1500000000 +0.15 - -0 = 0.1500000000 +0.15 - -0.00 = 0.1500000000 +0.15 - 15151324141414.412312232141241 = -15151324141414.2623122321 +0.15 - -132132245132134.1515123765412 = 132132245132134.3015123765 +0.15 - 141241241241241248267654747412 = -141241241241241248267654747411.8500000000 +0.15 - -149143276547656984948124912 = 149143276547656984948124912.1500000000 +0.15 - 0.1322135476547459213732911312 = 0.0177864523 +0.15 - -0.123912932193769965476541321 = 0.2739129321 Number "-0.01" (scale 10) - -0.01 - 15 = -15.0100000000 - -0.01 - -15 = 14.9900000000 - -0.01 - 1 = -1.0100000000 - -0.01 - -9 = 8.9900000000 - -0.01 - 14.14 = -14.1500000000 - -0.01 - -16.60 = 16.5900000000 - -0.01 - 0.15 = -0.1600000000 - -0.01 - -0.01 = 0.0000000000 - -0.01 - 0 = -0.0100000000 - -0.01 - 0.00 = -0.0100000000 - -0.01 - -0 = -0.0100000000 - -0.01 - -0.00 = -0.0100000000 - -0.01 - 15151324141414.412312232141241 = -15151324141414.4223122321 - -0.01 - -132132245132134.1515123765412 = 132132245132134.1415123765 - -0.01 - 141241241241241248267654747412 = -141241241241241248267654747412.0100000000 - -0.01 - -149143276547656984948124912 = 149143276547656984948124911.9900000000 - -0.01 - 0.1322135476547459213732911312 = -0.1422135476 - -0.01 - -0.123912932193769965476541321 = 0.1139129321 +-0.01 - 15 = -15.0100000000 +-0.01 - -15 = 14.9900000000 +-0.01 - 1 = -1.0100000000 +-0.01 - -9 = 8.9900000000 +-0.01 - 14.14 = -14.1500000000 +-0.01 - -16.60 = 16.5900000000 +-0.01 - 0.15 = -0.1600000000 +-0.01 - -0.01 = 0.0000000000 +-0.01 - 0 = -0.0100000000 +-0.01 - 0.00 = -0.0100000000 +-0.01 - -0 = -0.0100000000 +-0.01 - -0.00 = -0.0100000000 +-0.01 - 15151324141414.412312232141241 = -15151324141414.4223122321 +-0.01 - -132132245132134.1515123765412 = 132132245132134.1415123765 +-0.01 - 141241241241241248267654747412 = -141241241241241248267654747412.0100000000 +-0.01 - -149143276547656984948124912 = 149143276547656984948124911.9900000000 +-0.01 - 0.1322135476547459213732911312 = -0.1422135476 +-0.01 - -0.123912932193769965476541321 = 0.1139129321 diff --git a/ext/bcmath/tests/bcsub_large_numbers.phpt b/ext/bcmath/tests/bcsub_large_numbers.phpt index 37def98d83046..e42e7150b7aa0 100644 --- a/ext/bcmath/tests/bcsub_large_numbers.phpt +++ b/ext/bcmath/tests/bcsub_large_numbers.phpt @@ -6,6 +6,7 @@ bcmath bcmath.scale=0 --FILE-- --EXPECT-- Number "15151324141414.412312232141241" (scale 0) -15151324141414.412312232141241 + 15151324141414.412312232141241 = 0 -15151324141414.412312232141241 + -132132245132134.1515123765412 = 147283569273548 -15151324141414.412312232141241 + 141241241241241248267654747412 = -141241241241241233116330605997 -15151324141414.412312232141241 + -149143276547656984948124912 = 149143276547672136272266326 -15151324141414.412312232141241 + 0.1322135476547459213732911312 = 15151324141414 -15151324141414.412312232141241 + -0.123912932193769965476541321 = 15151324141414 -15151324141414.412312232141241 + 0 = 15151324141414 -15151324141414.412312232141241 + 0.00 = 15151324141414 -15151324141414.412312232141241 + -0 = 15151324141414 -15151324141414.412312232141241 + -0.00 = 15151324141414 -15151324141414.412312232141241 + 15 = 15151324141399 -15151324141414.412312232141241 + -15 = 15151324141429 -15151324141414.412312232141241 + 1 = 15151324141413 -15151324141414.412312232141241 + -9 = 15151324141423 -15151324141414.412312232141241 + 14.14 = 15151324141400 -15151324141414.412312232141241 + -16.60 = 15151324141431 -15151324141414.412312232141241 + 0.15 = 15151324141414 -15151324141414.412312232141241 + -0.01 = 15151324141414 +15151324141414.412312232141241 - 15151324141414.412312232141241 = 0 +15151324141414.412312232141241 - -132132245132134.1515123765412 = 147283569273548 +15151324141414.412312232141241 - 141241241241241248267654747412 = -141241241241241233116330605997 +15151324141414.412312232141241 - -149143276547656984948124912 = 149143276547672136272266326 +15151324141414.412312232141241 - 0.1322135476547459213732911312 = 15151324141414 +15151324141414.412312232141241 - -0.123912932193769965476541321 = 15151324141414 +15151324141414.412312232141241 - 0 = 15151324141414 +15151324141414.412312232141241 - 0.00 = 15151324141414 +15151324141414.412312232141241 - -0 = 15151324141414 +15151324141414.412312232141241 - -0.00 = 15151324141414 +15151324141414.412312232141241 - 15 = 15151324141399 +15151324141414.412312232141241 - -15 = 15151324141429 +15151324141414.412312232141241 - 1 = 15151324141413 +15151324141414.412312232141241 - -9 = 15151324141423 +15151324141414.412312232141241 - 14.14 = 15151324141400 +15151324141414.412312232141241 - -16.60 = 15151324141431 +15151324141414.412312232141241 - 0.15 = 15151324141414 +15151324141414.412312232141241 - -0.01 = 15151324141414 Number "-132132245132134.1515123765412" (scale 0) --132132245132134.1515123765412 + 15151324141414.412312232141241 = -147283569273548 --132132245132134.1515123765412 + -132132245132134.1515123765412 = 0 --132132245132134.1515123765412 + 141241241241241248267654747412 = -141241241241241380399899879546 --132132245132134.1515123765412 + -149143276547656984948124912 = 149143276547524852702992777 --132132245132134.1515123765412 + 0.1322135476547459213732911312 = -132132245132134 --132132245132134.1515123765412 + -0.123912932193769965476541321 = -132132245132134 --132132245132134.1515123765412 + 0 = -132132245132134 --132132245132134.1515123765412 + 0.00 = -132132245132134 --132132245132134.1515123765412 + -0 = -132132245132134 --132132245132134.1515123765412 + -0.00 = -132132245132134 --132132245132134.1515123765412 + 15 = -132132245132149 --132132245132134.1515123765412 + -15 = -132132245132119 --132132245132134.1515123765412 + 1 = -132132245132135 --132132245132134.1515123765412 + -9 = -132132245132125 --132132245132134.1515123765412 + 14.14 = -132132245132148 --132132245132134.1515123765412 + -16.60 = -132132245132117 --132132245132134.1515123765412 + 0.15 = -132132245132134 --132132245132134.1515123765412 + -0.01 = -132132245132134 +-132132245132134.1515123765412 - 15151324141414.412312232141241 = -147283569273548 +-132132245132134.1515123765412 - -132132245132134.1515123765412 = 0 +-132132245132134.1515123765412 - 141241241241241248267654747412 = -141241241241241380399899879546 +-132132245132134.1515123765412 - -149143276547656984948124912 = 149143276547524852702992777 +-132132245132134.1515123765412 - 0.1322135476547459213732911312 = -132132245132134 +-132132245132134.1515123765412 - -0.123912932193769965476541321 = -132132245132134 +-132132245132134.1515123765412 - 0 = -132132245132134 +-132132245132134.1515123765412 - 0.00 = -132132245132134 +-132132245132134.1515123765412 - -0 = -132132245132134 +-132132245132134.1515123765412 - -0.00 = -132132245132134 +-132132245132134.1515123765412 - 15 = -132132245132149 +-132132245132134.1515123765412 - -15 = -132132245132119 +-132132245132134.1515123765412 - 1 = -132132245132135 +-132132245132134.1515123765412 - -9 = -132132245132125 +-132132245132134.1515123765412 - 14.14 = -132132245132148 +-132132245132134.1515123765412 - -16.60 = -132132245132117 +-132132245132134.1515123765412 - 0.15 = -132132245132134 +-132132245132134.1515123765412 - -0.01 = -132132245132134 Number "141241241241241248267654747412" (scale 0) -141241241241241248267654747412 + 15151324141414.412312232141241 = 141241241241241233116330605997 -141241241241241248267654747412 + -132132245132134.1515123765412 = 141241241241241380399899879546 -141241241241241248267654747412 + 141241241241241248267654747412 = 0 -141241241241241248267654747412 + -149143276547656984948124912 = 141390384517788905252602872324 -141241241241241248267654747412 + 0.1322135476547459213732911312 = 141241241241241248267654747411 -141241241241241248267654747412 + -0.123912932193769965476541321 = 141241241241241248267654747412 -141241241241241248267654747412 + 0 = 141241241241241248267654747412 -141241241241241248267654747412 + 0.00 = 141241241241241248267654747412 -141241241241241248267654747412 + -0 = 141241241241241248267654747412 -141241241241241248267654747412 + -0.00 = 141241241241241248267654747412 -141241241241241248267654747412 + 15 = 141241241241241248267654747397 -141241241241241248267654747412 + -15 = 141241241241241248267654747427 -141241241241241248267654747412 + 1 = 141241241241241248267654747411 -141241241241241248267654747412 + -9 = 141241241241241248267654747421 -141241241241241248267654747412 + 14.14 = 141241241241241248267654747397 -141241241241241248267654747412 + -16.60 = 141241241241241248267654747428 -141241241241241248267654747412 + 0.15 = 141241241241241248267654747411 -141241241241241248267654747412 + -0.01 = 141241241241241248267654747412 +141241241241241248267654747412 - 15151324141414.412312232141241 = 141241241241241233116330605997 +141241241241241248267654747412 - -132132245132134.1515123765412 = 141241241241241380399899879546 +141241241241241248267654747412 - 141241241241241248267654747412 = 0 +141241241241241248267654747412 - -149143276547656984948124912 = 141390384517788905252602872324 +141241241241241248267654747412 - 0.1322135476547459213732911312 = 141241241241241248267654747411 +141241241241241248267654747412 - -0.123912932193769965476541321 = 141241241241241248267654747412 +141241241241241248267654747412 - 0 = 141241241241241248267654747412 +141241241241241248267654747412 - 0.00 = 141241241241241248267654747412 +141241241241241248267654747412 - -0 = 141241241241241248267654747412 +141241241241241248267654747412 - -0.00 = 141241241241241248267654747412 +141241241241241248267654747412 - 15 = 141241241241241248267654747397 +141241241241241248267654747412 - -15 = 141241241241241248267654747427 +141241241241241248267654747412 - 1 = 141241241241241248267654747411 +141241241241241248267654747412 - -9 = 141241241241241248267654747421 +141241241241241248267654747412 - 14.14 = 141241241241241248267654747397 +141241241241241248267654747412 - -16.60 = 141241241241241248267654747428 +141241241241241248267654747412 - 0.15 = 141241241241241248267654747411 +141241241241241248267654747412 - -0.01 = 141241241241241248267654747412 Number "-149143276547656984948124912" (scale 0) --149143276547656984948124912 + 15151324141414.412312232141241 = -149143276547672136272266326 --149143276547656984948124912 + -132132245132134.1515123765412 = -149143276547524852702992777 --149143276547656984948124912 + 141241241241241248267654747412 = -141390384517788905252602872324 --149143276547656984948124912 + -149143276547656984948124912 = 0 --149143276547656984948124912 + 0.1322135476547459213732911312 = -149143276547656984948124912 --149143276547656984948124912 + -0.123912932193769965476541321 = -149143276547656984948124911 --149143276547656984948124912 + 0 = -149143276547656984948124912 --149143276547656984948124912 + 0.00 = -149143276547656984948124912 --149143276547656984948124912 + -0 = -149143276547656984948124912 --149143276547656984948124912 + -0.00 = -149143276547656984948124912 --149143276547656984948124912 + 15 = -149143276547656984948124927 --149143276547656984948124912 + -15 = -149143276547656984948124897 --149143276547656984948124912 + 1 = -149143276547656984948124913 --149143276547656984948124912 + -9 = -149143276547656984948124903 --149143276547656984948124912 + 14.14 = -149143276547656984948124926 --149143276547656984948124912 + -16.60 = -149143276547656984948124895 --149143276547656984948124912 + 0.15 = -149143276547656984948124912 --149143276547656984948124912 + -0.01 = -149143276547656984948124911 +-149143276547656984948124912 - 15151324141414.412312232141241 = -149143276547672136272266326 +-149143276547656984948124912 - -132132245132134.1515123765412 = -149143276547524852702992777 +-149143276547656984948124912 - 141241241241241248267654747412 = -141390384517788905252602872324 +-149143276547656984948124912 - -149143276547656984948124912 = 0 +-149143276547656984948124912 - 0.1322135476547459213732911312 = -149143276547656984948124912 +-149143276547656984948124912 - -0.123912932193769965476541321 = -149143276547656984948124911 +-149143276547656984948124912 - 0 = -149143276547656984948124912 +-149143276547656984948124912 - 0.00 = -149143276547656984948124912 +-149143276547656984948124912 - -0 = -149143276547656984948124912 +-149143276547656984948124912 - -0.00 = -149143276547656984948124912 +-149143276547656984948124912 - 15 = -149143276547656984948124927 +-149143276547656984948124912 - -15 = -149143276547656984948124897 +-149143276547656984948124912 - 1 = -149143276547656984948124913 +-149143276547656984948124912 - -9 = -149143276547656984948124903 +-149143276547656984948124912 - 14.14 = -149143276547656984948124926 +-149143276547656984948124912 - -16.60 = -149143276547656984948124895 +-149143276547656984948124912 - 0.15 = -149143276547656984948124912 +-149143276547656984948124912 - -0.01 = -149143276547656984948124911 Number "0.1322135476547459213732911312" (scale 0) -0.1322135476547459213732911312 + 15151324141414.412312232141241 = -15151324141414 -0.1322135476547459213732911312 + -132132245132134.1515123765412 = 132132245132134 -0.1322135476547459213732911312 + 141241241241241248267654747412 = -141241241241241248267654747411 -0.1322135476547459213732911312 + -149143276547656984948124912 = 149143276547656984948124912 -0.1322135476547459213732911312 + 0.1322135476547459213732911312 = 0 -0.1322135476547459213732911312 + -0.123912932193769965476541321 = 0 -0.1322135476547459213732911312 + 0 = 0 -0.1322135476547459213732911312 + 0.00 = 0 -0.1322135476547459213732911312 + -0 = 0 -0.1322135476547459213732911312 + -0.00 = 0 -0.1322135476547459213732911312 + 15 = -14 -0.1322135476547459213732911312 + -15 = 15 -0.1322135476547459213732911312 + 1 = 0 -0.1322135476547459213732911312 + -9 = 9 -0.1322135476547459213732911312 + 14.14 = -14 -0.1322135476547459213732911312 + -16.60 = 16 -0.1322135476547459213732911312 + 0.15 = 0 -0.1322135476547459213732911312 + -0.01 = 0 +0.1322135476547459213732911312 - 15151324141414.412312232141241 = -15151324141414 +0.1322135476547459213732911312 - -132132245132134.1515123765412 = 132132245132134 +0.1322135476547459213732911312 - 141241241241241248267654747412 = -141241241241241248267654747411 +0.1322135476547459213732911312 - -149143276547656984948124912 = 149143276547656984948124912 +0.1322135476547459213732911312 - 0.1322135476547459213732911312 = 0 +0.1322135476547459213732911312 - -0.123912932193769965476541321 = 0 +0.1322135476547459213732911312 - 0 = 0 +0.1322135476547459213732911312 - 0.00 = 0 +0.1322135476547459213732911312 - -0 = 0 +0.1322135476547459213732911312 - -0.00 = 0 +0.1322135476547459213732911312 - 15 = -14 +0.1322135476547459213732911312 - -15 = 15 +0.1322135476547459213732911312 - 1 = 0 +0.1322135476547459213732911312 - -9 = 9 +0.1322135476547459213732911312 - 14.14 = -14 +0.1322135476547459213732911312 - -16.60 = 16 +0.1322135476547459213732911312 - 0.15 = 0 +0.1322135476547459213732911312 - -0.01 = 0 Number "-0.123912932193769965476541321" (scale 0) --0.123912932193769965476541321 + 15151324141414.412312232141241 = -15151324141414 --0.123912932193769965476541321 + -132132245132134.1515123765412 = 132132245132134 --0.123912932193769965476541321 + 141241241241241248267654747412 = -141241241241241248267654747412 --0.123912932193769965476541321 + -149143276547656984948124912 = 149143276547656984948124911 --0.123912932193769965476541321 + 0.1322135476547459213732911312 = 0 --0.123912932193769965476541321 + -0.123912932193769965476541321 = 0 --0.123912932193769965476541321 + 0 = 0 --0.123912932193769965476541321 + 0.00 = 0 --0.123912932193769965476541321 + -0 = 0 --0.123912932193769965476541321 + -0.00 = 0 --0.123912932193769965476541321 + 15 = -15 --0.123912932193769965476541321 + -15 = 14 --0.123912932193769965476541321 + 1 = -1 --0.123912932193769965476541321 + -9 = 8 --0.123912932193769965476541321 + 14.14 = -14 --0.123912932193769965476541321 + -16.60 = 16 --0.123912932193769965476541321 + 0.15 = 0 --0.123912932193769965476541321 + -0.01 = 0 +-0.123912932193769965476541321 - 15151324141414.412312232141241 = -15151324141414 +-0.123912932193769965476541321 - -132132245132134.1515123765412 = 132132245132134 +-0.123912932193769965476541321 - 141241241241241248267654747412 = -141241241241241248267654747412 +-0.123912932193769965476541321 - -149143276547656984948124912 = 149143276547656984948124911 +-0.123912932193769965476541321 - 0.1322135476547459213732911312 = 0 +-0.123912932193769965476541321 - -0.123912932193769965476541321 = 0 +-0.123912932193769965476541321 - 0 = 0 +-0.123912932193769965476541321 - 0.00 = 0 +-0.123912932193769965476541321 - -0 = 0 +-0.123912932193769965476541321 - -0.00 = 0 +-0.123912932193769965476541321 - 15 = -15 +-0.123912932193769965476541321 - -15 = 14 +-0.123912932193769965476541321 - 1 = -1 +-0.123912932193769965476541321 - -9 = 8 +-0.123912932193769965476541321 - 14.14 = -14 +-0.123912932193769965476541321 - -16.60 = 16 +-0.123912932193769965476541321 - 0.15 = 0 +-0.123912932193769965476541321 - -0.01 = 0 Number "15151324141414.412312232141241" (scale 10) -15151324141414.412312232141241 + 15151324141414.412312232141241 = 0.0000000000 -15151324141414.412312232141241 + -132132245132134.1515123765412 = 147283569273548.5638246086 -15151324141414.412312232141241 + 141241241241241248267654747412 = -141241241241241233116330605997.5876877678 -15151324141414.412312232141241 + -149143276547656984948124912 = 149143276547672136272266326.4123122321 -15151324141414.412312232141241 + 0.1322135476547459213732911312 = 15151324141414.2800986844 -15151324141414.412312232141241 + -0.123912932193769965476541321 = 15151324141414.5362251643 -15151324141414.412312232141241 + 0 = 15151324141414.4123122321 -15151324141414.412312232141241 + 0.00 = 15151324141414.4123122321 -15151324141414.412312232141241 + -0 = 15151324141414.4123122321 -15151324141414.412312232141241 + -0.00 = 15151324141414.4123122321 -15151324141414.412312232141241 + 15 = 15151324141399.4123122321 -15151324141414.412312232141241 + -15 = 15151324141429.4123122321 -15151324141414.412312232141241 + 1 = 15151324141413.4123122321 -15151324141414.412312232141241 + -9 = 15151324141423.4123122321 -15151324141414.412312232141241 + 14.14 = 15151324141400.2723122321 -15151324141414.412312232141241 + -16.60 = 15151324141431.0123122321 -15151324141414.412312232141241 + 0.15 = 15151324141414.2623122321 -15151324141414.412312232141241 + -0.01 = 15151324141414.4223122321 +15151324141414.412312232141241 - 15151324141414.412312232141241 = 0.0000000000 +15151324141414.412312232141241 - -132132245132134.1515123765412 = 147283569273548.5638246086 +15151324141414.412312232141241 - 141241241241241248267654747412 = -141241241241241233116330605997.5876877678 +15151324141414.412312232141241 - -149143276547656984948124912 = 149143276547672136272266326.4123122321 +15151324141414.412312232141241 - 0.1322135476547459213732911312 = 15151324141414.2800986844 +15151324141414.412312232141241 - -0.123912932193769965476541321 = 15151324141414.5362251643 +15151324141414.412312232141241 - 0 = 15151324141414.4123122321 +15151324141414.412312232141241 - 0.00 = 15151324141414.4123122321 +15151324141414.412312232141241 - -0 = 15151324141414.4123122321 +15151324141414.412312232141241 - -0.00 = 15151324141414.4123122321 +15151324141414.412312232141241 - 15 = 15151324141399.4123122321 +15151324141414.412312232141241 - -15 = 15151324141429.4123122321 +15151324141414.412312232141241 - 1 = 15151324141413.4123122321 +15151324141414.412312232141241 - -9 = 15151324141423.4123122321 +15151324141414.412312232141241 - 14.14 = 15151324141400.2723122321 +15151324141414.412312232141241 - -16.60 = 15151324141431.0123122321 +15151324141414.412312232141241 - 0.15 = 15151324141414.2623122321 +15151324141414.412312232141241 - -0.01 = 15151324141414.4223122321 Number "-132132245132134.1515123765412" (scale 10) --132132245132134.1515123765412 + 15151324141414.412312232141241 = -147283569273548.5638246086 --132132245132134.1515123765412 + -132132245132134.1515123765412 = 0.0000000000 --132132245132134.1515123765412 + 141241241241241248267654747412 = -141241241241241380399899879546.1515123765 --132132245132134.1515123765412 + -149143276547656984948124912 = 149143276547524852702992777.8484876234 --132132245132134.1515123765412 + 0.1322135476547459213732911312 = -132132245132134.2837259241 --132132245132134.1515123765412 + -0.123912932193769965476541321 = -132132245132134.0275994443 --132132245132134.1515123765412 + 0 = -132132245132134.1515123765 --132132245132134.1515123765412 + 0.00 = -132132245132134.1515123765 --132132245132134.1515123765412 + -0 = -132132245132134.1515123765 --132132245132134.1515123765412 + -0.00 = -132132245132134.1515123765 --132132245132134.1515123765412 + 15 = -132132245132149.1515123765 --132132245132134.1515123765412 + -15 = -132132245132119.1515123765 --132132245132134.1515123765412 + 1 = -132132245132135.1515123765 --132132245132134.1515123765412 + -9 = -132132245132125.1515123765 --132132245132134.1515123765412 + 14.14 = -132132245132148.2915123765 --132132245132134.1515123765412 + -16.60 = -132132245132117.5515123765 --132132245132134.1515123765412 + 0.15 = -132132245132134.3015123765 --132132245132134.1515123765412 + -0.01 = -132132245132134.1415123765 +-132132245132134.1515123765412 - 15151324141414.412312232141241 = -147283569273548.5638246086 +-132132245132134.1515123765412 - -132132245132134.1515123765412 = 0.0000000000 +-132132245132134.1515123765412 - 141241241241241248267654747412 = -141241241241241380399899879546.1515123765 +-132132245132134.1515123765412 - -149143276547656984948124912 = 149143276547524852702992777.8484876234 +-132132245132134.1515123765412 - 0.1322135476547459213732911312 = -132132245132134.2837259241 +-132132245132134.1515123765412 - -0.123912932193769965476541321 = -132132245132134.0275994443 +-132132245132134.1515123765412 - 0 = -132132245132134.1515123765 +-132132245132134.1515123765412 - 0.00 = -132132245132134.1515123765 +-132132245132134.1515123765412 - -0 = -132132245132134.1515123765 +-132132245132134.1515123765412 - -0.00 = -132132245132134.1515123765 +-132132245132134.1515123765412 - 15 = -132132245132149.1515123765 +-132132245132134.1515123765412 - -15 = -132132245132119.1515123765 +-132132245132134.1515123765412 - 1 = -132132245132135.1515123765 +-132132245132134.1515123765412 - -9 = -132132245132125.1515123765 +-132132245132134.1515123765412 - 14.14 = -132132245132148.2915123765 +-132132245132134.1515123765412 - -16.60 = -132132245132117.5515123765 +-132132245132134.1515123765412 - 0.15 = -132132245132134.3015123765 +-132132245132134.1515123765412 - -0.01 = -132132245132134.1415123765 Number "141241241241241248267654747412" (scale 10) -141241241241241248267654747412 + 15151324141414.412312232141241 = 141241241241241233116330605997.5876877678 -141241241241241248267654747412 + -132132245132134.1515123765412 = 141241241241241380399899879546.1515123765 -141241241241241248267654747412 + 141241241241241248267654747412 = 0.0000000000 -141241241241241248267654747412 + -149143276547656984948124912 = 141390384517788905252602872324.0000000000 -141241241241241248267654747412 + 0.1322135476547459213732911312 = 141241241241241248267654747411.8677864523 -141241241241241248267654747412 + -0.123912932193769965476541321 = 141241241241241248267654747412.1239129321 -141241241241241248267654747412 + 0 = 141241241241241248267654747412.0000000000 -141241241241241248267654747412 + 0.00 = 141241241241241248267654747412.0000000000 -141241241241241248267654747412 + -0 = 141241241241241248267654747412.0000000000 -141241241241241248267654747412 + -0.00 = 141241241241241248267654747412.0000000000 -141241241241241248267654747412 + 15 = 141241241241241248267654747397.0000000000 -141241241241241248267654747412 + -15 = 141241241241241248267654747427.0000000000 -141241241241241248267654747412 + 1 = 141241241241241248267654747411.0000000000 -141241241241241248267654747412 + -9 = 141241241241241248267654747421.0000000000 -141241241241241248267654747412 + 14.14 = 141241241241241248267654747397.8600000000 -141241241241241248267654747412 + -16.60 = 141241241241241248267654747428.6000000000 -141241241241241248267654747412 + 0.15 = 141241241241241248267654747411.8500000000 -141241241241241248267654747412 + -0.01 = 141241241241241248267654747412.0100000000 +141241241241241248267654747412 - 15151324141414.412312232141241 = 141241241241241233116330605997.5876877678 +141241241241241248267654747412 - -132132245132134.1515123765412 = 141241241241241380399899879546.1515123765 +141241241241241248267654747412 - 141241241241241248267654747412 = 0.0000000000 +141241241241241248267654747412 - -149143276547656984948124912 = 141390384517788905252602872324.0000000000 +141241241241241248267654747412 - 0.1322135476547459213732911312 = 141241241241241248267654747411.8677864523 +141241241241241248267654747412 - -0.123912932193769965476541321 = 141241241241241248267654747412.1239129321 +141241241241241248267654747412 - 0 = 141241241241241248267654747412.0000000000 +141241241241241248267654747412 - 0.00 = 141241241241241248267654747412.0000000000 +141241241241241248267654747412 - -0 = 141241241241241248267654747412.0000000000 +141241241241241248267654747412 - -0.00 = 141241241241241248267654747412.0000000000 +141241241241241248267654747412 - 15 = 141241241241241248267654747397.0000000000 +141241241241241248267654747412 - -15 = 141241241241241248267654747427.0000000000 +141241241241241248267654747412 - 1 = 141241241241241248267654747411.0000000000 +141241241241241248267654747412 - -9 = 141241241241241248267654747421.0000000000 +141241241241241248267654747412 - 14.14 = 141241241241241248267654747397.8600000000 +141241241241241248267654747412 - -16.60 = 141241241241241248267654747428.6000000000 +141241241241241248267654747412 - 0.15 = 141241241241241248267654747411.8500000000 +141241241241241248267654747412 - -0.01 = 141241241241241248267654747412.0100000000 Number "-149143276547656984948124912" (scale 10) --149143276547656984948124912 + 15151324141414.412312232141241 = -149143276547672136272266326.4123122321 --149143276547656984948124912 + -132132245132134.1515123765412 = -149143276547524852702992777.8484876234 --149143276547656984948124912 + 141241241241241248267654747412 = -141390384517788905252602872324.0000000000 --149143276547656984948124912 + -149143276547656984948124912 = 0.0000000000 --149143276547656984948124912 + 0.1322135476547459213732911312 = -149143276547656984948124912.1322135476 --149143276547656984948124912 + -0.123912932193769965476541321 = -149143276547656984948124911.8760870678 --149143276547656984948124912 + 0 = -149143276547656984948124912.0000000000 --149143276547656984948124912 + 0.00 = -149143276547656984948124912.0000000000 --149143276547656984948124912 + -0 = -149143276547656984948124912.0000000000 --149143276547656984948124912 + -0.00 = -149143276547656984948124912.0000000000 --149143276547656984948124912 + 15 = -149143276547656984948124927.0000000000 --149143276547656984948124912 + -15 = -149143276547656984948124897.0000000000 --149143276547656984948124912 + 1 = -149143276547656984948124913.0000000000 --149143276547656984948124912 + -9 = -149143276547656984948124903.0000000000 --149143276547656984948124912 + 14.14 = -149143276547656984948124926.1400000000 --149143276547656984948124912 + -16.60 = -149143276547656984948124895.4000000000 --149143276547656984948124912 + 0.15 = -149143276547656984948124912.1500000000 --149143276547656984948124912 + -0.01 = -149143276547656984948124911.9900000000 +-149143276547656984948124912 - 15151324141414.412312232141241 = -149143276547672136272266326.4123122321 +-149143276547656984948124912 - -132132245132134.1515123765412 = -149143276547524852702992777.8484876234 +-149143276547656984948124912 - 141241241241241248267654747412 = -141390384517788905252602872324.0000000000 +-149143276547656984948124912 - -149143276547656984948124912 = 0.0000000000 +-149143276547656984948124912 - 0.1322135476547459213732911312 = -149143276547656984948124912.1322135476 +-149143276547656984948124912 - -0.123912932193769965476541321 = -149143276547656984948124911.8760870678 +-149143276547656984948124912 - 0 = -149143276547656984948124912.0000000000 +-149143276547656984948124912 - 0.00 = -149143276547656984948124912.0000000000 +-149143276547656984948124912 - -0 = -149143276547656984948124912.0000000000 +-149143276547656984948124912 - -0.00 = -149143276547656984948124912.0000000000 +-149143276547656984948124912 - 15 = -149143276547656984948124927.0000000000 +-149143276547656984948124912 - -15 = -149143276547656984948124897.0000000000 +-149143276547656984948124912 - 1 = -149143276547656984948124913.0000000000 +-149143276547656984948124912 - -9 = -149143276547656984948124903.0000000000 +-149143276547656984948124912 - 14.14 = -149143276547656984948124926.1400000000 +-149143276547656984948124912 - -16.60 = -149143276547656984948124895.4000000000 +-149143276547656984948124912 - 0.15 = -149143276547656984948124912.1500000000 +-149143276547656984948124912 - -0.01 = -149143276547656984948124911.9900000000 Number "0.1322135476547459213732911312" (scale 10) -0.1322135476547459213732911312 + 15151324141414.412312232141241 = -15151324141414.2800986844 -0.1322135476547459213732911312 + -132132245132134.1515123765412 = 132132245132134.2837259241 -0.1322135476547459213732911312 + 141241241241241248267654747412 = -141241241241241248267654747411.8677864523 -0.1322135476547459213732911312 + -149143276547656984948124912 = 149143276547656984948124912.1322135476 -0.1322135476547459213732911312 + 0.1322135476547459213732911312 = 0.0000000000 -0.1322135476547459213732911312 + -0.123912932193769965476541321 = 0.2561264798 -0.1322135476547459213732911312 + 0 = 0.1322135476 -0.1322135476547459213732911312 + 0.00 = 0.1322135476 -0.1322135476547459213732911312 + -0 = 0.1322135476 -0.1322135476547459213732911312 + -0.00 = 0.1322135476 -0.1322135476547459213732911312 + 15 = -14.8677864523 -0.1322135476547459213732911312 + -15 = 15.1322135476 -0.1322135476547459213732911312 + 1 = -0.8677864523 -0.1322135476547459213732911312 + -9 = 9.1322135476 -0.1322135476547459213732911312 + 14.14 = -14.0077864523 -0.1322135476547459213732911312 + -16.60 = 16.7322135476 -0.1322135476547459213732911312 + 0.15 = -0.0177864523 -0.1322135476547459213732911312 + -0.01 = 0.1422135476 +0.1322135476547459213732911312 - 15151324141414.412312232141241 = -15151324141414.2800986844 +0.1322135476547459213732911312 - -132132245132134.1515123765412 = 132132245132134.2837259241 +0.1322135476547459213732911312 - 141241241241241248267654747412 = -141241241241241248267654747411.8677864523 +0.1322135476547459213732911312 - -149143276547656984948124912 = 149143276547656984948124912.1322135476 +0.1322135476547459213732911312 - 0.1322135476547459213732911312 = 0.0000000000 +0.1322135476547459213732911312 - -0.123912932193769965476541321 = 0.2561264798 +0.1322135476547459213732911312 - 0 = 0.1322135476 +0.1322135476547459213732911312 - 0.00 = 0.1322135476 +0.1322135476547459213732911312 - -0 = 0.1322135476 +0.1322135476547459213732911312 - -0.00 = 0.1322135476 +0.1322135476547459213732911312 - 15 = -14.8677864523 +0.1322135476547459213732911312 - -15 = 15.1322135476 +0.1322135476547459213732911312 - 1 = -0.8677864523 +0.1322135476547459213732911312 - -9 = 9.1322135476 +0.1322135476547459213732911312 - 14.14 = -14.0077864523 +0.1322135476547459213732911312 - -16.60 = 16.7322135476 +0.1322135476547459213732911312 - 0.15 = -0.0177864523 +0.1322135476547459213732911312 - -0.01 = 0.1422135476 Number "-0.123912932193769965476541321" (scale 10) --0.123912932193769965476541321 + 15151324141414.412312232141241 = -15151324141414.5362251643 --0.123912932193769965476541321 + -132132245132134.1515123765412 = 132132245132134.0275994443 --0.123912932193769965476541321 + 141241241241241248267654747412 = -141241241241241248267654747412.1239129321 --0.123912932193769965476541321 + -149143276547656984948124912 = 149143276547656984948124911.8760870678 --0.123912932193769965476541321 + 0.1322135476547459213732911312 = -0.2561264798 --0.123912932193769965476541321 + -0.123912932193769965476541321 = 0.0000000000 --0.123912932193769965476541321 + 0 = -0.1239129321 --0.123912932193769965476541321 + 0.00 = -0.1239129321 --0.123912932193769965476541321 + -0 = -0.1239129321 --0.123912932193769965476541321 + -0.00 = -0.1239129321 --0.123912932193769965476541321 + 15 = -15.1239129321 --0.123912932193769965476541321 + -15 = 14.8760870678 --0.123912932193769965476541321 + 1 = -1.1239129321 --0.123912932193769965476541321 + -9 = 8.8760870678 --0.123912932193769965476541321 + 14.14 = -14.2639129321 --0.123912932193769965476541321 + -16.60 = 16.4760870678 --0.123912932193769965476541321 + 0.15 = -0.2739129321 --0.123912932193769965476541321 + -0.01 = -0.1139129321 +-0.123912932193769965476541321 - 15151324141414.412312232141241 = -15151324141414.5362251643 +-0.123912932193769965476541321 - -132132245132134.1515123765412 = 132132245132134.0275994443 +-0.123912932193769965476541321 - 141241241241241248267654747412 = -141241241241241248267654747412.1239129321 +-0.123912932193769965476541321 - -149143276547656984948124912 = 149143276547656984948124911.8760870678 +-0.123912932193769965476541321 - 0.1322135476547459213732911312 = -0.2561264798 +-0.123912932193769965476541321 - -0.123912932193769965476541321 = 0.0000000000 +-0.123912932193769965476541321 - 0 = -0.1239129321 +-0.123912932193769965476541321 - 0.00 = -0.1239129321 +-0.123912932193769965476541321 - -0 = -0.1239129321 +-0.123912932193769965476541321 - -0.00 = -0.1239129321 +-0.123912932193769965476541321 - 15 = -15.1239129321 +-0.123912932193769965476541321 - -15 = 14.8760870678 +-0.123912932193769965476541321 - 1 = -1.1239129321 +-0.123912932193769965476541321 - -9 = 8.8760870678 +-0.123912932193769965476541321 - 14.14 = -14.2639129321 +-0.123912932193769965476541321 - -16.60 = 16.4760870678 +-0.123912932193769965476541321 - 0.15 = -0.2739129321 +-0.123912932193769965476541321 - -0.01 = -0.1139129321 diff --git a/ext/bcmath/tests/bcsub_zero.phpt b/ext/bcmath/tests/bcsub_zero.phpt index 8545a4b59dbfe..31d0d60267e68 100644 --- a/ext/bcmath/tests/bcsub_zero.phpt +++ b/ext/bcmath/tests/bcsub_zero.phpt @@ -6,6 +6,7 @@ bcmath bcmath.scale=0 --FILE-- --EXPECT-- Number "0" (scale 0) - 0 - 0 = 0 - 0 - 0.00 = 0 - 0 - -0 = 0 - 0 - -0.00 = 0 - 0 - 15 = -15 - 0 - -15 = 15 - 0 - 1 = -1 - 0 - -9 = 9 - 0 - 14.14 = -14 - 0 - -16.60 = 16 - 0 - 0.15 = 0 - 0 - -0.01 = 0 - 0 - 15151324141414.412312232141241 = -15151324141414 - 0 - -132132245132134.1515123765412 = 132132245132134 - 0 - 141241241241241248267654747412 = -141241241241241248267654747412 - 0 - -149143276547656984948124912 = 149143276547656984948124912 - 0 - 0.1322135476547459213732911312 = 0 - 0 - -0.123912932193769965476541321 = 0 +0 - 0 = 0 +0 - 0.00 = 0 +0 - -0 = 0 +0 - -0.00 = 0 +0 - 15 = -15 +0 - -15 = 15 +0 - 1 = -1 +0 - -9 = 9 +0 - 14.14 = -14 +0 - -16.60 = 16 +0 - 0.15 = 0 +0 - -0.01 = 0 +0 - 15151324141414.412312232141241 = -15151324141414 +0 - -132132245132134.1515123765412 = 132132245132134 +0 - 141241241241241248267654747412 = -141241241241241248267654747412 +0 - -149143276547656984948124912 = 149143276547656984948124912 +0 - 0.1322135476547459213732911312 = 0 +0 - -0.123912932193769965476541321 = 0 Number "0.00" (scale 0) - 0.00 - 0 = 0 - 0.00 - 0.00 = 0 - 0.00 - -0 = 0 - 0.00 - -0.00 = 0 - 0.00 - 15 = -15 - 0.00 - -15 = 15 - 0.00 - 1 = -1 - 0.00 - -9 = 9 - 0.00 - 14.14 = -14 - 0.00 - -16.60 = 16 - 0.00 - 0.15 = 0 - 0.00 - -0.01 = 0 - 0.00 - 15151324141414.412312232141241 = -15151324141414 - 0.00 - -132132245132134.1515123765412 = 132132245132134 - 0.00 - 141241241241241248267654747412 = -141241241241241248267654747412 - 0.00 - -149143276547656984948124912 = 149143276547656984948124912 - 0.00 - 0.1322135476547459213732911312 = 0 - 0.00 - -0.123912932193769965476541321 = 0 +0.00 - 0 = 0 +0.00 - 0.00 = 0 +0.00 - -0 = 0 +0.00 - -0.00 = 0 +0.00 - 15 = -15 +0.00 - -15 = 15 +0.00 - 1 = -1 +0.00 - -9 = 9 +0.00 - 14.14 = -14 +0.00 - -16.60 = 16 +0.00 - 0.15 = 0 +0.00 - -0.01 = 0 +0.00 - 15151324141414.412312232141241 = -15151324141414 +0.00 - -132132245132134.1515123765412 = 132132245132134 +0.00 - 141241241241241248267654747412 = -141241241241241248267654747412 +0.00 - -149143276547656984948124912 = 149143276547656984948124912 +0.00 - 0.1322135476547459213732911312 = 0 +0.00 - -0.123912932193769965476541321 = 0 Number "-0" (scale 0) - -0 - 0 = 0 - -0 - 0.00 = 0 - -0 - -0 = 0 - -0 - -0.00 = 0 - -0 - 15 = -15 - -0 - -15 = 15 - -0 - 1 = -1 - -0 - -9 = 9 - -0 - 14.14 = -14 - -0 - -16.60 = 16 - -0 - 0.15 = 0 - -0 - -0.01 = 0 - -0 - 15151324141414.412312232141241 = -15151324141414 - -0 - -132132245132134.1515123765412 = 132132245132134 - -0 - 141241241241241248267654747412 = -141241241241241248267654747412 - -0 - -149143276547656984948124912 = 149143276547656984948124912 - -0 - 0.1322135476547459213732911312 = 0 - -0 - -0.123912932193769965476541321 = 0 +-0 - 0 = 0 +-0 - 0.00 = 0 +-0 - -0 = 0 +-0 - -0.00 = 0 +-0 - 15 = -15 +-0 - -15 = 15 +-0 - 1 = -1 +-0 - -9 = 9 +-0 - 14.14 = -14 +-0 - -16.60 = 16 +-0 - 0.15 = 0 +-0 - -0.01 = 0 +-0 - 15151324141414.412312232141241 = -15151324141414 +-0 - -132132245132134.1515123765412 = 132132245132134 +-0 - 141241241241241248267654747412 = -141241241241241248267654747412 +-0 - -149143276547656984948124912 = 149143276547656984948124912 +-0 - 0.1322135476547459213732911312 = 0 +-0 - -0.123912932193769965476541321 = 0 Number "-0.00" (scale 0) - -0.00 - 0 = 0 - -0.00 - 0.00 = 0 - -0.00 - -0 = 0 - -0.00 - -0.00 = 0 - -0.00 - 15 = -15 - -0.00 - -15 = 15 - -0.00 - 1 = -1 - -0.00 - -9 = 9 - -0.00 - 14.14 = -14 - -0.00 - -16.60 = 16 - -0.00 - 0.15 = 0 - -0.00 - -0.01 = 0 - -0.00 - 15151324141414.412312232141241 = -15151324141414 - -0.00 - -132132245132134.1515123765412 = 132132245132134 - -0.00 - 141241241241241248267654747412 = -141241241241241248267654747412 - -0.00 - -149143276547656984948124912 = 149143276547656984948124912 - -0.00 - 0.1322135476547459213732911312 = 0 - -0.00 - -0.123912932193769965476541321 = 0 +-0.00 - 0 = 0 +-0.00 - 0.00 = 0 +-0.00 - -0 = 0 +-0.00 - -0.00 = 0 +-0.00 - 15 = -15 +-0.00 - -15 = 15 +-0.00 - 1 = -1 +-0.00 - -9 = 9 +-0.00 - 14.14 = -14 +-0.00 - -16.60 = 16 +-0.00 - 0.15 = 0 +-0.00 - -0.01 = 0 +-0.00 - 15151324141414.412312232141241 = -15151324141414 +-0.00 - -132132245132134.1515123765412 = 132132245132134 +-0.00 - 141241241241241248267654747412 = -141241241241241248267654747412 +-0.00 - -149143276547656984948124912 = 149143276547656984948124912 +-0.00 - 0.1322135476547459213732911312 = 0 +-0.00 - -0.123912932193769965476541321 = 0 Number "0" (scale 10) - 0 - 0 = 0.0000000000 - 0 - 0.00 = 0.0000000000 - 0 - -0 = 0.0000000000 - 0 - -0.00 = 0.0000000000 - 0 - 15 = -15.0000000000 - 0 - -15 = 15.0000000000 - 0 - 1 = -1.0000000000 - 0 - -9 = 9.0000000000 - 0 - 14.14 = -14.1400000000 - 0 - -16.60 = 16.6000000000 - 0 - 0.15 = -0.1500000000 - 0 - -0.01 = 0.0100000000 - 0 - 15151324141414.412312232141241 = -15151324141414.4123122321 - 0 - -132132245132134.1515123765412 = 132132245132134.1515123765 - 0 - 141241241241241248267654747412 = -141241241241241248267654747412.0000000000 - 0 - -149143276547656984948124912 = 149143276547656984948124912.0000000000 - 0 - 0.1322135476547459213732911312 = -0.1322135476 - 0 - -0.123912932193769965476541321 = 0.1239129321 +0 - 0 = 0.0000000000 +0 - 0.00 = 0.0000000000 +0 - -0 = 0.0000000000 +0 - -0.00 = 0.0000000000 +0 - 15 = -15.0000000000 +0 - -15 = 15.0000000000 +0 - 1 = -1.0000000000 +0 - -9 = 9.0000000000 +0 - 14.14 = -14.1400000000 +0 - -16.60 = 16.6000000000 +0 - 0.15 = -0.1500000000 +0 - -0.01 = 0.0100000000 +0 - 15151324141414.412312232141241 = -15151324141414.4123122321 +0 - -132132245132134.1515123765412 = 132132245132134.1515123765 +0 - 141241241241241248267654747412 = -141241241241241248267654747412.0000000000 +0 - -149143276547656984948124912 = 149143276547656984948124912.0000000000 +0 - 0.1322135476547459213732911312 = -0.1322135476 +0 - -0.123912932193769965476541321 = 0.1239129321 Number "0.00" (scale 10) - 0.00 - 0 = 0.0000000000 - 0.00 - 0.00 = 0.0000000000 - 0.00 - -0 = 0.0000000000 - 0.00 - -0.00 = 0.0000000000 - 0.00 - 15 = -15.0000000000 - 0.00 - -15 = 15.0000000000 - 0.00 - 1 = -1.0000000000 - 0.00 - -9 = 9.0000000000 - 0.00 - 14.14 = -14.1400000000 - 0.00 - -16.60 = 16.6000000000 - 0.00 - 0.15 = -0.1500000000 - 0.00 - -0.01 = 0.0100000000 - 0.00 - 15151324141414.412312232141241 = -15151324141414.4123122321 - 0.00 - -132132245132134.1515123765412 = 132132245132134.1515123765 - 0.00 - 141241241241241248267654747412 = -141241241241241248267654747412.0000000000 - 0.00 - -149143276547656984948124912 = 149143276547656984948124912.0000000000 - 0.00 - 0.1322135476547459213732911312 = -0.1322135476 - 0.00 - -0.123912932193769965476541321 = 0.1239129321 +0.00 - 0 = 0.0000000000 +0.00 - 0.00 = 0.0000000000 +0.00 - -0 = 0.0000000000 +0.00 - -0.00 = 0.0000000000 +0.00 - 15 = -15.0000000000 +0.00 - -15 = 15.0000000000 +0.00 - 1 = -1.0000000000 +0.00 - -9 = 9.0000000000 +0.00 - 14.14 = -14.1400000000 +0.00 - -16.60 = 16.6000000000 +0.00 - 0.15 = -0.1500000000 +0.00 - -0.01 = 0.0100000000 +0.00 - 15151324141414.412312232141241 = -15151324141414.4123122321 +0.00 - -132132245132134.1515123765412 = 132132245132134.1515123765 +0.00 - 141241241241241248267654747412 = -141241241241241248267654747412.0000000000 +0.00 - -149143276547656984948124912 = 149143276547656984948124912.0000000000 +0.00 - 0.1322135476547459213732911312 = -0.1322135476 +0.00 - -0.123912932193769965476541321 = 0.1239129321 Number "-0" (scale 10) - -0 - 0 = 0.0000000000 - -0 - 0.00 = 0.0000000000 - -0 - -0 = 0.0000000000 - -0 - -0.00 = 0.0000000000 - -0 - 15 = -15.0000000000 - -0 - -15 = 15.0000000000 - -0 - 1 = -1.0000000000 - -0 - -9 = 9.0000000000 - -0 - 14.14 = -14.1400000000 - -0 - -16.60 = 16.6000000000 - -0 - 0.15 = -0.1500000000 - -0 - -0.01 = 0.0100000000 - -0 - 15151324141414.412312232141241 = -15151324141414.4123122321 - -0 - -132132245132134.1515123765412 = 132132245132134.1515123765 - -0 - 141241241241241248267654747412 = -141241241241241248267654747412.0000000000 - -0 - -149143276547656984948124912 = 149143276547656984948124912.0000000000 - -0 - 0.1322135476547459213732911312 = -0.1322135476 - -0 - -0.123912932193769965476541321 = 0.1239129321 +-0 - 0 = 0.0000000000 +-0 - 0.00 = 0.0000000000 +-0 - -0 = 0.0000000000 +-0 - -0.00 = 0.0000000000 +-0 - 15 = -15.0000000000 +-0 - -15 = 15.0000000000 +-0 - 1 = -1.0000000000 +-0 - -9 = 9.0000000000 +-0 - 14.14 = -14.1400000000 +-0 - -16.60 = 16.6000000000 +-0 - 0.15 = -0.1500000000 +-0 - -0.01 = 0.0100000000 +-0 - 15151324141414.412312232141241 = -15151324141414.4123122321 +-0 - -132132245132134.1515123765412 = 132132245132134.1515123765 +-0 - 141241241241241248267654747412 = -141241241241241248267654747412.0000000000 +-0 - -149143276547656984948124912 = 149143276547656984948124912.0000000000 +-0 - 0.1322135476547459213732911312 = -0.1322135476 +-0 - -0.123912932193769965476541321 = 0.1239129321 Number "-0.00" (scale 10) - -0.00 - 0 = 0.0000000000 - -0.00 - 0.00 = 0.0000000000 - -0.00 - -0 = 0.0000000000 - -0.00 - -0.00 = 0.0000000000 - -0.00 - 15 = -15.0000000000 - -0.00 - -15 = 15.0000000000 - -0.00 - 1 = -1.0000000000 - -0.00 - -9 = 9.0000000000 - -0.00 - 14.14 = -14.1400000000 - -0.00 - -16.60 = 16.6000000000 - -0.00 - 0.15 = -0.1500000000 - -0.00 - -0.01 = 0.0100000000 - -0.00 - 15151324141414.412312232141241 = -15151324141414.4123122321 - -0.00 - -132132245132134.1515123765412 = 132132245132134.1515123765 - -0.00 - 141241241241241248267654747412 = -141241241241241248267654747412.0000000000 - -0.00 - -149143276547656984948124912 = 149143276547656984948124912.0000000000 - -0.00 - 0.1322135476547459213732911312 = -0.1322135476 - -0.00 - -0.123912932193769965476541321 = 0.1239129321 +-0.00 - 0 = 0.0000000000 +-0.00 - 0.00 = 0.0000000000 +-0.00 - -0 = 0.0000000000 +-0.00 - -0.00 = 0.0000000000 +-0.00 - 15 = -15.0000000000 +-0.00 - -15 = 15.0000000000 +-0.00 - 1 = -1.0000000000 +-0.00 - -9 = 9.0000000000 +-0.00 - 14.14 = -14.1400000000 +-0.00 - -16.60 = 16.6000000000 +-0.00 - 0.15 = -0.1500000000 +-0.00 - -0.01 = 0.0100000000 +-0.00 - 15151324141414.412312232141241 = -15151324141414.4123122321 +-0.00 - -132132245132134.1515123765412 = 132132245132134.1515123765 +-0.00 - 141241241241241248267654747412 = -141241241241241248267654747412.0000000000 +-0.00 - -149143276547656984948124912 = 149143276547656984948124912.0000000000 +-0.00 - 0.1322135476547459213732911312 = -0.1322135476 +-0.00 - -0.123912932193769965476541321 = 0.1239129321 From f446ce439a770711ad2567f8aafccf4d6e9bc0a2 Mon Sep 17 00:00:00 2001 From: Jorg Adam Sowa Date: Sun, 2 Jul 2023 23:26:31 +0200 Subject: [PATCH 11/15] Updated the reqquire statement --- ext/bcmath/tests/bcadd.phpt | 2 +- ext/bcmath/tests/bcadd_large_numbers.phpt | 2 +- ext/bcmath/tests/bcadd_zero.phpt | 2 +- ext/bcmath/tests/bcdiv.phpt | 2 +- ext/bcmath/tests/bcdiv_large_numbers.phpt | 2 +- ext/bcmath/tests/bcdiv_zero.phpt | 2 +- ext/bcmath/tests/bcmod.phpt | 2 +- ext/bcmath/tests/bcmod_large_numbers.phpt | 2 +- ext/bcmath/tests/bcmod_zero.phpt | 2 +- ext/bcmath/tests/bcmul.phpt | 2 +- ext/bcmath/tests/bcmul_large_numbers.phpt | 2 +- ext/bcmath/tests/bcmul_zero.phpt | 2 +- ext/bcmath/tests/bcpow.phpt | 2 +- ext/bcmath/tests/bcpow_large_numbers.phpt | 2 +- ext/bcmath/tests/bcsub.phpt | 2 +- ext/bcmath/tests/bcsub_large_numbers.phpt | 2 +- ext/bcmath/tests/bcsub_zero.phpt | 2 +- 17 files changed, 17 insertions(+), 17 deletions(-) diff --git a/ext/bcmath/tests/bcadd.phpt b/ext/bcmath/tests/bcadd.phpt index e9bb655086268..247df06ab81c4 100644 --- a/ext/bcmath/tests/bcadd.phpt +++ b/ext/bcmath/tests/bcadd.phpt @@ -6,7 +6,7 @@ bcmath bcmath.scale=0 --FILE-- Date: Mon, 3 Jul 2023 00:08:38 +0200 Subject: [PATCH 12/15] Fixed include path of helper function --- ext/bcmath/tests/bcadd.phpt | 2 +- ext/bcmath/tests/bcadd_large_numbers.phpt | 2 +- ext/bcmath/tests/bcadd_zero.phpt | 2 +- ext/bcmath/tests/bcdiv.phpt | 2 +- ext/bcmath/tests/bcdiv_large_numbers.phpt | 2 +- ext/bcmath/tests/bcdiv_zero.phpt | 2 +- ext/bcmath/tests/bcmod.phpt | 2 +- ext/bcmath/tests/bcmod_large_numbers.phpt | 2 +- ext/bcmath/tests/bcmod_zero.phpt | 2 +- ext/bcmath/tests/bcmul.phpt | 2 +- ext/bcmath/tests/bcmul_large_numbers.phpt | 2 +- ext/bcmath/tests/bcmul_zero.phpt | 2 +- ext/bcmath/tests/bcpow.phpt | 2 +- ext/bcmath/tests/bcpow_large_numbers.phpt | 2 +- ext/bcmath/tests/bcsub.phpt | 2 +- ext/bcmath/tests/bcsub_large_numbers.phpt | 2 +- ext/bcmath/tests/bcsub_zero.phpt | 2 +- .../tests/run_bcmath_tests_function.inc | 28 +++++++++++++++++++ 18 files changed, 45 insertions(+), 17 deletions(-) create mode 100644 ext/bcmath/tests/run_bcmath_tests_function.inc diff --git a/ext/bcmath/tests/bcadd.phpt b/ext/bcmath/tests/bcadd.phpt index 247df06ab81c4..1ed319cf9f03e 100644 --- a/ext/bcmath/tests/bcadd.phpt +++ b/ext/bcmath/tests/bcadd.phpt @@ -6,7 +6,7 @@ bcmath bcmath.scale=0 --FILE-- From 6bf97138d65b130ed1eca85d9a7288a9c0acce41 Mon Sep 17 00:00:00 2001 From: Jorg Adam Sowa Date: Tue, 4 Jul 2023 23:22:09 +0200 Subject: [PATCH 13/15] Improved formatting of the tests --- ext/bcmath/tests/bccomp.phpt | 2 +- ext/bcmath/tests/bccomp_variation001.phpt | 8 +- ext/bcmath/tests/bccomp_variation002.phpt | 14 +-- ext/bcmath/tests/bcdiv_zero.phpt | 2 +- ext/bcmath/tests/bcpow.phpt | 114 +----------------- .../tests/run_bcmath_tests_function.inc | 2 - 6 files changed, 14 insertions(+), 128 deletions(-) diff --git a/ext/bcmath/tests/bccomp.phpt b/ext/bcmath/tests/bccomp.phpt index c2d4174affae6..6dc9cc1d96844 100644 --- a/ext/bcmath/tests/bccomp.phpt +++ b/ext/bcmath/tests/bccomp.phpt @@ -12,7 +12,7 @@ echo bccomp("1.00000000000000000001", "1", 2), "\n"; echo bccomp("97321", "2321"), "\n"; echo bccomp("0", "14"), "\n"; echo bccomp("1", "0"), "\n"; -echo bccomp("0.000", "0", 3); +echo bccomp("0.000", "0", 3), "\n"; ?> --EXPECT-- diff --git a/ext/bcmath/tests/bccomp_variation001.phpt b/ext/bcmath/tests/bccomp_variation001.phpt index 9971967fce34e..c95ed554fc58a 100644 --- a/ext/bcmath/tests/bccomp_variation001.phpt +++ b/ext/bcmath/tests/bccomp_variation001.phpt @@ -6,10 +6,10 @@ bcmath bcmath.scale=0 --FILE-- --EXPECT-- 0 diff --git a/ext/bcmath/tests/bccomp_variation002.phpt b/ext/bcmath/tests/bccomp_variation002.phpt index 0224e6b7f04b9..299f454780601 100644 --- a/ext/bcmath/tests/bccomp_variation002.phpt +++ b/ext/bcmath/tests/bccomp_variation002.phpt @@ -6,13 +6,13 @@ bcmath bcmath.scale=0 --FILE-- --EXPECT-- 0 diff --git a/ext/bcmath/tests/bcdiv_zero.phpt b/ext/bcmath/tests/bcdiv_zero.phpt index f06278a6d43dc..afe3350548d77 100644 --- a/ext/bcmath/tests/bcdiv_zero.phpt +++ b/ext/bcmath/tests/bcdiv_zero.phpt @@ -156,4 +156,4 @@ Number "-0.00" (scale 10) -0.00 / 141241241241241248267654747412 = 0.0000000000 -0.00 / -149143276547656984948124912 = 0.0000000000 -0.00 / 0.1322135476547459213732911312 = 0.0000000000 --0.00 / -0.123912932193769965476541321 = 0.0000000000 \ No newline at end of file +-0.00 / -0.123912932193769965476541321 = 0.0000000000 diff --git a/ext/bcmath/tests/bcpow.phpt b/ext/bcmath/tests/bcpow.phpt index 18c3f6c6f6d0a..615aa9121641a 100644 --- a/ext/bcmath/tests/bcpow.phpt +++ b/ext/bcmath/tests/bcpow.phpt @@ -8,7 +8,7 @@ bcmath.scale=0 From 3622e9cc52bb4e6c46e81ff62329eab623e0a731 Mon Sep 17 00:00:00 2001 From: Jorg Adam Sowa Date: Tue, 4 Jul 2023 23:23:00 +0200 Subject: [PATCH 14/15] Improved formatting of the tests --- ext/bcmath/tests/bcadd.phpt | 2 +- ext/bcmath/tests/bcadd_large_numbers.phpt | 2 +- ext/bcmath/tests/bcadd_zero.phpt | 2 +- ext/bcmath/tests/bcdiv.phpt | 2 +- ext/bcmath/tests/bcdiv_large_numbers.phpt | 2 +- ext/bcmath/tests/bcdiv_zero.phpt | 2 +- ext/bcmath/tests/bcmod.phpt | 2 +- ext/bcmath/tests/bcmod_large_numbers.phpt | 2 +- ext/bcmath/tests/bcmod_zero.phpt | 2 +- ext/bcmath/tests/bcmul.phpt | 2 +- ext/bcmath/tests/bcmul_large_numbers.phpt | 2 +- ext/bcmath/tests/bcmul_zero.phpt | 2 +- ext/bcmath/tests/bcpow.phpt | 2 +- ext/bcmath/tests/bcpow_large_numbers.phpt | 2 +- ext/bcmath/tests/bcsub.phpt | 2 +- ext/bcmath/tests/bcsub_large_numbers.phpt | 2 +- ext/bcmath/tests/bcsub_zero.phpt | 2 +- 17 files changed, 17 insertions(+), 17 deletions(-) diff --git a/ext/bcmath/tests/bcadd.phpt b/ext/bcmath/tests/bcadd.phpt index 1ed319cf9f03e..188d8228e5456 100644 --- a/ext/bcmath/tests/bcadd.phpt +++ b/ext/bcmath/tests/bcadd.phpt @@ -6,7 +6,7 @@ bcmath bcmath.scale=0 --FILE-- Date: Tue, 4 Jul 2023 23:30:34 +0200 Subject: [PATCH 15/15] Removed repeated test numbers --- ext/bcmath/tests/bcsqrt.phpt | 6 ------ 1 file changed, 6 deletions(-) diff --git a/ext/bcmath/tests/bcsqrt.phpt b/ext/bcmath/tests/bcsqrt.phpt index 5a37e5cdc1ff3..40b1702ae3783 100644 --- a/ext/bcmath/tests/bcsqrt.phpt +++ b/ext/bcmath/tests/bcsqrt.phpt @@ -19,8 +19,6 @@ $radicants = [ "0.15", "15", "1", - "14.14", - "0.15", ]; $scales = [0, 10]; @@ -43,8 +41,6 @@ foreach ($scales as $scale) { 0 3 1 -3 -0 0.0000000000 0.0000000000 0.0000000000 @@ -56,5 +52,3 @@ foreach ($scales as $scale) { 0.3872983346 3.8729833462 1.0000000000 -3.7603191353 -0.3872983346