First of all, fix the following part of your code:
if (Qout[i]){pinState= 1;}//Checks the array for the value and if it is true sets the pinstate to 1, HIGH
else{pinState= 1;}//If it equals false set it to 0, LOW
into:
if (Qout[i])
{
//Checks the array for the value and if it is true sets the pinstate to 1, HIGH
pinState = 1;
}
else
{
//If it equals false set it to 0, LOW
pinState = 0;
}
Of course in, if you always set pinState to 0, it won't work as you expect :-)
Note that you should rather use HIGH and LOW constants (more readable) instead of 11 and 00.
Finally, you could make the code much simpler this way:
pinState = (Qout[i] ? HIGH : LOW);