Personally, I don't get it why Gyarados, a Water/Flying Pokemon, is weak against Rock-Type attacks, even though its being a Water-type should supposedly cover its weakness against Rock-type.
On Tyranitar's case, I've also noticed in the Wiki that it's weak against Bug attacks, even though its being a Rock-type should've covered its weakness against Bugs.
Please elaborate why this is the case.
PS: I don't know if this was already covered in the past; I haven't been in the boards in a while. ^^;