object DigitFinder {
def findPreviousDigit(number: Int, target: Int): Int = {
number
.toString
.reverse
.map(_.asDigit)
.sliding(2)
.collectFirst {
case Seq(curr, previous) if curr == target => previous
}
.getOrElse(-1)
}
def main(args: Array[String]): Unit = {
val number = 8902741
val target = 7
val result = findPreviousDigit(number, target)
if (result != -1)
println(s"The digit befor $target in $number is $result.")
else
println(s"The digit $target is not found or has no previous digit in $number.")
}
}
/*
run:
The digit befor 7 in 8902741 is 2.
*/