summaryrefslogtreecommitdiff
path: root/euler56.scala
blob: a302b25318b6c9a3098d6a92fe114d64bf3ec9b8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
object Lychrel
{
  def digital_sum(a: BigInt): Int = {
    var sum: Int = 0
    var t = a
    while (t > 0) {
      sum = sum + (t % 10).toInt
      t = t / 10
    }
    sum
  }

  def main(args: Array[String]) = {
    var maxsum = 0
    for (a <- 2 until 100) {
      var t: BigInt = 1
      for (b <- 1 until 100) {
        t = t * a
        maxsum = maxsum max digital_sum(t)
      }
    }
    println(maxsum)
  }
}