15 Jan 2009

Project Euler problem 1 using Scala

As a small exercise in getting to grips with the Scala language, here's a solution to Euler's problem nr 1.



class Euler1 {
def generateNumbers(): List[Int] = {
List.range(1, 1000).filter(isSatisfied(_))
}

def isSatisfied(i: Int): Boolean = {
i % 3 == 0 || i% 5 == 0
}
}

object Euler1 {
def main(args: Array[String]): Unit = {
val generatedNumbers = new Euler1().generateNumbers
println("Terms: " + generatedNumbers)
print("Sum of terms " + generatedNumbers.foldLeft(0)(_ + _))
}
}

No comments:

Post a Comment