E.g., say that the random numbers are uniformly distributed between -200 and 200. If somebody says a number like 425, then I know they weigh at least 225 pounds. And the probability they weigh more than 225 - k pounds is 1 - k/400.
Then you would probably get more information from looking at the person thank you could from hearing a weight number that could be +/-2000 pounds
Then knowing any individual number (weight + pad) mod n gives zero knowledge (I think. If all but one party reveal their pads, they can trivially determine the other's weight so it fails. Believe it to be secure if only 1 party is malicious, though. Cases for other numbers of bad actors are more complicated...)
There might be behavioural issues here though - perhaps people would keep generating a random number until they are provided one that makes their weight look 'better' (and 'better' probably means 'smaller' for most people).
Edit: comicjk made a great point about large numbers. Perhaps using large random numbers (eg a normal distribution with a mean of 4550 and a std deviation of 20-30) would help reduce the behavioural issue.
For example you could have a hat with pieces of paper in it each with a number. The numbers sum to 0 (some are positive, some are negative). Each person draws a piece of paper, adds his or her weight to it, then says that number. The numbers that each person says are summed and that's the total sum.