编写程序列举一个整数的所有因数。例如:输入8,输出1,2,4,8。输入14,输出1,2,7,14。
整数最大的因数是它本身,最小的因数是1。我们可以从1开始,依次去除整数,如果余数为0,那它就是因数。
flowchart LR A(开始程序) --> B[int x,i=1;] B --> C[/输入值给x/] C --> D{i<=x;} D -- No -->H(结束程序) D -- Yes --> E{x%i==0} E -- Yes --> F[/输出i值/] E -- No -->G F --> G[i+=1;] G --> D;
上面例子,要寻找整数N的因数,需要从1到N依次去试除。运算次数太多了。能否有更简单的方法呢?