作业帮 > 数学 > 作业

任意给定一个大于1的的正整数n,设计一个算法求出n的所有因数

来源:学生作业帮 编辑:百度作业网作业帮 分类:数学作业 时间:2024/05/10 01:54:58
任意给定一个大于1的的正整数n,设计一个算法求出n的所有因数
——————————————————————————————
教辅上的答案:
根据因数的定义
1.判断n是否等于2,若n等于2,则因数为1,n
若n大于2,则执行第二步
2.依次从2到n-1检验是不是能整除n,若可以,则是n的因数.若不可整除n,则非n的因数.
3.输出所有n的因数
——————————————————————————————
我的疑惑:
1.答案中的第一步为什么要特别说明n=2这种情况,为什么不合并写成当n大于等于2呢?
2.第二步中为什么说"依次从2到n-1",而不是“依次从2到n”呢?
任意给定一个大于1的的正整数n,设计一个算法求出n的所有因数
显然楼上两位都没有认真思考啊
教辅书上的写法是正确的.对于你的第一个疑惑:之所以判断是否等于2,是因为2只有两个因数,即1和2;如果不做n是否等于2的分类讨论,那你试着把n=2带入到步骤“2”当中,显然所谓的“从2到n-1”是指数字依次增大,而从2到1则不满足条件,所以不可以合并.
明白了吗?