【作业】判断某个数是否是素数,返回结果
1.什么叫素数
素数即质数,质数是指在大于1的自然数中,除了1和它本身以外不再有其他因数的自然数。
首先说下自己的思路吧,方法不是唯一的,我也是初学者,只能在自己的认知下做一个解答过程,当然,也肯定有比我更优秀的解题方案,这个点需要肯定。
- 首先获取用户输入的数字n: input()
- 判断用户输入的数字 大于2和小于2的情况:过滤0和1
- 用range()函数遍历:2为起值,n为终值,恰好左闭右开原则,过滤掉1和n本身
- 如果range()遍历元素中有能整除n的,添加到列表list_num中
- 判断len(list_num)是否大于0
下面附上代码(非最优秀的代码):
# 判断某个数是否是素数(质数),返回结果 # 质数是指在大于1的自然数中,除了1和它本身以外不再有其他因数的自然数 value = input('请输入一个自然数:') n = int(value) # 0 1不是素数 if n < 2: print('您输入的数不是素数') else: # 定义一个列表存储可以整除的n的数字 list_num = [] for i in range(2, n): if n % i == 0: # 能整除就添加到列表里去 list_num.append(i) # 本身已经有1和n本身能整数n了,如果列表长度大于0,那就不是素数否则就是 if len(list_num) > 0: print('您输入的数不是素数,因为除1和本身外它还可以被'+ str(list_num) + '整除') else: print('您输入的数是素数')
输出结果: