PETRUS ROMANUS

BLOCO DE DIVISORES
O código desta página calcula a quantidade de divisores de todos os números naturais de um determinado intervalo informado e os exibe, explicitando, também, qual o número com mais divisores naquele intervalo informado.
inicio = int(input('Início: '))
fim = int(input('Fim: '))
conta_div = 0
resto = 0
divisor = 1
contador = 0
qtd_div = []
maximo = 0
escreve_inicio = inicio
indices = []
for i in range (inicio, fim + 1):
for d in range (1, i//2 + 1):
resto = i % d
if resto == 0:
contador = contador+1
contador = contador+1
qtd_div.append(contador)
contador = 0
for i in range (0, (fim - inicio)+1):
print('%i: %i' %(escreve_inicio, qtd_div[i]))
escreve_inicio = escreve_inicio + 1
maximo = max(qtd_div)
print('\nMaior quantidade: %i' %(maximo))
for i in range (0, (fim - inicio)+1):
if qtd_div[i] == maximo:
indices.append(i)
print('\nÍndice(s): ')
print(indices)
print('\nNúmero(s): ')
for i in range (0, len(indices)):
print(inicio+indices[i])
Exemplos de funcionamento:

De 100 a 120, o programa nos mostra que os números 108, 112 e 120 são aqueles que têm mais divisores (acima de 10). O número 120 possui a maior quantidade nesse intervalo: 16 divisores
Fiz esse programa para me auxiliar no conhecimento dos divisores, permitindo-me repassar para os estudantes informações mais aprofundadas (tá, e por curiosidade também rsrs). Por exemplo, qual número tem maior quantidade de divisores entre 1 e 10 mil? O programa nos mostra que há um empate: os números 7560 e 9240 lideram com 64 divisores cada.