How to find the digit previous to a given digit in a number with Kotlin

1 Answer

0 votes
/**
 * Finds the digit that comes before the target digit when scanning from right to left.
 *
 * return The digit that comes before the target, or -1 if not found or no previous digit.
 */
fun findPreviousDigit(number: Int, target: Int): Int {
    var num = number

    while (num > 0) {
        val current = num % 10
        num /= 10

        if (current == target) {
            return if (num > 0) num % 10 else -1
        }
    }

    return -1
}

fun main() {
    val number = 8902741
    val target = 7

    val result = findPreviousDigit(number, target)

    if (result != -1) {
        println("The digit before $target in $number is $result.")
    } else {
        println("The digit $target is not found or has no previous digit in $number.")
    }
}



/*
run:

The digit before 7 in 8902741 is 2.

*/

 



answered Oct 22 by avibootz
...