Task

The objective is to write a function that finds the sum of all positive multiples of 3 or 5 below n.

Show output for n = 1000.

This is is the same as Project Euler problem 1.

Extra credit: do this efficiently for n = 1e20 or higher.




define t(n, f) {
    auto m
 
    m = (n - 1) / f
    return(f * m * (m + 1) / 2)
}
 
define s(l) {
    return(t(l, 3) + t(l, 5) - t(l, 15))
}
 
s(1000)
s(10 ^ 20)