This commit is contained in:
2025-08-13 22:31:53 +03:00
parent 9594a85dfd
commit 751ccb307f

View File

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