Я должен решить эту проблему:
Напишите функцию, которая добавляет две суммы с доплатой. За каждую сумму, меньшую или равную 10, доплата равна 1. Для каждой суммы больше 10 доплата равна 2. Вызов (5, 15) должен вернуть 23.
Итак, я отобразил это решение:
const addWithSurcharge = (a, b) => ((a <= 10) || (b <= 10) || Math.min(a + b, 20)) ? ((++a)) + ((++b)) : (2+a) + (2+b);
Все идет гладко, пока функция не примет (11, 10) в качестве параметров. Если я использую ИЛИ дает мне 23, если я использую И дает мне в результате 25, но не желаемый 24. Я делаю что-то не так? Кажется, я передаю только добавление к одному из параметров. Я нахожусь в моем способе обучения, поэтому любая помощь будет признательна.