Ad
  • Default User Avatar

    If I'm not mistaken, I think it compares the ascii or unicode number for it. '4' in ascii would be int 52 and '5' would be int 53, '6' is int 54 and so forth so anything below int 53, put a '0' and anything above put a '1'

  • Default User Avatar

    strings are ordered lexicographically

    and if you attempt to compare a string to an int then whichever one of them you ask they'll tell you they don't know which comes first. (operators boil down to method calls on one of the operands. you're asking one of the values if it's smaller than the other)

    javascript on the other hand, is a mistake, and will convert mixed values into a single type and then compare for you. all friendly and with a smile on its face. "friendly" here really just means it did something other than what you said, which is a great way to make your code full of difficult to find bugs.

  • Custom User Avatar

    hi natan, could you please explain how the code treats this?

  • Default User Avatar

    that is not what happens, for example, '9' is not less than '10'

    languages shouldn't guess what's meant, they should do what is said

  • Default User Avatar

    good to know that you could use c < '5' and it will automatically treat the string value to int, instead of using the int() function on the individual string value.

  • Default User Avatar

    Amazing solution...