To expound on what Shiny Umbreon said many times, there are a few things you can do to control the nature of the Poke you want. If it is a Legendary or a one-time Poke (i.e. Snorlax and Eevee), keep a spot open in your party and then save your game. Once saved, you catch it and then check its nature (and IVs if you are cool like me). If the nature, trait, gender, or IVs are not what you want, you reset and repeat until they are.
If you are trying to catch a wild Poke, the same concept applies, but the process takes a little longer. If you are fortunate enough to have an Emerald version though, EVERYTHING changes. Everything is done through breeding, and it has been made about 1259 times more efficient in Emerald. First off, the Daycare Center is west of Maulville, which is where you get the third badge in the game. In FRLG, you have to wait until you reach Four Island, which is MUCH later. Next, if you equip the female of the species with an Everstone (found in the Granite Cave, right after you beat the second badge), you have a 50% chance that the baby Poke will have the same nature as the mommy. Next, the longest route is directly in front of the DC (from Verdanturf to Route 118). It is roughly 250 steps for every full rotation. Next, having a Poke that has the Flame Body or Magma Armor Trait (i.e. Slugma, found first in the Fiery Path, also early in the game) in your party will cut the steps needed to hatch an egg in half, meaning instead of having to walk 10,240 steps to hatch a Beldum egg, it takes only 5,120 (or roughly 20 rotations instead of 41). Lastly, when an egg is produced as a result of the parents hot party action, three unique IVs are passed from the parents to the baby, 2 from one and 1 from the other. In the other versions, both parents could pass on the same IV, limiting it to 2 of 6 instead of 3.
So, as you can see, Emerald rules the free world.