object ConvertArrayAndInt {
// Function to convert an array of digits to an integer
def convertArrayOfDigitsToIntNumber(arr: Array[Int]): Int = {
var n = 0
for (digit <- arr) {
n = n * 10 + digit
}
n
}
// Function to convert an integer to an array of digits
def convertIntNumberToArrayOfDigits(arr: Array[Int], n: Int): Unit = {
var num = n
var i = arr.length - 1
while (num > 0 && i >= 0) {
arr(i) = num % 10 // Extract last digit
num = num / 10 // Remove the last digit
i -= 1
}
}
def main(args: Array[String]): Unit = {
val arr = Array(9, 4, 6, 9) // Initial array of digits
// Convert the array to an integer
var n = convertArrayOfDigitsToIntNumber(arr)
// Increment the integer
n += 1
// Convert the incremented integer back to an array of digits
convertIntNumberToArrayOfDigits(arr, n)
// Print the results
println(s"n = $n")
println(arr.mkString("[", ", ", "]"))
}
}
/*
run:
n = 9470
[9, 4, 7, 0]
*/