<jupyter_start><jupyter_text>**Beginner Group Walkthrough**<jupyter_code>def input_integer(prompt, minimum=0, maximum=100):
    while True:
        try:
            result = input(prompt)
            result = int(result)
            if not minimum <= result <= maximum:
                raise ValueError
            return result
        except ValueError:
            print('Invalid input!')
scores = []

while True:
    name = input('Name:')
    if not name:
        break
    score = input_integer('Score:')
    scores.append((score, name))

scores.sort()
max_length = max([len(name) for score, name in scores])

place = 1
previous = None
for score, name in reversed(scores):
    
    if score == previous:
        place_string = '    '
    else:
        place_string = (str(place) + '.').ljust(4)
    
    place += 1
    
    name = name.ljust(max_length)
    
    previous = score
        
    score = str(score).rjust(4)
    
    print(place_string, name, score, sep='')<jupyter_output><empty_output>
StarcoderdataJupyterStructuredCleanDedup