uaveiro-leci/1ano/1semestre/fp/aula04/divs-cate.py

45 lines
789 B
Python
Executable File

# Função principal
def main():
n = int(input('Introduza um número: '))
div_list_array = divList(n)
div_list = ", ".join(div_list_array)
print(f"""
--------------------
Número introduzido: {n}
Lista de divisores:
{div_list}
Este é um número {category(n, div_list_array)}.
--------------------
""")
# Obtém uma lista com todos os dividores de um número
def divList(n):
divs = []
for x in range(1, n):
if n % x == 0:
divs.append(str(x))
return divs
# Obtém a categoria de um número
def category(n, divs):
total = 0
for div in divs:
total += int(div)
if total < n: return 'deficiente'
if total == n: return 'perfeito'
if total > n: return 'abundante'
if __name__ == "__main__":
main()