The answer lies in the way the median is calculated. The median is the number that occurs in the middle of a set of number when they're arranged from lowest to highest. If there are two middle numbers, take the mean of them. The median of 1, 2, 3, 4, 5, 6, and 7 is 4. The median of 1, 2, 3, and 4 is (2 + 3) / 2, or 2.5.
What appears to be happening is that you have a list with an even amount of terms, which means there is no "middle" number to show as a median. Therefore, you get either a x.0 or x.5 when you have a whole number (no decimals or fractions) list, which will be the midpoint between those two terms in the middle of the list. If there were decimals, you would get a slightly different result that would still be halfway between those middle two terms. If you have an odd number of terms, then you can get a true median - there will be as many numbers before the median as after.
A median is not a weighted average - it only calculates the middle value of any series of numbers. You could have a list of 1, 3, 100 and your median value would be 3, which isn't representative of the list.
Are you sure the median is the term you want. You may want the mean, which is more or less the average of the terms. Calculating this would get you a more precise value.