It's not random if you're forcing it to be uniform. May as well skip the math and do this instead:
Divide all the people into groups of 10. Have the members of a group play each other at whatever, e.g. arm wrestling, to produce a rank from best to worst. Their rank becomes their answer.
Now everyone will reply with a number as close to uniform as the total number of people is divisible by the number of choices.