integer_values = {1: 'I', 5: 'V', 10: 'X', 50: 'L', 100: 'C', 500: 'D', 1000: 'M'} buffer = input("int: ") buffer = int(buffer) output = "" dict_length = len(sorted(integer_values)) for i in range(1, dict_length + 1): letters = buffer / sorted(integer_values)[dict_length - i] if letters >= 1: for x in range(0, round(letters)): output += integer_values[sorted(integer_values)[dict_length - i]] buffer -= sorted(integer_values)[dict_length - i] print("roman: " + output)