No you are not getting what a for loop is.
for (symbols[j][k]; j <3; j++) {
Is using symbols as a loop variable, you just want to use j as the loop variable.
Also you are not doing what I said and putting the code you started with INSIDE your new loop.
We have to call values from a 2 dimensional matrix, we are using this instead of three separate matrixes because it makes the code more compact
It saves you writing nearly the same code three times, which it you go on to other things, like a thread I had today, saves you writing nearly the same thing 40 times.
wheel[0] = spin();
That always returns the value to the first byte in the wheel array, each time the loop you want it to store the symbol PIN number landed on into a DIFFERENT byte in the array. See that zero, what do you think would store it into a new place each time.
Also the spin function needs to know what wheel it is spinning so it needs to know what the loop variable is as well. So that function needs modifying just like we did with the flash function.
In the void loop,
Final warning STOP calling it a void loop, it is a loop function.