Why does the refactored inner loop print data[i][j] before checking whether it equals 5?
data[i][j]
5
So values 1 through 4 are suppressed.
1
4
Printing changes every data element into 5.
So the triggering value 5 is included in the output before control exits.
Go syntax requires every goto to be preceded by fmt.Println.
goto
fmt.Println