JSFiddle - React, Tailwind, and code Playground

by Jon-Carlos Rivera

JavaScript

function euler1(start, end, inclusive) {
    end += !!inclusive;

    return sumOfRange(start, end, 3)
        + sumOfRange(start, end, 5)
        - sumOfRange(start, end, 15);
}

function sumOfRange(start, end, step) {
    var numIn = Math.floor((end - start) / step);
    var startStep = Math.ceil(start / step) * step;
    var endStep = numIn * step;

    return numIn * (startStep + endStep) / 2;
}

console.log(euler1(1, 1000));