本文共 856 字,大约阅读时间需要 2 分钟。
计算一个数的除1和自身之外的所有因数
编写一个函数,用于求出一个数(从键盘输入)除1和自身以外的所有因数,并输出结果。以下是具体实现代码:
def compute_factors(): try: a = input('请输入一个整数:') a = int(a) if a <= 1: print('请输入大于1的数值') return factors = [] for i in range(2, int(a**0.5)+1): if a % i == 0: factors.append(i) if i != a//i: factors.append(a//i) factors = sorted(factors) if not factors: print(f'{a}是一个质数') else: print(f'{a}的因数为:{",".join(map(str, factors))} except ValueError: print('请输入有效的整数值')
该函数工作流程如下:
- 首先,从键盘获取用户输入的数值a,并进行整数转换
- 如果输入的数值小于等于1,提示错误信息并返回
- 初始化一个空列表用于存储因数
- 遍历从2到a平方根之间的所有整数i
- 检查i是否是a的因数,如果是,则将i和a//i添加到因数列表中
- 最后对因数列表进行排序并打印结果
转载地址:http://upgmz.baihongyu.com/