Javascript практическая задача

163
13 марта 2019, 16:30

Даны числа a и b. Найдите сумму квадратов чисел между a и b включительно. Неизвестно, какое из чисел a или b больше. Моё решение:

function testCycle(a, b) {
    var x;
    if (a <=b){
        for (var i = a; i <= b; i++ ){
            x+= Math.pow (i++);
        }
    }else if (b <a){
        for (var i = b; i <= a; i++ ){
            x+= Math.pow (i++);
        }
    }
    return x;
}

Что с ним не так? Спасибо. Что-то застряла на ней.

Answer 1

Просто если a>b, поменяйте их местами.

Потом вычислите

(a*(-1 + (3 - 2*a)*a) + b*(1 + b)*(1 + 2*b))/6

Это и есть искомый результат...

Что-то вроде (я не спец в JS)

function testCycle(a, b) 
{
    if (a > b)
    {
        var x = a;
        a = b;
        b = x;
    }
    return (a*(-1 + (3 - 2*a)*a) + b*(1 + b)*(1 + 2*b))/6;
}
Answer 2

Вот это решение отработало у меня var x=0;

var max = Math.max (a,b);
    var min = Math.min (a,b);
    for (i = min; i <=max; i++) {
        x+= i*i;
READ ALSO
Как обновить JS без обновления страницы

Как обновить JS без обновления страницы

Если упростить, у меня есть меню, при клике на которой загружаются кнопки, а при клике на одного из них открывается красивый попап JS плагина(magnific...

161
JavaScript вычисление индикатора DMI, в чем ошибка

JavaScript вычисление индикатора DMI, в чем ошибка

Написал индикатор DMI по инструкции отсюда

298
Перебрать все элементы коллекции

Перебрать все элементы коллекции

Есть такой код на VBScript

166
Как правильно спарсить массив из JSON?

Как правильно спарсить массив из JSON?

Нужно вывести на сайт 10 последних транзакций на кошелёкЗначения берутся отсюда: https://api

284