if ((x==y) & (y==z) && (z==w))
は
if ((x==y) & (y==z) & (z==w))
の間違い。