How to convert a username to a 2 digit number?

  1. I am trying to figure out how to convert a username into a number between 10 to 99.
    It would be preferable that a username will end up being 10 just as much as 99, covering the whole range without a tendency to be low or high..
    This method needs to be a simple as possible so that someone can convert their name with little effort.
     
  2. jcsd
  3. Simon Bridge

    Simon Bridge 14,797
    Science Advisor
    Homework Helper
    Gold Member

    1. Assign numbers to usernames randomly.
    2. Assign numbers in order the users show up, starting at 10 and cycling at 99
    3. add the ascii values of all the characters together, and take the lowest two digits for the number.
    ...
    ... there are so many ways.
     
  4. pwsnafu

    pwsnafu 908
    Science Advisor

    Why ten? Shouldn't it start at 00?

    If it is deterministically based on the username, this is unlikely. Usernames would need to be uniformly distributed to begin with.

    The only one I can think of would be: take the last two letters of the username and treat it as a base-26 number. Then modulo 90.

    If the range was 00~99 then this would be much easier. Base-26 to Base-10 take last two digits.

    Edit: ah, scratch it. No matter how many times I modify the algorithm I keep finding holes.
     
    Last edited: Jan 9, 2014
  5. Borek

    Staff: Mentor

Know someone interested in this topic? Share a link to this question via email, Google+, Twitter, or Facebook

Have something to add?

0
Draft saved Draft deleted