Code Duplication    Length = 29-30 lines in 2 locations

src/PhpSpreadsheet/Calculation/Statistical.php 2 locations

@@ 3612-3640 (lines=29) @@
3609
     *
3610
     * @return    float
3611
     */
3612
    public static function VARFunc()
3613
    {
3614
        $returnValue = Functions::DIV0();
3615
3616
        $summerA = $summerB = 0;
3617
3618
        // Loop through arguments
3619
        $aArgs = Functions::flattenArray(func_get_args());
3620
        $aCount = 0;
3621
        foreach ($aArgs as $arg) {
3622
            if (is_bool($arg)) {
3623
                $arg = (int) $arg;
3624
            }
3625
            // Is it a numeric value?
3626
            if ((is_numeric($arg)) && (!is_string($arg))) {
3627
                $summerA += ($arg * $arg);
3628
                $summerB += $arg;
3629
                ++$aCount;
3630
            }
3631
        }
3632
3633
        if ($aCount > 1) {
3634
            $summerA *= $aCount;
3635
            $summerB *= $summerB;
3636
            $returnValue = ($summerA - $summerB) / ($aCount * ($aCount - 1));
3637
        }
3638
3639
        return $returnValue;
3640
    }
3641
3642
    /**
3643
     * VARA.
@@ 3709-3738 (lines=30) @@
3706
     *
3707
     * @return    float
3708
     */
3709
    public static function VARP()
3710
    {
3711
        // Return value
3712
        $returnValue = Functions::DIV0();
3713
3714
        $summerA = $summerB = 0;
3715
3716
        // Loop through arguments
3717
        $aArgs = Functions::flattenArray(func_get_args());
3718
        $aCount = 0;
3719
        foreach ($aArgs as $arg) {
3720
            if (is_bool($arg)) {
3721
                $arg = (int) $arg;
3722
            }
3723
            // Is it a numeric value?
3724
            if ((is_numeric($arg)) && (!is_string($arg))) {
3725
                $summerA += ($arg * $arg);
3726
                $summerB += $arg;
3727
                ++$aCount;
3728
            }
3729
        }
3730
3731
        if ($aCount > 0) {
3732
            $summerA *= $aCount;
3733
            $summerB *= $summerB;
3734
            $returnValue = ($summerA - $summerB) / ($aCount * $aCount);
3735
        }
3736
3737
        return $returnValue;
3738
    }
3739
3740
    /**
3741
     * VARPA.