How to find the frequency of each digit (0–9) in a number with Kotlin

1 Answer

0 votes
// Function to count frequency of each digit (0–9) in a number
fun countDigitFrequency(number: Long): IntArray {
    // Array of size 10, each index represents a digit (0–9)
    val freq = IntArray(10)

    // Convert number to string so we can iterate over each character
    for (ch in number.toString()) {
        val digit = ch - '0'      // Convert character to its numeric digit value
        freq[digit]++             // Increment the count for that digit
    }

    return freq
}

fun main() {
    val number = 120220340501L

    // Call the function
    val frequencies = countDigitFrequency(number)

    // Print results
    for (digit in 0..9) {
        println("Digit $digit appears ${frequencies[digit]} times")
    }
}


/*
run:

Digit 0 appears 4 times
Digit 1 appears 2 times
Digit 2 appears 3 times
Digit 3 appears 1 times
Digit 4 appears 1 times
Digit 5 appears 1 times
Digit 6 appears 0 times
Digit 7 appears 0 times
Digit 8 appears 0 times
Digit 9 appears 0 times

*/

 



answered Jul 2 by avibootz

Related questions

...