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

172
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...

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

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

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

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

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

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

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

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

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

316