Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Оцените решение задачки, пжл (https://javascript.ru/forum/misc/74647-ocenite-reshenie-zadachki-pzhl.html)

рони 26.07.2018 22:40

MC-XOBAHCK,
function fun(start, end) {
    return (start + end) * (Math.abs(end - start) + 1) / 2
}

alert(fun(4, 1));
alert(fun(1, 4)); //1 + 2 + 3 + 4  = 10
alert(fun(5, 2));
alert(fun(2, 5)); //2 + 3 + 4 + 5 = 14

рони 26.07.2018 22:47

Цитата:

Сообщение от MC-XOBAHCK
Где то ошибка в формуле, не могу понять.

при end > start
function sum(start, end) {
    return (start + end) * (end - start + 1) * .5
}
alert(sum(1, 4)); //1 + 2 + 3 + 4  = 10
alert(sum(2, 5)); //2 + 3 + 4 + 5 = 14

MC-XOBAHCK 26.07.2018 23:26

вот это я выдал арифметику... ужОс
Больше 10 лет вообще без арифметики, ток примитивная тригонометрия на площадь, ну максисум с тангенсом доводилось.
А тут вдруг себя Перельманом возомнил и так облажал... Если что, ни кто ничего не видел (тут смайлик -> ни при делах).


Часовой пояс GMT +3, время: 05:55.