[Stationary Legendary Pokemon Tips]
-As any other Pokemon, lower the Legendary's HP until it turns red. The lower the HP, the better chance you're going to catch the legendary.
~TM 54, False Swipe, will always leave 1 HP for the opponent [If the move would KO the opponent, it will always leave 1 HP instead.] You can buy the TM at the Goldenrod Department Store.
-Use Pokeballs to your advantage. If it is night time when you are battling the legendary, use Dusk Balls. If there has been many turns in the battle already, use a Time Ball to try to capture the Pokemon. A good Pokeball that can be used wherever is the Ultra Ball. [Most of the time it is]
-Inflict status problems upon the legendary. Poison Power, Hypnosis, Thunder Wave, and Toxic are a few of these. Poisoning or burning a Pokemon should help you catch it, but it isn't always a good idea since they damage the Pokemon every turn. You may KO it.
-Try to bring strong Pokemon to give you time to try to catch the legendary. Also, bring Pokemon that is about the same level as the legendary. This will help you bring down the legendary's HP if you somehow can't afford to use False Swipe on it.
-Bring a lot of Potions, Revives, and Pokeballs. You don't know how long it will take to catch the legendary.
-Save before you battle the legendary.
[Running Legendary Pokemon Tips]
-Certain Pokemon have abilities that prevent the Pokemon from running away. Crobat can learn Mean Look while Wobbufet has the ability Shadow Tag that prevents a Pokemon from running away.
After you do that, you should follow the rest of the tips to catch the Running "Legendary"