>if(z == Cat || cat || CAT || CAt || CaT || cAT || caT || cAt);
The only thing that exists in this is z. You need to define a name before you use it, unless you think your compiler knows that a cat is in varying cases. Also, the logical OR operator doesn't work like that. You need to compare with z for every part. Also also, if statements don't end with a semicolon.