Hi,
The answer to this question lies in the ratio of elements that compose the two compounds MgSO4 and KNO3. Different atoms have different weights and as you can see from the formulas, there are different amounts of each atom within the molecules.
A molecule of Epsom Salt has 1 Mg atom, 1 Sulfur atom and 4 Oxygen atoms. A Sulfur atom weighs 30% more than a Mg atom. An Oxygen atom is about 50% lighter than an Mg atom but there are 4 of them in that molecule. So when you look at the entire MgSO4 molecule, only 20% of its weight is Mg. This means that in 6 grams of MgSO4 (about a teaspoon) there is only 1.2 grams of Mg. if this is "hydrated" then that means there are other atoms (H2O) to account for within the molecule. "hep" means seven so there are 7 water molecules adding to the weight of the large molecule making Mg an even smaller proportion of the total weight.
KNO3 is a different story. There is 1 Potassium atom, 1 Nitrogen atom and 3 Oxygen atoms. Nitrogen and Oxygen weigh about the same and although a K atom is twice as heavy as either N or O, there is only one K versus four of the others, so nitrate accounts for over 60% of the weight of a KNO3 molecule. Again, 6 grams of KNO3 has about 3.6 grams of NO3.
So you need a lot more MgSO4:7H2O just to get a small amount of Mg compared to the amount of KNO3 to get NO3.
Any form of Epsom Salt will do. Epsom Salt=MgSO4. Buy whatever is cheapest.
If you haven't fallen asleep by now (or decided to gag yourself with a tire iron) and are interested in the relative weights/sizes of atoms just check
http://en.wikipedia.org/wiki/Atomic_weight and scroll to the bottom where you'll find a chart showing the relative weights of each element in the known universe. You'll see, for example that Hydrogen and Helium are the lightest of the elements (weighing 1 and 4 grams per mole respectively) and that's why balloons (or zeppelins) filled with these gases will float.
The reason for the different weights and sizes is that each element has a different number of neutrons and protons inside the center of the atom. This is called the Atomic Number (which is logical). Check out this version of the same table which shows the number of protons/neutros each contains:
http://www.lenntech.com/Periodic-chart.htm
Hydrogen has only a single proton plus a single neutron while Lead (Pb) has 82 protons and 82 neutrons. That's why Lead is so heavy. :idea:
Hope this helps.
Cheers,