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.




class SumMultiples {
  function : native : GetSum(n : Int) ~ Int {
    sum := 0;
    for(i := 3; i < n; i++;) {
      if(i % 3 = 0 | i % 5 = 0) {
        sum += i;
      };
    };
 
    return sum;
  }
 
  function : Main(args : String[]) ~ Nil {
    GetSum(1000)->PrintLine();
  }
}
 