Code Duplication    Length = 16-17 lines in 3 locations

src/PhpSpreadsheet/Calculation/Financial.php 1 location

@@ 2064-2080 (lines=17) @@
2061
     *
2062
     * @return    float
2063
     */
2064
    public static function SLN($cost, $salvage, $life)
2065
    {
2066
        $cost = Functions::flattenSingleValue($cost);
2067
        $salvage = Functions::flattenSingleValue($salvage);
2068
        $life = Functions::flattenSingleValue($life);
2069
2070
        // Calculate
2071
        if ((is_numeric($cost)) && (is_numeric($salvage)) && (is_numeric($life))) {
2072
            if ($life < 0) {
2073
                return Functions::NAN();
2074
            }
2075
2076
            return ($cost - $salvage) / $life;
2077
        }
2078
2079
        return Functions::VALUE();
2080
    }
2081
2082
    /**
2083
     * SYD.

src/PhpSpreadsheet/Calculation/Statistical.php 2 locations

@@ 2857-2872 (lines=16) @@
2854
     *
2855
     * @return    int        Number of permutations
2856
     */
2857
    public static function PERMUT($numObjs, $numInSet)
2858
    {
2859
        $numObjs = Functions::flattenSingleValue($numObjs);
2860
        $numInSet = Functions::flattenSingleValue($numInSet);
2861
2862
        if ((is_numeric($numObjs)) && (is_numeric($numInSet))) {
2863
            $numInSet = floor($numInSet);
2864
            if ($numObjs < $numInSet) {
2865
                return Functions::NAN();
2866
            }
2867
2868
            return round(MathTrig::FACT($numObjs) / MathTrig::FACT($numObjs - $numInSet));
2869
        }
2870
2871
        return Functions::VALUE();
2872
    }
2873
2874
    /**
2875
     * POISSON.
@@ 3142-3157 (lines=16) @@
3139
     *
3140
     * @return    float    Standardized value
3141
     */
3142
    public static function STANDARDIZE($value, $mean, $stdDev)
3143
    {
3144
        $value = Functions::flattenSingleValue($value);
3145
        $mean = Functions::flattenSingleValue($mean);
3146
        $stdDev = Functions::flattenSingleValue($stdDev);
3147
3148
        if ((is_numeric($value)) && (is_numeric($mean)) && (is_numeric($stdDev))) {
3149
            if ($stdDev <= 0) {
3150
                return Functions::NAN();
3151
            }
3152
3153
            return ($value - $mean) / $stdDev;
3154
        }
3155
3156
        return Functions::VALUE();
3157
    }
3158
3159
    /**
3160
     * STDEV.