Show a nested loop which searches a two-dimensional array filled with random numbers uniformly distributed over 



[
1
,
…
,
20
]


{\displaystyle [1,\ldots ,20]}

.

The loops iterate rows and columns of the array printing the elements until the value 



20


{\displaystyle 20}

 is met.

Specifically, this task also shows how to break out of nested loops.



Related tasks

   Loop over multiple arrays simultaneously
   Loops/Break
   Loops/Continue
   Loops/Do-while
   Loops/Downward for
   Loops/For
   Loops/For with a specified step
   Loops/Foreach
   Loops/Increment loop index within loop body
   Loops/Infinite
   Loops/N plus one half
   Loops/Nested
   Loops/While
   Loops/with multiple ranges
   Loops/Wrong ranges


import java.util.Random
 
fun main(args: Array<String>) {
    val r = Random()
    val a = Array(10) { IntArray(10) { r.nextInt(20) + 1 } }
    println("array:")
    for (i in a.indices) println("row $i: " + a[i].asList())
 
    println("search:")
    Outer@ for (i in a.indices) {
        print("row $i: ")
        for (j in a[i].indices) {
            print(" " + a[i][j])
            if (a[i][j] == 20) break@Outer
        }
        println()
    }
    println()
}