Bugfix: Work item 18370 - Error loading xlsx file with column breaks

Deprecated the getCalculatedValue(), setCalculatedValue(), setFormulaAttributes() and getFormulaAttributes() methods in PHPExcel_Cell.
Documentation changes and unit tests.
This commit is contained in:
Mark Baker 2012-07-18 12:29:33 +01:00
parent 1535b4d9e7
commit 59932b0cac
13 changed files with 294 additions and 236 deletions

View File

@ -773,8 +773,8 @@ class PHPExcel_Calculation_Engineering {
/**
* BESSELI
*
* Returns the modified Bessel function, which is equivalent to the Bessel function evaluated for
* purely imaginary arguments
* Returns the modified Bessel function In(x), which is equivalent to the Bessel function evaluated
* for purely imaginary arguments
*
* Excel Function:
* BESSELI(x,ord)
@ -783,14 +783,12 @@ class PHPExcel_Calculation_Engineering {
* @category Engineering Functions
* @param float $x The value at which to evaluate the function.
* If x is nonnumeric, BESSELI returns the #VALUE! error value.
* @param integer $ord The order of the Bessel function. If n is not an integer, it is truncated.
* @param integer $ord The order of the Bessel function.
* If ord is not an integer, it is truncated.
* If $ord is nonnumeric, BESSELI returns the #VALUE! error value.
* If $ord < 0, BESSELI returns the #NUM! error value.
* @return float
*
* @TODO Better handling of the approximation method to support the differences between Excel/Gnumeric
* and Open/Libre Office
*
*/
public static function BESSELI($x, $ord) {
$x = (is_null($x)) ? 0.0 : PHPExcel_Calculation_Functions::flattenSingleValue($x);
@ -827,23 +825,21 @@ class PHPExcel_Calculation_Engineering {
/**
* BESSELJ
* BESSELJ
*
* Returns the Bessel function
* Returns the Bessel function
*
* Excel Function:
* Excel Function:
* BESSELJ(x,ord)
*
* @access public
* @category Engineering Functions
* @param float $x The value at which to evaluate the function.
* @access public
* @category Engineering Functions
* @param float $x The value at which to evaluate the function.
* If x is nonnumeric, BESSELJ returns the #VALUE! error value.
* @param integer $ord The order of the Bessel function. If n is not an integer, it is truncated.
* @param integer $ord The order of the Bessel function. If n is not an integer, it is truncated.
* If $ord is nonnumeric, BESSELJ returns the #VALUE! error value.
* If $ord < 0, BESSELJ returns the #NUM! error value.
* @return float
*
* @TODO Better handling of the approximation method to support the differences between Excel/Gnumeric and Open/Libre Office
* @return float
*
*/
public static function BESSELJ($x, $ord) {
@ -917,24 +913,22 @@ class PHPExcel_Calculation_Engineering {
/**
* BESSELK
* BESSELK
*
* Returns the modified Bessel function, which is equivalent to the Bessel functions evaluated
* for purely imaginary arguments.
* Returns the modified Bessel function Kn(x), which is equivalent to the Bessel functions evaluated
* for purely imaginary arguments.
*
* Excel Function:
* Excel Function:
* BESSELK(x,ord)
*
* @access public
* @category Engineering Functions
* @param float $x The value at which to evaluate the function.
* @access public
* @category Engineering Functions
* @param float $x The value at which to evaluate the function.
* If x is nonnumeric, BESSELK returns the #VALUE! error value.
* @param integer $ord The order of the Bessel function. If n is not an integer, it is truncated.
* @param integer $ord The order of the Bessel function. If n is not an integer, it is truncated.
* If $ord is nonnumeric, BESSELK returns the #VALUE! error value.
* If $ord < 0, BESSELK returns the #NUM! error value.
* @return float
*
* @TODO Better handling of the approximation method to support the differences between Excel/Gnumeric and Open/Libre Office
* @return float
*
*/
public static function BESSELK($x, $ord) {
@ -993,13 +987,6 @@ class PHPExcel_Calculation_Engineering {
(0.1020426050e6 + $y * (0.3549632885e3 + $y)))));
$fRet = $f1 / $f2 + 0.636619772 * ( self::BESSELJ($fNum, 1) * log($fNum) - 1 / $fNum);
} else {
// $z = 8.0 / $fNum;
// $y = ($z * $z);
// $xx = $fNum - 2.356194491;
// $f1 = 1 + $y * (0.183105e-2 + $y * (-0.3516396496e-4 + $y * (0.2457520174e-5 + $y * (-0.240337019e6))));
// $f2 = 0.04687499995 + $y * (-0.2002690873e-3 + $y * (0.8449199096e-5 + $y * (-0.88228987e-6 + $y * 0.105787412e-6)));
// $fRet = sqrt(0.636619772 / $fNum) * (sin($xx) * $f1 + $z * cos($xx) * $f2);
#i12430# ...but this seems to work much better.
$fRet = sqrt(0.636619772 / $fNum) * sin($fNum - 2.356194491);
}
return $fRet;
@ -1007,24 +994,22 @@ class PHPExcel_Calculation_Engineering {
/**
* BESSELY
* BESSELY
*
* Returns the Bessel function, which is also called the Weber function or the Neumann function.
* Returns the Bessel function, which is also called the Weber function or the Neumann function.
*
* Excel Function:
* Excel Function:
* BESSELY(x,ord)
*
* @access public
* @category Engineering Functions
* @param float $x The value at which to evaluate the function.
* @access public
* @category Engineering Functions
* @param float $x The value at which to evaluate the function.
* If x is nonnumeric, BESSELK returns the #VALUE! error value.
* @param integer $ord The order of the Bessel function. If n is not an integer, it is truncated.
* @param integer $ord The order of the Bessel function. If n is not an integer, it is truncated.
* If $ord is nonnumeric, BESSELK returns the #VALUE! error value.
* If $ord < 0, BESSELK returns the #NUM! error value.
*
* @TODO Better handling of the approximation method to support the differences between Excel/Gnumeric and Open/Libre Office
*
* @return float
* @return float
*/
public static function BESSELY($x, $ord) {
$x = (is_null($x)) ? 0.0 : PHPExcel_Calculation_Functions::flattenSingleValue($x);
@ -2187,19 +2172,19 @@ class PHPExcel_Calculation_Engineering {
/**
* DELTA
* DELTA
*
* Tests whether two values are equal. Returns 1 if number1 = number2; returns 0 otherwise.
* Use this function to filter a set of values. For example, by summing several DELTA
* functions you calculate the count of equal pairs. This function is also known as the
* Kronecker Delta function.
* Tests whether two values are equal. Returns 1 if number1 = number2; returns 0 otherwise.
* Use this function to filter a set of values. For example, by summing several DELTA
* functions you calculate the count of equal pairs. This function is also known as the
* Kronecker Delta function.
*
* Excel Function:
* Excel Function:
* DELTA(a[,b])
*
* @param float $a The first number.
* @param float $b The second number. If omitted, b is assumed to be zero.
* @return int
* @param float $a The first number.
* @param float $b The second number. If omitted, b is assumed to be zero.
* @return int
*/
public static function DELTA($a, $b=0) {
$a = PHPExcel_Calculation_Functions::flattenSingleValue($a);
@ -2210,19 +2195,19 @@ class PHPExcel_Calculation_Engineering {
/**
* GESTEP
* GESTEP
*
* Excel Function:
* Excel Function:
* GESTEP(number[,step])
*
* Returns 1 if number >= step; returns 0 (zero) otherwise
* Use this function to filter a set of values. For example, by summing several GESTEP
* functions you calculate the count of values that exceed a threshold.
* Returns 1 if number >= step; returns 0 (zero) otherwise
* Use this function to filter a set of values. For example, by summing several GESTEP
* functions you calculate the count of values that exceed a threshold.
*
* @param float $number The value to test against step.
* @param float $step The threshold value.
* @param float $number The value to test against step.
* @param float $step The threshold value.
* If you omit a value for step, GESTEP uses zero.
* @return int
* @return int
*/
public static function GESTEP($number, $step=0) {
$number = PHPExcel_Calculation_Functions::flattenSingleValue($number);
@ -2336,9 +2321,9 @@ class PHPExcel_Calculation_Engineering {
* PHPExcel follows Excel 2010 behaviour, and accepts nagative arguments.
*
* Excel Function:
* ERF(x)
* ERFC(x)
*
* @param float $x The lower bound for integrating ERF
* @param float $x The lower bound for integrating ERFC
* @return float
*/
public static function ERFC($x) {
@ -2352,9 +2337,10 @@ class PHPExcel_Calculation_Engineering {
/**
* getConversionGroups
* getConversionGroups
* Returns a list of the different conversion groups for UOM conversions
*
* @return array
* @return array
*/
public static function getConversionGroups() {
$conversionGroups = array();
@ -2366,9 +2352,12 @@ class PHPExcel_Calculation_Engineering {
/**
* getConversionGroupUnits
* getConversionGroupUnits
* Returns an array of units of measure, for a specified conversion group, or for all groups
*
* @return array
* @param string $group The group whose units of measure you want to retrieve
*
* @return array
*/
public static function getConversionGroupUnits($group = NULL) {
$conversionGroups = array();
@ -2382,9 +2371,9 @@ class PHPExcel_Calculation_Engineering {
/**
* getConversionGroupUnitDetails
* getConversionGroupUnitDetails
*
* @return array
* @return array
*/
public static function getConversionGroupUnitDetails($group = NULL) {
$conversionGroups = array();
@ -2400,9 +2389,10 @@ class PHPExcel_Calculation_Engineering {
/**
* getConversionGroups
* getConversionMultipliers
* Returns an array of the Multiplier prefixes that can be used with Units of Measure in CONVERTUOM()
*
* @return array
* @return array of mixed
*/
public static function getConversionMultipliers() {
return self::$_conversionMultipliers;
@ -2410,19 +2400,20 @@ class PHPExcel_Calculation_Engineering {
/**
* CONVERTUOM
* CONVERTUOM
*
* Converts a number from one measurement system to another.
* For example, CONVERT can translate a table of distances in miles to a table of distances
* in kilometers.
* Converts a number from one measurement system to another.
* For example, CONVERT can translate a table of distances in miles to a table of distances
* in kilometers.
*
* Excel Function:
* Excel Function:
* CONVERT(value,fromUOM,toUOM)
*
* @param float $value The value in fromUOM to convert.
* @param string $fromUOM The units for value.
* @param string $toUOM The units for the result.
* @return float
* @param float $value The value in fromUOM to convert.
* @param string $fromUOM The units for value.
* @param string $toUOM The units for the result.
*
* @return float
*/
public static function CONVERTUOM($value, $fromUOM, $toUOM) {
$value = PHPExcel_Calculation_Functions::flattenSingleValue($value);

View File

@ -273,6 +273,8 @@ class PHPExcel_Cell
/**
* Get calculated cell value
*
* @deprecated Since version 1.7.8 for planned changes to cell for array formula handling
*
* @return mixed
*/
public function getCalculatedValue($resetLog=true)
@ -312,6 +314,8 @@ class PHPExcel_Cell
/**
* Set calculated value (used for caching)
*
* @deprecated Since version 1.7.8 for planned changes to cell for array formula handling
*
* @param mixed $pValue Value
* @return PHPExcel_Cell
*/
@ -880,13 +884,18 @@ class PHPExcel_Cell
return $this->notifyCacheController();
}
/**
* @deprecated Since version 1.7.8 for planned changes to cell for array formula handling
*/
public function setFormulaAttributes($pAttributes)
{
$this->_formulaAttributes = $pAttributes;
return $this;
}
/**
* @deprecated Since version 1.7.8 for planned changes to cell for array formula handling
*/
public function getFormulaAttributes()
{
return $this->_formulaAttributes;

View File

@ -1187,7 +1187,7 @@ class PHPExcel_Reader_Excel2007 implements PHPExcel_Reader_IReader
if ($xmlSheet && $xmlSheet->colBreaks && $xmlSheet->colBreaks->brk && !$this->_readDataOnly) {
foreach ($xmlSheet->colBreaks->brk as $brk) {
if ($brk["man"]) {
$docSheet->setBreak(PHPExcel_Cell::stringFromColumnIndex($brk["id"]) . "1", PHPExcel_Worksheet::BREAK_COLUMN);
$docSheet->setBreak(PHPExcel_Cell::stringFromColumnIndex((string) $brk["id"]) . "1", PHPExcel_Worksheet::BREAK_COLUMN);
}
}
}

View File

@ -23,6 +23,54 @@
**************************************************************************************
--------------------------------------------------------------------------------
BREAKING CHANGE! As part of the planned changes for handling array formulae in
workbooks, there are some changes that will affect the PHPExcel_Cell object
methods.
The following methods are now deprecated, and will be removed in version 1.7.9:
getCalculatedValue() The getValue() method will return calculated
values for cells containing formulae instead.
setCalculatedValue() The cell value will always contain the result of a
any formula calculation.
setFormulaAttributes() Will now be determined by the arguments to the
setFormula() method.
getFormulaAttributes() This will be replaced by the getArrayFormulaRange()
method.
The following methods will be added in version 1.7.9
getFormula() Use to retrieve a cell formula, will return the cell
value if the cell doesn't contain a formula, or
is not part of an array formula range.
setFormula() Use to set a cell formula. It will still be possible
to set formulae using the setValue() and
setValueExplicit() methods.
calculate() Use to execute a formula calculation to update the
cell value.
isFormula() Use to determine if a cell contains a formula, or is
part of an array formula range or not.
isArrayFormula() Use to determine if a cell contains an array formula,
or is part of an array formula range or not.
getArrayFormulaRange() Use to retrieve an array formula range.
The following methods will be changed in version 1.7.9
setValue() The logic behind this will be modified to store
formula values in the new cell property structure,
but it will still perform the same function.
setValueExplicit() The logic behind this will be modified to store
formula values in the new cell property structure,
but it will still perform the same function.
getValue() Will no longer return a formula if the cell contains
a formula, but will return the calculated value
instead. For cells that don't contain a formula,
it will still return the stored value.
getDataType() Will return the datatype of the calculated value for
cells that contain formulae.
setDataType() Error handling will be added to prevent setting a
cell datatype to an inappropriate value.
--------------------------------------------------------------------------------
Fixed in develop branch:
- Feature: (MBaker) Refactor PDF Writer to allow use with a choice of PDF Rendering library
rather than restricting to tcPDF
@ -39,6 +87,7 @@ Fixed in develop branch:
- Bugfix: (MBaker) Work items 15905 and 18183 - Allow "no impact" to formats on Conditional Formatting
- Bugfix: (wackonline) OOCalc Reader fix for NULL cells
- Bugfix: (seltzlab) Fix to excel2007 Chart Writer when a $plotSeriesValues is empty
- Bugfix: (MBaker) Work item 18370 - Error loading xlsx file with column breaks
2012-05-19 (v1.7.7):

View File

@ -1,59 +1,59 @@
1.5, -1, "#NUM!"
-1, 6, 2.24886609492822E-05
-1, 6, 2.2488660949282200E-05
0, 3, 0.0
3, 0, 4.88079256503329
1, 5, 2.71463149585049E-04
1.5, 1, 9.81666428475166E-01
-1.5, 2.5, 3.37834620874438E-01
-1.5, 14.99, 2.12185817580129E-13
1, 30, 3.53950050502547E-42
2.5, 1, 2.51671624202536
2.5, 1.5, 2.51671624202536
-2.5, 1.5, -2.51671624202536
3.5, 1, 6.20583493206300
0.7, 3, 7.36737336693427E-03
3.5, 2, 3.83201207162936
35, 2, 1.0695052240857E+14 // Calculation of values above 30/below -30 use the approximation
-35, 2, 1.06950522408568E+14 // method in PHPExcel (like in Open/Libre Office), so
-35, 3, -1.06950522408568E+14 // results are matched against Libre Office result.
-35, 4, 1.06950522408568E+14
3, 0, 4.8807925650332900
1, 5, 2.7146314958504900E-04
1.5, 1, 9.8166642847516600E-01
-1.5, 2.5, 3.3783462087443800E-01
-1.5, 14.99, 2.1218581758012900E-13
1, 30, 3.5395005050254700E-42
2.5, 1, 2.5167162420253600
2.5, 1.5, 2.5167162420253600
-2.5, 1.5, -2.5167162420253600
3.5, 1, 6.2058349320630000
0.7, 3, 7.3673733669342700E-03
3.5, 2, 3.8320120716293600
35, 2, 1.0129348967887200E+14
-35, 2, 1.0129348967887200E+14
-35, 3, -9.4217724797020600E+13
-35, 4, 8.5141821583727800E+13
1.5, "XYZ", "#VALUE!"
"ABC", 3, "#VALUE!"
-9, 1, -1030.914709
-3.5, 1, -6.205834932
-0.735, 1, -0.392881517
0, 1, 0
0.035, 1, 0.01750268
1, 1, 0.565159098
1.5, 1, 0.981666428
2.5, 1, 2.516716242
3.5, 1, 6.205834932
-9, 2, 864.4962206
-3.5, 2, 3.832012072
-0.735, 2, 0.070619941
0, 2, 0
0.035, 2, 0.000153141
0.9, 2, 0.108259722
1, 2, 0.135747667
1.9, 2, 0.603272435
2.5, 2, 1.276466159
3.5, 2, 3.832012072
4, 2, 6.422189499
0.035, 3, 8.93298E-07
0.7, 3, 0.007367373
0.89, 3, 0.015428503
4, 3, 3.337275843
4, 5, 0.504724373
1.5, 7, 2.84064E-05
3, 9, 0.000132373
-3.5, 0, 7.378203478
-1.5, 0, 1.646723202
0, 0, 1
1, 0, 1.266065848
1.5, 0, 1.646723202
2.5, 0, 3.289839172
3.5, 0, 7.378203478
-9, 1, -1.0309147086534900E+03
-3.5, 1, -6.2058349320630000
-0.735, 1, -3.9288151661176300E-01
0, 1, 0.0
0.035, 1, 1.7502679823335300E-02
1, 1, 5.6515909758194300E-01
1.5, 1, 9.8166642847516600E-01
2.5, 1, 2.5167162420253600
3.5, 1, 6.2058349320630000
-9, 2, 8.6449622063929800E+02
-3.5, 2, 3.8320120716293600
-0.735, 2, 7.0619941066585700E-02
0, 2, 0.0
0.035, 2, 1.5314063208086000E-04
0.9, 2, 1.0825972222234100E-01
1, 2, 1.3574766658069900E-01
1.9, 2, 6.0327243548745000E-01
2.5, 2, 1.2764661588156100
3.5, 2, 3.8320120716293600
4, 2, 6.4221894991960900
0.035, 3, 8.9329755645604500E-07
0.7, 3, 7.3673733669342700E-03
0.89, 3, 1.5428502532466100E-02
4, 3, 3.3372758428109200
4, 5, 5.0472437285149600E-01
1.5, 7, 2.8406417355214300E-05
3, 9, 1.3237298826652200E-04
-3.5, 0, 7.3782034775718600
-1.5, 0, 1.6467232021476800
0, 0, 1.0
1, 0, 1.2660658480342600
1.5, 0, 1.6467232021476800
2.5, 0, 3.2898391723912900
3.5, 0, 7.3782034775718600
-3.5, -1, "#NUM!"
TRUE, 1, "#VALUE!"
1, TRUE, "#VALUE!"
21, 2, 104777856.3
21, 2, 1.0477785626593200E+08

View File

@ -1,37 +1,37 @@
1.5, -1, "#NUM!"
0, 1, 0.0
1, 1, 4.40050585677130E-01
1, 5, 2.49757730211234E-04
1.9, 2, 3.29925828669785E-01
-2.5, 1.5, -4.97094102504422E-01
3.5, 1, 1.37377527178186E-01
0.89, 3, 1.39740040278808E-02
3.5, 2, 4.58629184768290E-01
35, 2, 1.29359450880863E-01 // Calculation of values above 30/below -30 use the approximation
-35, 2, 1.29359450880863E-01 // method in PHPExcel (like in Open/Libre Office), so
-35, 3, 2.92070049360984E-02 // results are matched against Libre Office result.
-35, 4, -1.34366366012765E-01
1, 1, 4.4005058567713000E-01
1, 5, 2.4975773021123400E-04
1.9, 2, 3.2992582866978500E-01
-2.5, 1.5, -4.9709410250442200E-01
3.5, 1, 1.3737752717818600E-01
0.89, 3, 1.3974004027880800E-02
3.5, 2, 4.5862918476829000E-01
35, 2, 1.2935945082689100E-01
-35, 2, 1.2935945082689100E-01
-35, 3, 2.9207004782372000E-02
-35, 4, -1.3436636593244100E-01
1.5, "XYZ", "#VALUE!"
"ABC", 3, "#VALUE!"
-3.5, 1, -0.137377527
-0.735, 1, -0.343235775
0, 1, 0
0.035, 1, 0.01749732
1.5, 1, 0.557936508
2.5, 1, 0.497094103
3.5, 1, 0.137377527
-9, 2, 0.144846369
-0.735, 2, 0.064538956
0, 2, 0
0.9, 2, 0.094586304
1.9, 2, 0.329925829
0.035, 2, 0.000153109
3.5, 2, 0.458629185
4, 2, 0.364128143
0.035, 3, 8.93161E-07
0.7, 3, 0.006929655
0.89, 3, 0.013974004
4, 3, 0.430171471
4, 5, 0.132086656
1.5, 7, 2.46798E-05
3, 9, 8.4395E-05
-3.5, 1, -1.3737752717818600E-01
-0.735, 1, -3.4323577520309400E-01
0, 1, 0.0
0.035, 1, 1.7497320451918700E-02
1.5, 1, 5.5793650789080400E-01
2.5, 1, 4.9709410250442200E-01
3.5, 1, 1.3737752717818600E-01
-9, 2, 1.4484636919412800E-01
-0.735, 2, 6.4538955636373900E-02
0, 2, 0.0
0.9, 2, 9.4586304292255000E-02
1.9, 2, 3.2992582866978500E-01
0.035, 2, 1.5310936908796500E-04
3.5, 2, 4.5862918476829000E-01
4, 2, 3.6412814319431200E-01
0.035, 3, 8.9316078090293600E-07
0.7, 3, 6.9296548267509400E-03
0.89, 3, 1.3974004027880800E-02
4, 3, 4.3017147115339600E-01
4, 5, 1.3208665605594800E-01
1.5, 7, 2.4679795788287900E-05
3, 9, 8.4395021309091800E-05

View File

@ -1,38 +1,38 @@
1.5, -1, "#NUM!"
0, 2, "#NUM!"
0.1, 3, 7.99001243265865E+03
1, 0, 4.21024421083418E-01
1.5, 0, 2.13805569323654E-01
0.1, 3, 7.9900124326586500E+03
1, 0, 4.2102442108341800E-01
1.5, 0, 2.1380556932365400E-01
-1.5, 2, "#NUM!"
1.5, 1, 2.77387803632259E-01
1.5, 2, 5.83655974166666E-01
2.3, 1.5, 9.49824471429594E-02
2.5, 1, 7.38908156502669E-02
3.5, 1, 2.22393932246407E-02
3.5, 3, 5.91618179913482E-02
3, 9, 3.97958801062385E+02
3.5, 2, 3.23071216708690E-02
1.5, 1, 2.7738780363225900E-01
1.5, 2, 5.8365597416666600E-01
2.3, 1.5, 9.4982447142959400E-02
2.5, 1, 7.3890815650266900E-02
3.5, 1, 2.2239393224640700E-02
3.5, 3, 5.9161817991348200E-02
3, 9, 3.9795880106238500E+02
3.5, 2, 3.2307121670869000E-02
1.5, "XYZ", "#VALUE!"
"ABC", 3, "#VALUE!"
-3.5, 1, "#NUM!"
-0.735, 1, "#NUM!"
0, 1, "#NUM!"
0.035, 1, 28.50197
1.5, 1, 0.277387804
2.5, 1, 0.073890816
3.5, 1, 0.022239393
0.035, 1, 2.8501970000186900E+01
1.5, 1, 2.7738780363225900E-01
2.5, 1, 7.3890815650266900E-02
3.5, 1, 2.2239393224640700E-02
-9, 2, "#NUM!"
-0.735, 2, "#NUM!"
0, 2, "#NUM!"
0.9, 2, 2.07902713
1.9, 2, 0.296909301
0.035, 2, 1632.153707
3.5, 2, 0.032307122
4, 2, 0.017401426
0.035, 3, 186560.3542
0.7, 3, 21.97216891
0.89, 3, 10.31747308
4, 3, 0.029884924
4, 5, 0.154342549
1.5, 7, 2457.700453
3, 9, 397.9588011
0.9, 2, 2.0790271301014400
1.9, 2, 2.9690930137427500E-01
0.035, 2, 1.6321537072931900E+03
3.5, 2, 3.2307121670869000E-02
4, 2, 1.7401425543547400E-02
0.035, 3, 1.8656035423207900E+05
0.7, 3, 2.1972168909566600E+01
0.89, 3, 1.0317473075007600E+01
4, 3, 2.9884924431707800E-02
4, 5, 1.5434254881392600E-01
1.5, 7, 2.4577004526116700E+03
3, 9, 3.9795880106238500E+02

View File

@ -1,37 +1,37 @@
1.5, -1, "#NUM!"
1.23, 45.67, -2.70273112611750E+63
2.5, 0, 4.98070358446689E-01
2.5, 1, 1.45918137508313E-01
2.5, 2, -3.81335848440038E-01
3.5, 1, 4.10188416627698E-01
3.5, 3, -3.58335346436229E-01
4, 2, 2.15903599106990E-01
3.5, 2, 4.53714364175350E-02
12.5, 0, -1.71214306844669E-01
12.5, 1, -1.53838256351639E-01
12.5, 2, 1.46600185868054E-01
12.5, 22, -3.57603435038787E+02
1.23, 45.67, -2.7027311261175000E+63
2.5, 0, 4.9807035844668900E-01
2.5, 1, 1.4591813750831300E-01
2.5, 2, -3.8133584844003800E-01
3.5, 1, 4.1018841662769800E-01
3.5, 3, -3.5833534643622900E-01
4, 2, 2.1590359910699000E-01
3.5, 2, 4.5371436417535000E-02
12.5, 0, -1.7121430684466900E-01
12.5, 1, -1.5383825635163900E-01
12.5, 2, 1.4660018586805400E-01
12.5, 22, -3.5760343503878700E+02
1.5, "XYZ", "#VALUE!"
"ABC", 3, "#VALUE!"
-3.5, 1, "#NUM!"
-0.735, 1, "#NUM!"
0, 1, "#NUM!"
0.035, 1, -18.23333894
1.5, 1, -0.412308627
2.5, 1, 0.145918138
3.5, 1, 0.410188417
0.035, 1, -1.8233338940000000E+01
1.5, 1, -4.1230862700000000E-01
2.5, 1, 1.4591813800000000E-01
3.5, 1, 4.1018841700000000E-01
-9, 2, "#NUM!"
-0.735, 2, "#NUM!"
0, 2, "#NUM!"
0.9, 2, -1.945909607
1.9, 2, -0.669878674
0.035, 2, -1039.697941
3.5, 2, 0.045371436
4, 2, 0.215903599
0.035, 3, -118804.3884
0.7, 3, -15.81947907
0.89, 3, -8.020441252
4, 3, -0.18202211
4, 5, -0.795851418
1.5, 7, -1887.397034
3, 9, -444.9595071
0.9, 2, -1.9459096070000000
1.9, 2, -6.6987867400000000E-01
0.035, 2, -1.0396979410000000E+03
3.5, 2, 4.5371436000000000E-02
4, 2, 2.1590359900000000E-01
0.035, 3, -1.1880438840000000E+05
0.7, 3, -1.5819479070000000E+01
0.89, 3, -8.0204412520000000
4, 3, -1.8202211000000000E-01
4, 5, -7.9585141800000000E-01
1.5, 7, -1.8873970340000000E+03
3, 9, -4.4495950710000000E+02

View File

@ -16,3 +16,5 @@
"-12.34-5.67j", "123.45-67.89", "#NUM!"
"-12.34-5.67", "123.45-67.89j", "#NUM!"
"-12.34-5.67i", "-12.34-5.67i", "1"
"-12.34", "123.45-67.89i", "-0.0767482736849023-0.0422068878126206i"
"-12.34-5.67i", "-12.34", "1+0.459481361426256i"

View File

@ -1,14 +1,18 @@
"12.34+5.67j", 2, "120.1267+139.9356j"
"12.34+5.67j", 3, "688.928626+2407.923693j"
"12.34+5.67j", -1, "6.69108496973016E-002-3.07442883131037E-002j"
"12.34+5.67j", -2, "3.53185054333564E-003-4.11425290873718E-003j"
"12.34+5.67j", 0.5, "3.60002071031685+0.787495469644252j"
"12.34+5.67j", -0.25, "0.517904976730581-5.59833234375533E-002j"
"12.34+5.67j", 0, "1"
"-i", 2, "-1-1.34451369308841E-014i"
"1-i", 2, "1.22460635382238E-016-2i"
"2.5i", 2, "-6.25+8.40321058180257E-014i"
"2.5i", "2.5", "-6.98771242968685-6.98771242968684i"
"2.5i", "2.5i", "#VALUE!"
"2.5", "2.5", 9.88211768802619
"2", "2", 4
"12.34+5.67j", 2, "120.1267+139.9356j"
"12.34+5.67j", 3, "688.928626+2407.923693j"
"12.34+5.67j", -1, "6.69108496973016E-002-3.07442883131037E-002j"
"12.34+5.67j", -2, "3.53185054333564E-003-4.11425290873718E-003j"
"12.34+5.67j", 0.5, "3.60002071031685+0.787495469644252j"
"12.34+5.67j", -0.25, "0.517904976730581-5.59833234375533E-002j"
"12.34+5.67j", 0, "1"
"-i", 2, "-1-1.34451369308841E-014i"
"1-i", 2, "1.22460635382238E-016-2i"
"2.5i", 2, "-6.25+8.40321058180257E-014i"
"2.5i", "2.5", "-6.98771242968685-6.98771242968684i"
"2.5i", "2.5i", "#VALUE!"
"2.5", "2.5", 9.88211768802619
"2", "2", 4
"-12.34-5.67i", "-12.34", "-4.69972844488573E-15+9.35464904349343E-15i"
"12.34-5.67i", "-12.34", "5.93343000067521E-15-8.62503997728057E-15i"
"-12.34-5.67i", "12.34", "-42881944468901.9-85355046682682.3i"
"12.34-5.67i", "12.34", "54138663282971.3+78697841733874.3i"

View File

@ -11,3 +11,5 @@
"12.34+5.67i", "-123.45+67.89i", "-1908.3093+137.8011i"
"-12.34+5.67i", "-123.45+67.89i", "1138.4367-1537.7241i"
"-12.34-5.67i", "-123.45-67.89i", "1138.4367+1537.7241i"
"-12.34", "123.45-67.89i", "-1523.373+837.7626i"
"-12.34-5.67i", "-12.34", "152.2756+69.9678i"

View File

@ -3,3 +3,4 @@
65, "A"
123, "{"
126, "~"