base16.py

#!/usr/bin/env python
#
# Display a number in base 16.
# Author:  Yotam Medini  [email protected] -- Created: 2006/February/20
#

import sys

def base16(n):
    s = "0"
    if n > 0:
        s = ""
        digits = "0123456789abcdef"
        while n > 0:
            D = n % 16      # Get the right most digit
            cD = digits[D]  # The character displaying the digit value
            s = cD + s      # Add it to the left side of s
            n /= 16         # like:  n = n/16, like dropping D from n 
    return s


def usage_exit(a0, rc):
    sys.stderr.write(
"""
Usage:
  %s <number1> [<number2> ... <numberN>]
"""[1:] % a0)
    sys.exit(rc)


# Begin program
if len(sys.argv) < 2:
    usage_exit(sys.argv[0], 1)
for a in sys.argv[1:]:
    n = int(a)
    s = base16(n)
    sys.stdout.write("%d {base10} = %s {base16}\n" % (n, s))
sys.exit(0)


Generated by GNU enscript 1.6.4.