Code Duplication    Length = 16-17 lines in 3 locations

src/PhpSpreadsheet/Calculation/Financial.php 1 location

@@ 2045-2061 (lines=17) @@
2042
     *
2043
     * @return float
2044
     */
2045
    public static function SLN($cost, $salvage, $life)
2046
    {
2047
        $cost = Functions::flattenSingleValue($cost);
2048
        $salvage = Functions::flattenSingleValue($salvage);
2049
        $life = Functions::flattenSingleValue($life);
2050
2051
        // Calculate
2052
        if ((is_numeric($cost)) && (is_numeric($salvage)) && (is_numeric($life))) {
2053
            if ($life < 0) {
2054
                return Functions::NAN();
2055
            }
2056
2057
            return ($cost - $salvage) / $life;
2058
        }
2059
2060
        return Functions::VALUE();
2061
    }
2062
2063
    /**
2064
     * SYD.

src/PhpSpreadsheet/Calculation/Statistical.php 2 locations

@@ 2830-2845 (lines=16) @@
2827
     *
2828
     * @return int Number of permutations
2829
     */
2830
    public static function PERMUT($numObjs, $numInSet)
2831
    {
2832
        $numObjs = Functions::flattenSingleValue($numObjs);
2833
        $numInSet = Functions::flattenSingleValue($numInSet);
2834
2835
        if ((is_numeric($numObjs)) && (is_numeric($numInSet))) {
2836
            $numInSet = floor($numInSet);
2837
            if ($numObjs < $numInSet) {
2838
                return Functions::NAN();
2839
            }
2840
2841
            return round(MathTrig::FACT($numObjs) / MathTrig::FACT($numObjs - $numInSet));
2842
        }
2843
2844
        return Functions::VALUE();
2845
    }
2846
2847
    /**
2848
     * POISSON.
@@ 3115-3130 (lines=16) @@
3112
     *
3113
     * @return float Standardized value
3114
     */
3115
    public static function STANDARDIZE($value, $mean, $stdDev)
3116
    {
3117
        $value = Functions::flattenSingleValue($value);
3118
        $mean = Functions::flattenSingleValue($mean);
3119
        $stdDev = Functions::flattenSingleValue($stdDev);
3120
3121
        if ((is_numeric($value)) && (is_numeric($mean)) && (is_numeric($stdDev))) {
3122
            if ($stdDev <= 0) {
3123
                return Functions::NAN();
3124
            }
3125
3126
            return ($value - $mean) / $stdDev;
3127
        }
3128
3129
        return Functions::VALUE();
3130
    }
3131
3132
    /**
3133
     * STDEV.