Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何找到输入的除数?_Python_Python 3.x - Fatal编程技术网

Python 如何找到输入的除数?

Python 如何找到输入的除数?,python,python-3.x,Python,Python 3.x,编写一个以整数N作为输入并输出的程序(在 单行)N的所有除数。输入验证:如果N是a 负数(严格小于零),您的程序应该 显示错误消息并持续询问有效的N(请参阅示例运行 下) 样本运行: 我知道如何输入所有的东西,我只是停留在如何做除数部分。我会使用某种嵌套循环还是使用求和数学类型的东西 这项任务听起来像是家庭作业。这就是为什么我将提出的解决方案不使用任何内置函数的原因 为了找到一个给定数字n的所有除数,你应该迭代到sqrt(n)为止的所有数字,如果给定数字i除以n(即n%i==0),你应该将数字i

编写一个以整数N作为输入并输出的程序(在 单行)N的所有除数。输入验证:如果N是a 负数(严格小于零),您的程序应该 显示错误消息并持续询问有效的N(请参阅示例运行 下)

样本运行:


我知道如何输入所有的东西,我只是停留在如何做除数部分。我会使用某种嵌套循环还是使用求和数学类型的东西

这项任务听起来像是家庭作业。这就是为什么我将提出的解决方案不使用任何内置函数的原因

为了找到一个给定数字n的所有除数,你应该迭代到sqrt(n)为止的所有数字,如果给定数字
i
除以n(即
n%i==0
),你应该将数字
i
(n/i)
添加到除数中。然后对数组进行排序。如果n是完美的正方形,要特别小心(那么
i
n/i
是相同的东西)


希望这能有所帮助。

此外,您可能应该发布一些代码,到目前为止您尝试了什么?什么在起作用?你至少能告诉我们你在读数字,并确定它们是正的还是负的。@jgritty:家庭作业标签已经被弃用了。所以很明显,如果它是家庭作业,那就不重要了……小抱怨:当你变得危险时,sqrt(N)技巧是至关重要的,但是对于家庭作业来说,这是过度的,表现并不重要,你也不想让自己去验证它是否正确(你应该一直这样做!)。
 Enter N: 10
 The divisors of N are: 1 2 5 10