max/abs
This commit is contained in:
@@ -67,10 +67,18 @@ export const DEFAULT_FUNCTIONS: Record<string, ExcelFunction> = {
|
||||
const flatArgs = args.flat()
|
||||
return flatArgs.filter(val => typeof val === 'number').length
|
||||
},
|
||||
МАКС: (...args: any[]) => {
|
||||
const flatArgs = args.flat()
|
||||
const validArgs = flatArgs.filter(val => typeof val === 'number')
|
||||
return validArgs.length > 0 ? Math.max(...validArgs) : 0
|
||||
МАКС: (число1: number, число2: number) => {
|
||||
// Проверка валидности входных параметров
|
||||
if (typeof число1 !== 'number' || typeof число2 !== 'number') {
|
||||
return '#ЗНАЧ!' // Ошибка значения
|
||||
}
|
||||
|
||||
if (!isFinite(число1) || !isFinite(число2)) {
|
||||
return '#ЧИСЛО!' // Ошибка числа
|
||||
}
|
||||
|
||||
// Возвращаем максимальное из двух чисел
|
||||
return Math.max(число1, число2)
|
||||
},
|
||||
МИН: (...args: any[]) => {
|
||||
const flatArgs = args.flat()
|
||||
@@ -138,4 +146,19 @@ export const DEFAULT_FUNCTIONS: Record<string, ExcelFunction> = {
|
||||
// Возвращаем квадратный корень
|
||||
return Math.sqrt(число)
|
||||
},
|
||||
|
||||
// Функция модуля числа
|
||||
ABS: (число: number) => {
|
||||
// Проверка валидности входного параметра
|
||||
if (typeof число !== 'number') {
|
||||
return '#ЗНАЧ!' // Ошибка значения
|
||||
}
|
||||
|
||||
if (!isFinite(число)) {
|
||||
return '#ЧИСЛО!' // Ошибка числа
|
||||
}
|
||||
|
||||
// Возвращаем абсолютное значение
|
||||
return Math.abs(число)
|
||||
},
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user