Another thing is that if a roaming Pokemon (including but not limited to Zapdos) loses HP or gets a major status condition, it will keep its damage and status condition next time you encounter it. So you can get a false swipe user (such as Weavile) to repeatedly encounter Zapdos, use false swipe, and let it run away until it has 1 HP, and then get a Haunter to trap it and put it to sleep. Or you can use a Pokemon that can know mean look, false swipe, and hypnosis, such as Gallade.